text:
/**
 * \file
 *
 * This file contains the infrastructure cache.
 */
#include "config.h"
#include <ldns/rr.h>
#include "services/cache/infra.h"
#include "util/storage/slabhash.h"
#include "util/storage/lookup3.h"
#include "util/data/dname.h"
#include "util/log.h"
#include "util/net_help.h"
#include "util/config_file.h"
#include "iterator/iterator.h"

/** Timeout when only a single probe query per IP is allowed. */
#define PROBE_MAXRTO 12000 /* in msec */

/** number of timeouts for a type when the domain can be blocked ;
 * even if another type has completely rtt maxed it, the different type
 * can do this number of packets (until those all timeout too) */
#define TIMEOUT_COUNT_MAX 3

size_t
infra_sizefunc(void* k, void* ATTR_UNUSED(d))
{
	struct infra_key* key = (struct infra_key*)k;
	return sizeof(*key) + sizeof(struct infra_data) + key->namelen
		+ lock_get_mem(&key->entry.lock);
}

int
infra_compfunc(void* key1, void* key2)
{
	struct infra_key* k1 = (struct infra_key*)key1;
	struct infra_key* k2 = (struct infra_key*)key2;
	int r = sockaddr_cmp(&k1->addr, k1->addrlen, &k2->addr, k2->addrlen);
	if(r != 0)
		return r;
	if(k1->namelen != k2->namelen) {
		if(k1->namelen < k2->namelen)
			return -1;
		return 1;
	}
	return query_dname_compare(k1->zonename, k2->zonename);
}

void
infra_delkeyfunc(void* k, void* ATTR_UNUSED(arg))
{
	struct infra_key* key = (struct infra_key*)k;
	if(!key)
		return;
	lock_rw_destroy(&key->entry.lock);
	free(key->zonename);
	free(key);
}

void
infra_deldatafunc(void* d, void* ATTR_UNUSED(arg))
{
	struct infra_data* data = (struct infra_data*)d;
	free(data);
}

struct infra_cache*
infra_create(struct config_file* cfg)
{
	struct infra_cache* infra = (struct infra_cache*)calloc(1,
		sizeof(struct infra_cache));
	size_t maxmem = cfg->infra_cache_numhosts * (sizeof(struct infra_key)+
		sizeof(struct infra_data)+INFRA_BYTES_NAME);
	infra->hosts = slabhash_create(cfg->infra_cache_slabs,
		INFRA_HOST_STARTSIZE, maxmem, &infra_sizefunc, &infra_compfunc,
		&infra_delkeyfunc, &infra_deldatafunc, NULL);
	if(!infra->hosts) {
		free(infra);
		return NULL;
	}
	infra->host_ttl = cfg->host_ttl;
	return infra;
}

void
infra_delete(struct infra_cache* infra)
{
	if(!infra)
		return;
	slabhash_delete(infra->hosts);
	free(infra);
}

struct infra_cache*
infra_adjust(struct infra_cache* infra, struct config_file* cfg)
{
	size_t maxmem;
	if(!infra)
		return infra_create(cfg);
	infra->host_ttl = cfg->host_ttl;
	maxmem = cfg->infra_cache_numhosts * (sizeof(struct infra_key)+
		sizeof(struct infra_data)+INFRA_BYTES_NAME);
	if(maxmem != slabhash_get_size(infra->hosts) ||
		cfg->infra_cache_slabs != infra->hosts->size) {
		infra_delete(infra);
		infra = infra_create(cfg);
	}
	return infra;
}

/** calculate the hash value for a host key */
static hashvalue_t
hash_addr(struct sockaddr_storage* addr, socklen_t addrlen)
{
	hashvalue_t h = 0xab;
	/* select the pieces to hash, some OS have changing data inside */
	if(addr_is_ip6(addr, addrlen)) {
		struct sockaddr_in6* in6 = (struct sockaddr_in6*)addr;
		h = hashlittle(&in6->sin6_family, sizeof(in6->sin6_family), h);
		h = hashlittle(&in6->sin6_port, sizeof(in6->sin6_port), h);
		h = hashlittle(&in6->sin6_addr, INET6_SIZE, h);
	} else {
		struct sockaddr_in* in = (struct sockaddr_in*)addr;
		h = hashlittle(&in->sin_family, sizeof(in->sin_family), h);
		h = hashlittle(&in->sin_port, sizeof(in->sin_port), h);
		h = hashlittle(&in->sin_addr, INET_SIZE, h);
	}
	return h;
}

/** calculate infra hash for a key */
static hashvalue_t
hash_infra(struct sockaddr_storage* addr, socklen_t addrlen, uint8_t* name)
{
	return dname_query_hash(name, hash_addr(addr, addrlen));
}

/** lookup version that does not check host ttl (you check it) */
struct lruhash_entry*
infra_lookup_nottl(struct infra_cache* infra, struct sockaddr_storage* addr,
	socklen_t addrlen, uint8_t* name, size_t namelen, int wr)
{
	struct infra_key k;
	k.addrlen = addrlen;
	memcpy(&k.addr, addr, addrlen);
	k.namelen = namelen;
	k.zonename = name;
	k.entry.hash = hash_infra(addr, addrlen, name);
	k.entry.key = (void*)&k;
	k.entry.data = NULL;
	return slabhash_lookup(infra->hosts, k.entry.hash, &k, wr);
}

/** init the data elements */
static void
data_entry_init(struct infra_cache* infra, struct lruhash_entry* e,
	uint32_t timenow)
{
	struct infra_data* data = (struct infra_data*)e->data;
	data->ttl = timenow + infra->host_ttl;
	rtt_init(&data->rtt);
	data->edns_version = 0;
	data->edns_lame_known = 0;
	data->probedelay = 0;
	data->isdnsseclame = 0;
	data->rec_lame = 0;
	data->lame_type_A = 0;
	data->lame_other = 0;
	data->timeout_A = 0;
	data->timeout_AAAA = 0;
	data->timeout_other = 0;
}

/**
 * Create and init a new entry for a host
 * @param infra: infra structure with config parameters.
 * @param addr: host address.
 * @param addrlen: length of addr.
 * @param name: name of zone
 * @param namelen: length of name.
 * @param tm: time now.
 * @return: the new entry or NULL on malloc failure.
 */
static struct lruhash_entry*
new_entry(struct infra_cache* infra, struct sockaddr_storage* addr,
	socklen_t addrlen, uint8_t* name, size_t namelen, uint32_t tm)
{
	struct infra_data* data;
	struct infra_key* key = (struct infra_key*)malloc(sizeof(*key));
	if(!key)
		return NULL;
	data = (struct infra_data*)malloc(sizeof(struct infra_data));
	if(!data) {
		free(key);
		return NULL;
	}
	key->zonename = memdup(name, namelen);
	if(!key->zonename) {
		free(key);
		free(data);
		return NULL;
	}
	key->namelen = namelen;
	lock_rw_init(&key->entry.lock);
	key->entry.hash = hash_infra(addr, addrlen, name);
	key->entry.key = (void*)key;
	key->entry.data = (void*)data;
	key->addrlen = addrlen;
	memcpy(&key->addr, addr, addrlen);
	data_entry_init(infra, &key->entry, tm);
	return &key->entry;
}

int
infra_host(struct infra_cache* infra, struct sockaddr_storage* addr,
        socklen_t addrlen, uint8_t* nm, size_t nmlen, uint32_t timenow,
	int* edns_vs, uint8_t* edns_lame_known, int* to)
{
	struct lruhash_entry* e = infra_lookup_nottl(infra, addr, addrlen,
		nm, nmlen, 0);
	struct infra_data* data;
	int wr = 0;
	if(e && ((struct infra_data*)e->data)->ttl < timenow) {
		/* it expired, try to reuse existing entry */
		int old = ((struct infra_data*)e->data)->rtt.rto;
		uint8_t tA = ((struct infra_data*)e->data)->timeout_A;
		uint8_t tAAAA = ((struct infra_data*)e->data)->timeout_AAAA;
		uint8_t tother = ((struct infra_data*)e->data)->timeout_other;
		lock_rw_unlock(&e->lock);
		e = infra_lookup_nottl(infra, addr, addrlen, nm, nmlen, 1);
		if(e) {
			/* if its still there we have a writelock, init */
			/* re-initialise */
			/* do not touch lameness, it may be valid still */
			data_entry_init(infra, e, timenow);
			wr = 1;
			/* TOP_TIMEOUT remains on reuse */
			if(old >= USEFUL_SERVER_TOP_TIMEOUT) {
				((struct infra_data*)e->data)->rtt.rto
					= USEFUL_SERVER_TOP_TIMEOUT;
				((struct infra_data*)e->data)->timeout_A = tA;
				((struct infra_data*)e->data)->timeout_AAAA = tAAAA;
				((struct infra_data*)e->data)->timeout_other = tother;
			}
		}
	}
	if(!e) {
		/* insert new entry */
		if(!(e = new_entry(infra, addr, addrlen, nm, nmlen, timenow)))
			return 0;
		data = (struct infra_data*)e->data;
		*edns_vs = data->edns_version;
		*edns_lame_known = data->edns_lame_known;
		*to = rtt_timeout(&data->rtt);
		slabhash_insert(infra->hosts, e->hash, e, data, NULL);
		return 1;
	}
	/* use existing entry */
	data = (struct infra_data*)e->data;
	*edns_vs = data->edns_version;
	*edns_lame_known = data->edns_lame_known;
	*to = rtt_timeout(&data->rtt);
	if(*to >= PROBE_MAXRTO && rtt_notimeout(&data->rtt)*4 <= *to) {
		/* delay other queries, this is the probe query */
		if(!wr) {
			lock_rw_unlock(&e->lock);
			e = infra_lookup_nottl(infra, addr,addrlen,nm,nmlen, 1);
			if(!e) { /* flushed from cache real fast, no use to
				allocate just for the probedelay */
				return 1;
			}
			data = (struct infra_data*)e->data;
		}
		/* add 999 to round up the timeout value from msec to sec,
		 * then add a whole second so it is certain that this probe
		 * has timed out before the next is allowed */
		data->probedelay = timenow + ((*to)+1999)/1000;
	}
	lock_rw_unlock(&e->lock);
	return 1;
}

int
infra_set_lame(struct infra_cache* infra, struct sockaddr_storage* addr,
	socklen_t addrlen, uint8_t* nm, size_t nmlen, uint32_t timenow,
	int dnsseclame, int reclame, uint16_t qtype)
{
	struct infra_data* data;
	struct lruhash_entry* e;
	int needtoinsert = 0;
	e = infra_lookup_nottl(infra, addr, addrlen, nm, nmlen, 1);
	if(!e) {
		/* insert it */
		if(!(e = new_entry(infra, addr, addrlen, nm, nmlen, timenow))) {
			log_err("set_lame: malloc failure");
			return 0;
		}
		needtoinsert = 1;
	} else if( ((struct infra_data*)e->data)->ttl < timenow) {
		/* expired, reuse existing entry */
		data_entry_init(infra, e, timenow);
	}
	/* got an entry, now set the zone lame */
	data = (struct infra_data*)e->data;
	/* merge data (if any) */
	if(dnsseclame)
		data->isdnsseclame = 1;
	if(reclame)
		data->rec_lame = 1;
	if(!dnsseclame && !reclame && qtype == LDNS_RR_TYPE_A)
		data->lame_type_A = 1;
	if(!dnsseclame  && !reclame && qtype != LDNS_RR_TYPE_A)
		data->lame_other = 1;
	/* done */
	if(needtoinsert)
		slabhash_insert(infra->hosts, e->hash, e, e->data, NULL);
	else 	{ lock_rw_unlock(&e->lock); }
	return 1;
}

void
infra_update_tcp_works(struct infra_cache* infra,
        struct sockaddr_storage* addr, socklen_t addrlen, uint8_t* nm,
	size_t nmlen)
{
	struct lruhash_entry* e = infra_lookup_nottl(infra, addr, addrlen,
		nm, nmlen, 1);
	struct infra_data* data;
	if(!e)
		return; /* doesn't exist */
	data = (struct infra_data*)e->data;
	if(data->rtt.rto >= RTT_MAX_TIMEOUT)
		/* do not disqualify this server altogether, it is better
		 * than nothing */
		data->rtt.rto = RTT_MAX_TIMEOUT-1000;
	lock_rw_unlock(&e->lock);
}

int
infra_rtt_update(struct infra_cache* infra, struct sockaddr_storage* addr,
	socklen_t addrlen, uint8_t* nm, size_t nmlen, int qtype,
	int roundtrip, int orig_rtt, uint32_t timenow)
{
	struct lruhash_entry* e = infra_lookup_nottl(infra, addr, addrlen,
		nm, nmlen, 1);
	struct infra_data* data;
	int needtoinsert = 0;
	int rto = 1;
	if(!e) {
		if(!(e = new_entry(infra, addr, addrlen, nm, nmlen, timenow)))
			return 0;
		needtoinsert = 1;
	} else if(((struct infra_data*)e->data)->ttl < timenow) {
		data_entry_init(infra, e, timenow);
	}
	/* have an entry, update the rtt */
	data = (struct infra_data*)e->data;
	if(roundtrip == -1) {
		rtt_lost(&data->rtt, orig_rtt);
		if(qtype == LDNS_RR_TYPE_A) {
			if(data->timeout_A < TIMEOUT_COUNT_MAX)
				data->timeout_A++;
		} else if(qtype == LDNS_RR_TYPE_AAAA) {
			if(data->timeout_AAAA < TIMEOUT_COUNT_MAX)
				data->timeout_AAAA++;
		} else {
			if(data->timeout_other < TIMEOUT_COUNT_MAX)
				data->timeout_other++;
		}
	} else {
		rtt_update(&data->rtt, roundtrip);
		data->probedelay = 0;
		if(qtype == LDNS_RR_TYPE_A)
			data->timeout_A = 0;
		else if(qtype == LDNS_RR_TYPE_AAAA)
			data->timeout_AAAA = 0;
		else	data->timeout_other = 0;
	}
	if(data->rtt.rto > 0)
		rto = data->rtt.rto;

	if(needtoinsert)
		slabhash_insert(infra->hosts, e->hash, e, e->data, NULL);
	else 	{ lock_rw_unlock(&e->lock); }
	return rto;
}

int infra_get_host_rto(struct infra_cache* infra,
        struct sockaddr_storage* addr, socklen_t addrlen, uint8_t* nm,
	size_t nmlen, struct rtt_info* rtt, int* delay, uint32_t timenow,
	int* tA, int* tAAAA, int* tother)
{
	struct lruhash_entry* e = infra_lookup_nottl(infra, addr, addrlen,
		nm, nmlen, 0);
	struct infra_data* data;
	int ttl = -2;
	if(!e) return -1;
	data = (struct infra_data*)e->data;
	if(data->ttl >= timenow) {
		ttl = (int)(data->ttl - timenow);
		memmove(rtt, &data->rtt, sizeof(*rtt));
		if(timenow < data->probedelay)
			*delay = (int)(data->probedelay - timenow);
		else	*delay = 0;
	}
	*tA = (int)data->timeout_A;
	*tAAAA = (int)data->timeout_AAAA;
	*tother = (int)data->timeout_other;
	lock_rw_unlock(&e->lock);
	return ttl;
}

int
infra_edns_update(struct infra_cache* infra, struct sockaddr_storage* addr,
	socklen_t addrlen, uint8_t* nm, size_t nmlen, int edns_version,
	uint32_t timenow)
{
	struct lruhash_entry* e = infra_lookup_nottl(infra, addr, addrlen,
		nm, nmlen, 1);
	struct infra_data* data;
	int needtoinsert = 0;
	if(!e) {
		if(!(e = new_entry(infra, addr, addrlen, nm, nmlen, timenow)))
			return 0;
		needtoinsert = 1;
	} else if(((struct infra_data*)e->data)->ttl < timenow) {
		data_entry_init(infra, e, timenow);
	}
	/* have an entry, update the rtt, and the ttl */
	data = (struct infra_data*)e->data;
	/* do not update if noEDNS and stored is yesEDNS */
	if(!(edns_version == -1 && (data->edns_version != -1 &&
		data->edns_lame_known))) {
		data->edns_version = edns_version;
		data->edns_lame_known = 1;
	}

	if(needtoinsert)
		slabhash_insert(infra->hosts, e->hash, e, e->data, NULL);
	else 	{ lock_rw_unlock(&e->lock); }
	return 1;
}

int
infra_get_lame_rtt(struct infra_cache* infra,
        struct sockaddr_storage* addr, socklen_t addrlen,
        uint8_t* name, size_t namelen, uint16_t qtype,
	int* lame, int* dnsseclame, int* reclame, int* rtt, uint32_t timenow)
{
	struct infra_data* host;
	struct lruhash_entry* e = infra_lookup_nottl(infra, addr, addrlen,
		name, namelen, 0);
	if(!e)
		return 0;
	host = (struct infra_data*)e->data;
	*rtt = rtt_unclamped(&host->rtt);
	if(host->rtt.rto >= PROBE_MAXRTO && timenow < host->probedelay
		&& rtt_notimeout(&host->rtt)*4 <= host->rtt.rto) {
		/* single probe for this domain, and we are not probing */
		/* unless the query type allows a probe to happen */
		if(qtype == LDNS_RR_TYPE_A) {
			if(host->timeout_A >= TIMEOUT_COUNT_MAX)
				*rtt = USEFUL_SERVER_TOP_TIMEOUT;
			else	*rtt = USEFUL_SERVER_TOP_TIMEOUT-1000;
		} else if(qtype == LDNS_RR_TYPE_AAAA) {
			if(host->timeout_AAAA >= TIMEOUT_COUNT_MAX)
				*rtt = USEFUL_SERVER_TOP_TIMEOUT;
			else	*rtt = USEFUL_SERVER_TOP_TIMEOUT-1000;
		} else {
			if(host->timeout_other >= TIMEOUT_COUNT_MAX)
				*rtt = USEFUL_SERVER_TOP_TIMEOUT;
			else	*rtt = USEFUL_SERVER_TOP_TIMEOUT-1000;
		}
	}
	if(timenow > host->ttl) {
		/* expired entry */
		/* see if this can be a re-probe of an unresponsive server */
		/* minus 1000 because that is outside of the RTTBAND, so
		 * blacklisted servers stay blacklisted if this is chosen */
		if(host->rtt.rto >= USEFUL_SERVER_TOP_TIMEOUT) {
			lock_rw_unlock(&e->lock);
			*rtt = USEFUL_SERVER_TOP_TIMEOUT-1000;
			*lame = 0;
			*dnsseclame = 0;
			*reclame = 0;
			return 1;
		}
		lock_rw_unlock(&e->lock);
		return 0;
	}
	/* check lameness first */
	if(host->lame_type_A && qtype == LDNS_RR_TYPE_A) {
		lock_rw_unlock(&e->lock);
		*lame = 1;
		*dnsseclame = 0;
		*reclame = 0;
		return 1;
	} else if(host->lame_other && qtype != LDNS_RR_TYPE_A) {
		lock_rw_unlock(&e->lock);
		*lame = 1;
		*dnsseclame = 0;
		*reclame = 0;
		return 1;
	} else if(host->isdnsseclame) {
		lock_rw_unlock(&e->lock);
		*lame = 0;
		*dnsseclame = 1;
		*reclame = 0;
		return 1;
	} else if(host->rec_lame) {
		lock_rw_unlock(&e->lock);
		*lame = 0;
		*dnsseclame = 0;
		*reclame = 1;
		return 1;
	}
	/* no lameness for this type of query */
	lock_rw_unlock(&e->lock);
	*lame = 0;
	*dnsseclame = 0;
	*reclame = 0;
	return 1;
}

size_t
infra_get_mem(struct infra_cache* infra)
{
	return sizeof(*infra) + slabhash_get_mem(infra->hosts);
}


RCE -Lighting, Energy, Technology, provides complete solutions for our customers. We are an installation and service provider for our trusted partners, from Amazon To Zarley, including Lowe's, Home Depot, Sears, Office Max, Best Buy, Sam's Club, & Costco. Our services include basic installations like ceiling fans and service upgrades, as well as lighting installation and lighting upgrades. We specialize in LED fixtures and lighting techniques. Additionally, our energy services include solar, standby generators, electric vehicle charging stations and Tesla Powerwall battery installations. RCE has been in business since 1995 serving the entire Kansas City community.
Fusion Electric is Kansas City's electrician for electrical repairs and service at your home or business.
In our world, electricians fall into two groups… Electricians who care about you and electricians who don't. And what's more, you shouldn't waste time or money on the latter. That's pretty much our business model in a nutshell. We're in the business of meeting your electrical needs… We specialize in every area of electrical work, from residential to commercial and everything in between. No job is too big or too small for us. Our electricians carry the latest expertise in the field and many years of experience. Over the years, we have served the electrical needs in almost every community located in the Greater Kansas City area. …But on a personal level. Although we may be in the business of electricity, we engage with our customers on a one-to-one basis ensuring every quote, every job and every interaction is personalized and focused on your electrical needs. We like to get personally involved. That means we ask a lot of questions and do a lot of listening. It's the best way to garner you the results you're looking for. We may be dealing in wires and voltages, but at the core of it, it's all about the people for us. "With Jason Wright Electric, it's as if you took an Electrician and combined it with a Concierge and created a 'Concierge Electrician'." As we continue to grow each year, we remain focused on what makes us different and more successful than the competition and that's working together to deliver service that's personal and tailored to you. It's what we do, but more importantly, it's what we believe in. Call us today to schedule an estimate for your electrical needs. We look forward to getting know you!
MVP Electric, Heating & Cooling is a mid size Overland Park electrician, heating and air conditioning company available to help you 24/7. We are a local, family owned and operated business that began with one man and one truck. Our Overland Park Electrician services include the highest level of customer service for Heating Repairs, Heating Replacement, Furnace, Heat Pumps, Air Conditioner Repairs, Air Conditioner Replacement, Dehumidifiers, Indoor Air Quality, Duct Repairs & Installation, Residential Electrical, Commercial Electrical, Energy Saving Plans, and Home Theater.
Serving the Kansas City, Mo, Kansas City, Ks., Douglas County, Ks. and surrounding Johnson County, KS areas as the premier source for Electric, Security, Lighting Automation, Audio and Video entertainment systems, Integrated Electric has the unique ability to take your projects from concept to completion--offering the finest technical expertise in the industry.
iWire Electric Service is dedicated to providing top quality electrical services. Our work is always performed by professional, qualified Kansas electricians. We are a trusted, reliable Lawrence electrician for Residential, Aluminum Wiring Replacement, Electrical Safety Inspections, Home Generators, Electrical Wiring, Electrical Repairs & Troubleshooting, Ceiling Fan Repairs, Lighting Repairs, Outlet Repairs, Lighting, Lighting Installation, Landscape Lighting, Security Lighting, Low Voltage Lighting, Panel Upgrades, Surge Protection, Commercial, and New Construction.
Ryan Electric is Recommend as the best electrician in Johnson County, Kansas City, Lenexa, Olathe and overland park. We pride ourselves in being able to offer you a full range of electrical solutions at lowest prices.
Family owned and operated since 1985, we can handle all of your electrical needs!
What realy matters to us is getting the job done right from start to finish, whether it's renovating a room or making every day home repairs. By choosing qualified professionals to do the job, you not only lower the risk of property damage and personal injury, but T Lane Electric Inc does the job to (NEC) The National Electric Code. Our purpose is to safeguard persons and property from hazards arising from the use of electricity. T Lane Electric Inc takes the safety of our customers very seriously. We go one step further in letting you the customer know your options for further expansion. We strive to achieve the highest levels of customer service by setting standards for our employees. Our employees as electrical contractors are professionals dedicated to the ethical, responsible and professional treatment of our customers and are scheduled for the job they are skilled or tooled to complete. So whether you are in need of new installations, home repairs, or remodeling jobs, contact us in St Joseph, MO for superior electrical installation and repair services.
Lamp & Light Electric is your trustworthy, local electrical contractor. We're trained and qualified to meet commercial and residential needs. At Lamp & Light Electric our goal is to provide quality, electrical services for both commercial and residential work. We focus on doing our work with excellence and efficiency. Whether you are in need of some updated lighting or a complete panel upgrade we are the certified licensed electricians for you!
Teague Electric is not only the leading commercial electrical contractors in Kansas City, and we are also one of the leading residential electricians in Kansas City as well. Our KC electricians serve the Metro area including Overland Park, Olathe, Johnson County and the entire surrounding Kansas City area . We take service and quality very seriously and try our best to provide the highest quality electrical services at fair prices to Kansas City home owners. We provide emergency Kansas City residential electrical services as well. Our Kansas City residential electrical services range from small electrical fixture installation projects all the way to whole house electrical wiring and home generator installation. No residential electrical job is too big or too small for our licensed Teague electricians. Our residential electrical services team takes a great deal of pride in their work, whether they are replacing an electrical outlet, installing a ceiling fan, or running all the wiring for your new swimming pool or hot tub!
What do licensed Kansas City electricians do?
An electrical contractor plans, installs and repairs wiring in structures. He or she works closely with the home's general contractor or remodeling contractor to determine the specific electrical needs for the project and to ensure that the wiring will meet Kansas City, MO building codes. An electrical contractor's job also includes installing and repairing fixtures, switches and other visible components of electrical systems.
With today's technological needs and advances, many electricians in Kansas City, MO also are trained to install fiber optic and coaxial cables for electronic equipment. Certain electrical companies may design and install data systems and wire for security features such as alarms too. Some Kansas City electrical contractors specialize in specific areas, such as HVAC, low-voltage appliances and systems and more, so be sure to ask about their training to see if it fits your project needs.
Find a certified Kansas City electrician on Houzz. Narrow your search in the Professionals section of the website to Kansas City, MO electrical contractors. Here are some related professionals and vendors to complement the work of electricians: Lighting Showrooms & Sales, General Contractors, Solar Energy Contractors, Heating & Cooling Sales & Repair.


Ok so this is going to be a proper moan-fest of a post, and I have tried so hard to remain positive, but f**k me this month is dragging me down!
I don't know whether it's the weather, the fact that I have had a cold and sinus infection for nearly 6 weeks, we're a bit skint or just the fact that it's January (it's all of these things), but I am feeling seriously down and fed up. Oh and Trump will be President today. Jesus, that is so depressing.
I'm still exercising and eating well (I downed a super green juice yesterday in the hope that it would invigorate me – it didn't), but what I really want to do is curl up in a ball, drink tea and eat chocolate. I am craving the stuff at the moment, more so than I have done in months. I suppose I just need that little bit of a sugar lift.
I hate feeling like this. Don't get me wrong I'm not actually depressed, I've just got a serious case of the January blues – is that even a thing? Or have I read about it so much that my feelings are psychosomatic? Who knows, but I'm definitely not my normal, cheerful positive self.
The worst thing about it is that I have absolutely zero motivation. Each morning I look out of the window and just see a grey, gloomy, wet day. It means that we can't go out to the park or for walks, and I have to entertain my daughter at home all day.
It's been really hard work trying to muster up the enthusiasm to paint, bake or play games (sorry kid). I'd give anything for her to be in nursery for a couple of days at the moment (she doesn't start until April), and now I feel guilty for thinking it.
I've also had really bad writer's block which has frustrated me even more. Not even meditation has made a difference this month. Sigh.
Looking at my weather app it looks like we're in for a good few days of sunshine starting today – yay to some Vitamin D! Can't wait to get out in it.
Molly is sleeping well at the moment so at least I'm getting a full 8 hours (watch me jinx that now)!
Feeling slightly better now (I won't be later at around 5pm…I might just boycott all news channels until it's over).
To cheer me up I'm posting a picture of our holiday village in Ibiza…roll on September!!
< Previous Is it ok to force someone you love to give up smoking?


The FDA continues to encourage pet owners and veterinary professionals to report both symptomatic and asymptomatic cases of dogs suspected to have DCM connected to diet by using the electronic Safety Reporting Portal or calling their state's FDA Consumer Complaint Coordinators. Please see the link below about "How to Report a Pet Food Complaint" for additional instructions. The FDA will continue to provide updates on the progress of this investigation and will alert the public about significant developments.
Posted by chesliepickett on Feb 20 2019. Filed under Featured, Health & Training. You can follow any responses to this entry through the RSS 2.0. Both comments and pings are currently closed.


There are more mouth-watering eateries in walking distance of my Downtown Detroit Loft than I can count, but this Thursday my Luxury Loft's Leasing Office is treating me to a truly mouth-watering (and eye-watering) outing: our Annual Blazin' Wings Challenge.
Every month, my neighbors and I get invited to an event hosted by my Downtown Luxury Loft Leasing Office—it's a great way to get to know your neighbors and discover new bars and eateries in Detroit—and this month we're headed to Buffalo Wild Wings.
feet of ideal TV-watching while eating wings with friends! With nearly 100 TVs, there isn't a bad seat in the house, and if there's a game on, B-Dubs has got it on. And, as we all know, this Thursday there will be some very 'Sweet' games on!
And the Sweet Sixteen will pair perfectly with the Spicy Wings in our Blazin' Wings Challenge, where competitors will attempt to eat six super-hot boneless wings in under sixty seconds.
Fortunately, Buffalo Wild Wings also has a huge selection of draft beers (including craft!) and bottled brews, as well as cocktails and wine. Which will be great for the competitors to wash down those wings and for everyone from my Downtown Detroit Luxury Lofts to go rounds while watching the NCAA Men's Basketball Tournament rounds!
Right now, my bracket is a bit busted. But no matter, on Thursday, and everyday in a Downtown Detroit Loft, we're all winners.
also restored the historic building I live in), it's a #WIN that they also host you and your neighbors for get-togethers that put the neighbor back in neighborhood.


This article appeared in the Globe and Mail, October 20th, 2016.
At a Berkshire Hathaway annual meeting, Warren Buffett was asked how he managed to be such a successful investor. He described his approach as nothing more than putting the odds in his favour.
This explanation concisely describes the only rational approach to investing. It zeros in on the necessity of estimating the odds.
Of course, this is not always possible. Some things are reasonably predictable and some are not. Most people have trouble distinguishing between the two.
We all overestimate our ability to predict what is going to happen. Why is this? As Nassim Nicholas Taleb pointed out in his book, Fooled by Randomness, it is largely because humans continually underestimate the role of chance. We look for patterns – even when they do not exist. Random factors affect every event in our lives. Nevertheless, after the fact, we often believe that we should have expected the event, and we invent causes.
People are not very good at recalling the way an uncertain situation appeared to them before they knew the results. Many independent studies confirm the presence of this hindsight bias. For example, after the tragic events of Sept. 11, 2001 (as unexpected an event as we can imagine), one in five members of the general public interviewed said they had fully expected something along those lines would occur.
Professionals are no better at near-term forecasting. A distressing number of them enjoy speculating on macroeconomic matters such as foreign exchange rates, commodity prices, future interest rate changes and impending recessions. However, numerous studies have shown that short-term forecasts in these areas are no better than would be achieved by chimps throwing darts. Likewise, we are bombarded with predictions of the short-term direction of the stock and bond markets. Yet study after study has shown that the timing of near-term market increases and decreases is entirely unpredictable.
You should think of these pundits not as seers, but rather as entertainers.
Returning to Mr. Buffett's advice to calculate probabilities, a good starting point would be to avoid wasting time thinking about the type of unpredictable events described above. Eliminate all macroeconomic predictions and all attempts to guess the direction of the markets over the short run. You are then free to focus on those factors that can actually put the odds in your favour.
There is one area that is completely predictable. You know with certainty that your net investment return is increased if you can reduce your cost of investing.
For a taxable investor, the principal cost of investing is income tax. Your after-tax return varies inversely with the amount of tax you pay. How do you minimize your taxes? Begin by recognizing that deferring tax for the long run is the next best thing to eliminating it.
Capital gains tax is payable only if you sell your investment. (Even then it is payable at a low rate, applied to only part of your sale proceeds.) Reduce the turnover in your stock portfolio by owning only companies with strong balance sheets that operate profitable, growing and relatively predictable businesses – and plan to hold them for the very long run. Also, when possible, hold any dividend-paying stocks (particularly non-Canadian, dividend-paying stocks) in your RRSP or RRIF.
After tax, your next highest cost is investment management fees, commissions, etc. Mr. Buffett has said that 95 per cent of people should own only very low-fee index funds, and hold them for the long run. This sensible approach lowers your fees and, because of the low turnover in index products, also materially lowers the amount of tax you pay.
Moving from the certain to the highly probable, equities have proven to be one of the best asset classes in which to invest your capital over time. While short-term price movements are entirely unpredictable, the return from investing in publicly traded companies over a period of five or more years is likely to be highly satisfactory. Unless you have a short time horizon, there is a lot to be said for investing in stocks rather than bonds or other asset classes.
Also, numerous studies have shown that, for stock investors, value investing does work. Market multiples, such as the ratio of price a share to earnings per share (the P/E ratio) will, over time, revert to a long-term average. Investors who buy reasonably predictable businesses at historically low multiples of their normalized earnings can expect to outperform the stock market averages over time.
If you want to engage an active manager to invest your capital, find a value manager that charges reasonable fees for the amount invested, has relatively low turnover in their portfolio, and thinks about allocating your investments between your taxable and tax-sheltered accounts in a tax-efficient manner.
As the Oracle of Omaha says, it's all about putting the odds in your favour.


Experience the sights and sounds of the Great Ocean Road on this stunning full day tour along this famous road. This picturesque destination is a haven of natural splendour, featuring breathtaking coastal views, sublime rivers, lush rainforests and thundering waterfalls. It is on many must-visit lists of travelers across the world.


Friday nights have been Family fun nights at our house for years. Now that the girls are in their teens and tweens, we let them decide if it's game night or movie night and it just so happens, tonight is going to be movie night thanks to Big G Cereal Movies. This post is sponsored by General Mills but my love for their cereal and family fun is all my own.
We chose Lucky Charms and Frosted Cheerios. We had to look through the Big G cereals available to make sure we selected boxes with the General Mills and Fox MovieDownload Promotion movie banner across the front to ensure we'd get the code needed.
Once you have your Big G cereal home, it's time to decide what movie you are going to download. There are 10 great movies to choose from.
We chose Mr. Popper's Penguins. Downloading our movie was easy.
We found the codes needed in each cereal box.
Went to Big G Cereal Movies and entered codes.
No family movie night would be complete without a snack, so we were happy to see snack recipes on both boxes of Big G cereal. The girls and I raided our pantry and came up with our own version of Lucky Charms Peanutty Good Luck Snack. We added Cashews, Pretzel bites and Frosted Cheerios to our recipe. It is so sweet and salty good that we had to put it away to wait until official movie time tonight.
Place all ingredients in resealable plastic food- storage bag; seal.
Shake until mixed. Store at room temperature up to 3 days.
Enjoying our family movie nights is just one of the ways we spend quality time together as a family, and now thanks to Big G, we'll have Mr. Popper's Penguins in our movie collection to watch again and again.
Please share in comments: What are some of your favorite family movies?
Disclosure: Many thanks to General Mills for sponsoring today's post and sharing their family fun with us. I will receive compensation for sharing my thoughts on Big G,. Regardless, I only recommend products or services I use personally and believe will be a good for my readers. I am disclosing this in accordance with the Federal Trade Commission's 16 CFR, Part 255: "Guides Concerning the Use of Endorsements and Testimonials in Advertising."
Labels: #biggcerealmovies, family, fun, movie, night.
So, do you download it to your computer or tablet or what? I think we would download anastasia since they have never seen that. I am going to keep an eye out for that. We just rented We Bought a Zoo and watched it today. Good movie.
How fun!! I love that snack mix - never saw anything like that...YUM!!!
I can't wait to try the Lucky Charms Peanutty Good Luck Snack! That looks really good for our next movie night.
I have already downloaded 2 of these movies to Google Play and we watched them today. I need to go grab 2 more boxes so I can get another one.
Looks like a great snack! Lucky Charms is a favorite around here, I'm sure my sons would love this mix!
I love Marmaduke and the beauty of Lion, Witch and Wardrobe. We went to see Maleficent in the movie theater, and I absolutely loved it. Very good movie.
There is some great movies for my kids to watch. This is a good prize in the cereal.
Yes, you can download the movie to any device that you can watch a movie from.
We love We Bought a Zoo too!
We still have a little of our snack left, but not much. It goes quickly! I hope you get to make some for your next movie night.
Awesome! Free movies are always a great treat.
If your boys are fans of Lucky Charms cereal, they are going to love this snack. My family sure did.
My youngest daughter wanted to adopt Marmaduke after seeing that movie.
We saw Maleficent too and loved it as well!
They really are great kids movies to chose from. We've watched several of them.
This is a good list of movies! We loved We Bought a Zoo, and I'd love to download it to our tablet for when we travel this summer!
We love We bought a Zoo too and I know there will be some talk back and forth before we download another movie because it's so hard to choose just one.
That recipe sounds pretty good. When the kids were young, we always had a movie night. I still enjoy a movie night now.
This is a super tasty treat my girls still request, so I hope you get to try my recipe soon.


text:
Shadow Ministerial Interview Transcripts
Transcript of radio interview – Drive with Rafael Epstein, ABC Melbourne
Subjects: Tony Abbott, infrastructure, Batman by-election, Greens Political Party, Adani, coal, asylum seekers, Barnaby Joyce, Nick Xenophon.
RAFAEL EPSTEIN: Anthony Albanese joins me in the studio. He is the Shadow Minister for Infrastructure, Transport, Cities and Regional Development. Good afternoon.
ANTHONY ALBANESE: G'day Raf. Good to be with you.
EPSTEIN: Can we start with someone you now well – Tony Abbott? He's making a speech in Sydney tonight so we will start national then go local. He wants to halve Australia's immigration. So people know, it is roughly 190,000. Last year it was 183,000. He wants to halve that. This is what Tony Abbott said on Sydney radio.
TONY ABBOTT: Every five years we are adding via immigration alone a city the size of Adelaide to our population. Now this is a very, very high rate of immigration and it is absolutely unprecedented.
EPSTEIN: Is it a good idea Anthony Albanese?
ALBANESE: Well, Tony Abbott has seen weakness in Malcolm Turnbull in failing to deal with Barnaby Joyce and the fiasco of having a Deputy Prime Minister who can't deputise for the Prime Minister which is, the hint is there in the title, and he has just decided to ramp up again the destabilisation campaign. Let's be clear. The migration levels that Tony Abbott just said were unprecedented are ones that were set by him. He was the Prime Minister who increased migration.
EPSTEIN: Inconsistencies aside, actually there's already a text: "I as a Left-leaning Batman voter I would love to see migration reduced back to 70,000 per annum to reduce environmental pressure, urban sprawl.'' It is a popular idea in some sections.
ALBANESE: Sure, and what Tony Abbott said, went on to say, with breathtaking hypocrisy it must be said, is to speak about urban congestion and those issues which is no doubt a big issue here in Melbourne as it is in the other major capitals around Australia and he actually had the hide to talk about public transport. This is the bloke who cut the funding for the Melbourne Metro, cut the funding from every public transport project that wasn't under construction anywhere in Australia. And then wrote of course in his book Battlelines, said that, to quote him, or almost quote him, I won't say it is word for word but pretty close: In the car a man is king. There is no need for anything bigger than a motor car to get people around.
EPSTEIN: Just before I get on to Batman, the Australian Conservatives are actually going to run a candidate in the seat of Batman, Kevin Bailey, who declined our invitation to be with us today. But halving the immigration intake is Australian Conservatives' policy, now led by Cory Bernardi. Are you surprised about that? Or would you expect that from Tony Abbott?
ALBANESE: I expect ongoing destabilisation from Tony Abbott and if he can get a headline, no matter how inconsistent it is with the views that he has put in the past, then he will be out there doing it.
EPSTEIN: Who do you think is going to win Batman?
ALBANESE: Well I certainly hope that Ged Kearney wins. It is a seat that Labor has held. I think that she has a great contribution to make to the Labor caucus.
EPSTEIN: She would have to reverse the trend wouldn't she? Labor's vote has dropped, dropped, dropped.
ALBANESE: It has. Look, it's a tough battle. There's no doubt about that and the trend has been toward the Greens Political Party over election after election. We are seeing an electorate a bit like mine in Sydney that is changing. It is gentrifying and newer residents are coming in. It's a matter, though of, I guess, getting the message out there which is the message I use in Grayndler and I was doing today with Ged when we were talking with people in Northcote, that Ged Kearney will actually be a voice in hopefully the party of government that we seek to form after the next election – a Labor Government.
All the Greens Party can do is to wait for a decision to be made and then protest or endorse it. But they are not actually decision makers. Ged Kearney will be a major contributor if we can get her in the Caucus.
EPSTEIN: A couple of the issues that I think have Bill Shorten at least metaphorically straddling a barbed wire fence – he is in marginal Queensland at the moment, the Opposition Leader. He is under pressure from the environmentalists within Labor to block the Adani mine. He is under pressure from the CFMEU to not block the mine. Is Labor going to be formally go: You know what, no? Or is the position going to be, as the union wants it to be, it's just another mine?
ALBANESE: Well of course the project has been through its environmental approvals both federal and state. And Labor has been consistent about saying there are problems with this project and the problems are that it can't get financing. The economics of it simply don't stack up.
EPSTEIN: But that's nothing to do with potential Federal Government policy. So if you were in power, because there has clearly been a discussion in Shadow Cabinet to do something more to block the mine. Is Labor going to do anything else to block the mine?
ALBANESE: The environmental approvals were done by the Coalition Government. They've been through the EPBC Act not once, but twice actually because they started again based upon what the impact would be on the Great Barrier Reef. And again it got approval and of course those decisions have been challenged in the courts and the courts haven't blocked that project.
EPSTEIN: But that's commentary. That is not a policy position.
ALBANESE: Well the policy position is we support the environmental laws which are there being undertaken with rigour. Where the Commonwealth could play a role is in should there be any public subsidy for this project to make it viable and indeed …
EPSTEIN: Labor has already said you won't publicly subsidise it. That's pretty clear.
ALBANESE: But that's the key point.
EPSTEIN: Can I put to you what the CFMEU's Tony Maher said: If you block Adani, what do you do with the next coal mine and the next one and the one after that? So is there going to be any extra legislative step from Labor if you were to win the election to block the Adani project?
ALBANESE: Well I think what Tony is pointing towards is that when you have a policy framework it is never a great policy framework to just look at projects in isolation. That is why we wanted a price on carbon. We would have one if the Greens had voted for it.
EPSTEIN: Do we need more coal mines? Do we need to develop the Galilee Basin?
ALBANESE: Well the fact is that, as Mark Butler outlined last night, there is no market for it. There's no market for thermal coal. What we are seeing globally is a shift to renewables. What we are seeing in India is a government that says that they will rule out importing coal in the next few years. That's the policy of the Government.
EPSTEIN: Can I get a statement from you though? Do you think we need more, do we need to new coal mines in this country or not?
ALBANESE: Well in terms of thermal coal, I mean that is not a matter for me. That is a matter for the market. What it's a role for Government to do is to set a framework for that market and that framework should give support to the future and the future is renewables. The future is not …
EPSTEIN: So no, you don't want more coal mines?
ALBANESE: I don't want to see new coal-fired power stations in this country because it doesn't work.
EPSTEIN: Not stations. Mines. Do you want coal mines?
ALBANESE: There's not a market for it. Well, the fact is that that is not up to government to determine on a case-by-case basis. What it's up to government to do is to set the policy framework through the environmental legislation that we have. That is how you get good outcomes. That is how you get investor certainty. That is how you benefit both the economy and the environment – getting the right settings in place so that we drive that change to a clean energy future.
EPSTEIN: Anthony Albanese is Shadow Infrastructure Minister. I will get to your texts as well. I will read this one actually: "I am a latte-swilling inner-city living recycling leftie and even I think the current level of immigration isn't sustainable. I also think Tony Abbott is a boorish fool. We should be able to have a mature debate about immigration and sustainability." That's from Brian in South Melbourne. We are going to hear another view on the migration debate. I think Anthony Albanese has said all he wants to say about immigration. Can I ask you about asylum seekers though?
ALBANESE: Sure.
EPSTEIN: There was a tweet that came out from the Clifton Hill Labor branch. You might have seen this. Bill Shorten promises Nauru and Manus Island detention centres will be closed under a Labor Government. Is that going to happen?
ALBANESE: Well in terms of our policy on asylum seekers, we have a policy of having regional processing. What we want is for people to not get on boats and if people aren't getting on boats then you don't need offshore processing. If you have a regional system by giving support to the UNHCR, then you can have people processed in Jakarta, in Malaysia, in Africa, in Pakistan, in Iraq, in places where they are seeking to come.
EPSTEIN: Forgive me. That's policy explanation, that's not an answer to the question.
ALBANESE: Well life isn't always simple with glib answers. What we need to do is to set up a framework so that Australia fulfils our international obligations so that we stop people smugglers. I am all in favour of that and I don't want to see anything …
EPSTEIN: Bill Shorten appears to have pretty clearly told people in the Clifton Hill Labor branch that Manus and Nauru would close.
ALBANESE: Well, I don't know. I wasn't at the Clifton Hill Labor Party branch meeting it must be said.
EPSTEIN: But is that Labor Party policy? If you shut down whatever government facilities are being funded by the Australian Government in Nauru and Manus, you can only do that if those people come to Australia. Are those people going to come to Australia?
ALBANESE: No those people are going to be settled in third countries. That is Labor's clear position and that is why we have supported for example people being settled in New Zealand and accordance with what Prime Minister Ardern has offered, as former Nationals Prime Minister John Key offered as well. This Government has absolved itself of its responsibility. They are in their fifth year in office.
EPSTEIN: But if Bill Shorten's promising to shut Nauru and Manus …
ALBANESE: Well you haven't quoted Bill Shorten, you have quoted someone at Clifton Hill ALP branch.
EPSTEIN: Well I am just trying to work out what Labor's policy would be in government.
ALBANESE: Well our platform is there for all to see. See, unlike the Greens, we determine our policy – the last one here in Melbourne – live on national TV. It goes for about three days and there we thrashed out our policy including on asylum seekers and that was a comprehensive plan of engagement with the UN, of regional settlement, of not supporting people smugglers but also treating people humanely and with some respect.
EPSTEIN: Marks's got a question. You will need to put your headphones on. Mark, go for it. What is your query?
CALLER: I would just like to ask the Leader of the Opposition, sorry the Deputy Leader of the Opposition.
EPSTEIN: He's not the deputy either.
ALBANESE: I'm not either. I am a humble frontbencher.
CALLER: Well that's OK. I would like to ask the humble frontbencher a pretty straight forward question. If they were elected will they close, will they block the Adani coal mine?
ALBANESE: Well the Adani coal mine has been approved. It has been approved under state and federal approvals. The question is what can Labor do? What Labor can do is what we were asked to do frankly, which is that the environmental movement that I met with over a long period of time said you have got to make sure that there is no subsidy of the rail line or other infrastructure for what is a private project.
If that doesn't occur, and the company has said it themselves, the project will fall over and be unable to get finance. Well Labor has made sure, not just federally but in Queensland as well, that it won't give any subsidy and guess what? The project doesn't have finance to proceed.
EPSTEIN: Mark, is that an answer to your query?
CALLER: Looks like it going to (inaudible).
ALBANESE: Well at the moment it just doesn't have finance. So without finance they can't proceed with the project. Finance, they have tried to get it in Australia. They have tried to get it in China. They have tried to get it everywhere and it just hasn't stacked up, the economics of it.
EPSTEIN: Twenty past five, I want to play you something Anthony Albanese. I know you still DJ for charity. Nick Xenophon is now in the state arena in South Australia. Have you seen his advert?
ALBANESE: Unfortunately I have.
EPSTEIN: I just want to play it. This is Nick Xenophon shopping for voters in South Australia.
ALBANESE: Thank goodness this is radio and not TV because once seen, it can't be unseen.
Plays part of the Xenophon election advertisement.
EPSTEIN: It kind of goes downhill from there. Would you play that at a charity DJ set?
ALBANESE: I have too much respect for whoever is at a charity event.
EPSTEIN: Oh come on, you would do it to raise money for charity though, wouldn't you?
ALBANESE: They would pay more money for you not to play it. That is what I would do and therefore the charity would benefit substantially.
EPSTEIN: Quickly if you can make a non-partisan observation, I know that is hard.
ALBANESE: That is a big call Raf. But I will try.
EPSTEIN: Is Barnaby Joyce going to remain as Nationals Leader?
ALBANESE: No.
EPSTEIN: How long do you think it might take?
ALBANESE: The longer it takes the more difficult it will be for his own party. I think he is being pretty selfish frankly. He is on leave. He should just leave. There is no way that his position is tenable. Malcolm Turnbull knows that he should go, his own side, the majority of them, know that he should go. The only person …
EPSTEIN: He's got majority support. That was one thing he has said, that he's got majority party room support.
ALBANESE: I don't think he does and I think he will find that out. I think they have tried to give him the space to get out with a bit of dignity and I hope for his own sake frankly that that happen, he steps aside and gets his own house in order.
EPSTEIN: Thanks for coming in.
ALBANESE: Thanks Raf.

redpajama_set_name: RedPajamaCommonCrawl


 What happens if my energy price changes?
If you are on a Fixed Term Tariff, your prices will not change during the life of the contract.
However if you are on a variable tariff there is a possibility your energy prices will move up or down.
This movement is a reflection of changes seen in the wholesale market and/or other costs we face. If we do decide to change our prices at any point, we will always give you at least 30 days' notice before these changes take effect so you have time to prepare.


(RED) and Live Nation welcome Brett Dennen to (RED)NIGHTS, an innovative series of concerts in the U.S. to raise money and awareness for the ultimate goal of eliminating AIDS in Africa.
Brett's Los Angeles show is set for this Saturday, December 12, at the Wiltern Theater.
At each of these (RED)NIGHTS shows, the artists aim to inspire fans to participate in (RED)'s mission to eliminate AIDS in Africa by pausing to highlight the many ways to get involved and encouraging those in the audience to share the message and experience with others. A portion of the proceeds of each (RED)NIGHTS concert goes directly to the Global Fund.
Here's your chance to win a VIP package which will include tickets to the show this Saturday and a meet and greet with Brett.
Brett is asking fans coming to the show to participate in a "White Elephant" gift exchange – bring a small gift and during the show, Brett will ask you to trade presents with your neighbor.
Brett and the band will be participating too! Head to Brett's Facebook and tag one his gifts to win it.
Love the white elephant idea. I'm bringing a Chester French CD…hope someone wants it.
← Muse Headed to Salt Lake City, April 5, 2010–Inching Closer to Coachella Festival Appearance?


text:
US city bans sale of foie gras Fatty liver off the menu from 2022
IN late October, New York City decided to ban the sale of foie gras, a famous French (法國的) delicacy. The law will go into effect in 2022. The city is known for its fine dining, and the dish is popular in many New York City restaurants.
Foie gras is made from the liver of a goose or duck that has been fed a lot of corn. This makes their liver fatty; in fact, the name of the dish is the phrase 'fatty liver' in French. The dish is actually not very healthy. Not only that, many animal rights groups say forcing birds to eat until they have such large livers is inhumane.
Under the new law, anyone caught and convicted of selling foie gras will be fined US$500 to US$2,000 (about HK$3,900 to HK$16,000). The biggest foie gras producer in the US, Hudson Valley Foie Gras, said that it will fight the ban in the courts
(This article is published on Goodies on 13 November 2019)
1. go into effect (v phr)
生效
2. goose (n)
鵝
3. inhumane (adj)
不人道的
4. convict (v)
判有罪
1.	When will the ban take effect?
A.	Now
2.	What does 'foie gras' actually mean?
A.	Fat Tuesday
B.	Thin liver
C.	Fatty liver
3.	What is the maximum fine?
A.	US$2,000
B.	US$500
C.	HK$2,000
convicted go_into_effect goose inhumane
NYC bans foie gras s...
NEW York City (紐約市), often viewed as the f...
Egg thrower starts 3...
A RADICAL pro-democracy activist who threw eg...


This image composite shows the search for the supernova, nicknamed Refsdal, using the NASA/ESA Hubble Space Telescope.
The image to the left shows a part of the the deep field observation of the galaxy cluster MACS J1149.5+2223 from the Frontier Fields programme. The circle indicates the predicted position of the newest appearance of the supernova. To the lower right the Einstein cross event from late 2014 is visible.
The image on the top right shows observations by Hubble from October 2015, taken at the beginning of observation programme to detect the newest appearance of the supernova.
The image on the lower right shows the discovery of the Refsdal Supernova on 11 December 2015, as predicted by several different models.


Kids are invited to enter themselves in the Halloween Fancy Dress contest. Contestants should assemble by 2.30pm in the main marquee where the judging (by festival attendees) will take place.
The winner will get a cup and also be invited to light the bonfire in the evening.
In the evening there is also an Open Halloween Fancy Dress competition after the Festival Menu in the Marquee. The prize is a magnum of fizz. No entry forms or fees are required for this but all attendees are strongly encouraged to come in Halloween Fancy Dress.


Blue Lion Biotech is specialized in high-end, analytical biotech equipment and services. We are your #1 TRUSTED reseller. We focus on all high end instruments such as: Peptide & DNA Synthesizers, Mass Spectrometers, HPLC, Sequencers, Real-Time PCR, Robots, Flow Cytometers, ICP-MS, ICP-OES, XRD, XRF, NMRs, and much more... We are unmatched for AGILENT, ABSciex, ABI, THERMO, BIORAD, SPECTRO, PANalytical, instruments. Blue Lion Biotech is the best choice for you. We are a true multi-vendor provider of instruments, service and support. We look forward to demonstrating the levels of competence and quality service that has made Blue Lion Biotech the fastest growing reseller of analytical equipment in the North America and Europe.
Shipping PolicyBlue Lion Biotech has a certified network of shipping carriers each specialized in handling high-end analytical equipment. Each carrier has an economical advantage in the geographical areas they control offering you very competitive prices. We offer you many levels of shipping both domestic and export. Blue Lion Biotech ships insured at full value protecting your investment.
Return PolicyBlue Lion Biotech shall notify Buyer, via email, acceptance of Buyer's order, and receipt and bank clearance of Buyer's payment. At the time of Blue Lion Biotech notification to Buyer of Blue Lion Biotech's acceptance of order and bank clearance of down payment, the instrument/s cannot be returned for any reason and the order shall be non-refundable. Blue Lion Biotech shall not accept returns, exchanges or refunds. Buyer assumes the responsibility for your purchase, and no refunds will be issued. All sales are final.


text:
About the Irwin Allen News Network
Established in 1994 as an extension to Giants Log, The Irwin Allen News Network (IANN) is an international non-profit organisation devoted to promoting and keeping alive all the Irwin Allen film and television productions, the work of their cast and crew members, and the efforts of their fans. We see our role as that of historians, studying the work of Irwin Allen and sharing our knowledge so that his work continues to inspire new generations.
Over the past 28 years we have seen fans around the world gather inspiration from Irwin's work and use this to develop their own creativity. We have been amazed by how many talented artists and writers there are in Irwin Allen fandom. Irwin literally inspired a generation. Some view his work as cheesy, but we have to remember the era when the shows and movies were made. Considering that the four science fiction shows were primarily aimed towards the family audience, these were big budget productions in anyone's eyes. They coincided with the space era and many were inspired to become the scientists we have today. Others were inspired artistically by the colour, creativity and energy exuded by the shows. The Poseidon Adventure, The Towering Inferno and Code Red lead to increased safety in maritime and fire prevention. There are not too many producers who have achieved this.
Our honorary president is the late Paul Zastupnevich and honorary members include Irwin Allen's wife Sheila Mathews Allen, performers, and crew associated with these productions. All work presented is in collaboration with, and with the blessing of Sheila Allen, 20th Century Fox, cast members and crew. We also thank those associated with the Irwin Allen productions who have provided material for our projects, shared their time with us, and for their attendance at several events around the world.
To ensure you can view all the menus, videos and slideshows throughout this site, it is worth checking that your browser is set to allow the use of the following:
Javascript (used for menus and galleries)
Quicktime (used for video and audio)
Internet Explorer Notes
With Internet Explorer, we recommend upgrading to the latest version (IE 8 for XP, IE 10 for later versions of the Windows operating system) and view our sites with at least version 7. Version 6 of Internet Explorer is particularly buggy, so upgrading would be worthwhile.
It is still possible that Flash and Javascript may not operate correctly and this may be remedied by ensuring that all of the IANN related sites are included in your Trusted Sites list. This can be accessed via the Internet Explorer menu bar at the top of the browser, by clicking on the following sequence of options/tabs and adding "http://www.iann.net" etc. to the list:
Tools - Internet Options - Security - Trusted Sites
We include many links around this site to websites related to Irwin Allen, his performers, crew and fans which we think would be of interest to visitors of this site. Please let us know if any sites linked to change or disappear. The site includes links to YouTube videos of interest so please ensure your browser settings allow for whatever video method YouTube is using at the current time (eg. HTML5). We also sometimes include links to new Irwin Allen related DVDs and books on Amazon. We will receive a small amount of compensation if you purchase directly from an Amazon link and any such funds are used towards providing our free membership pack.
Invitation To Participate
Everyone is welcome to participate and help with our web site and publications. We are interested in all things related to Irwin Allen, including the lesser known or classic movies.
All original material used will be credited to their respective authors. We have many projects on the go at any one time, and welcome all ideas and support. There is more information at the end of this page on how you can participate.
Current Projects How You Can Help
IANN and Giants Log web sites We have long been aware that the Internet will be core to helping keep Irwin Allen's name and work alive and have gradually been building this project since the mid-nineties. It is an ongoing project and we continue to develop it as and when we have any spare time. We welcome contributions including pictures, convention reports and anything else that will help inspire others in their interest in Irwin's work.
Actor Database web site As mentioned above, our focus isn't just Irwin Allen, but also all the people who worked in front of and behind the camera. Irwin assembled a magnificent team, and his productions would never have been successful without them. We want to make sure that they are remembered and treasured in equal measure as Irwin. The actor database has been set up to make sure we do not forget their considerable contributions to Irwin's success. It is worth watching the end credits of all of Irwin's movies and shows. You will see the same names time and time again and it shows how smart Irwin was in gathering a loyal crew of actors, writers and technicians who made these productions unique. If you have any photos of actors or crew that we can use or any articles and information, we really would welcome your input.
Irwin Allen News Bulletins Semi-regular news update sheet with news relating to Irwin Allen productions, fan publications and conventions. Available free to IANN and Giants Log members (just send sufficient postage). If you hear of any events featuring actors from the shows and movies or have any other Irwin Allen related news, please let us know. These sheets are particularly intended for members who don't have access to the Internet, and thus do not get to see the regular news updates on our news pages and blog.
IANN journals News, photos, convention reports, background research on all the shows, plus anything relating to the movies of Irwin Allen. We are also interested in any newspaper and magazine clippings on all the Irwin Allen productions, and their cast and production crews. The most recent editions were produced as a large scale thermal bound book and we will consider writing more if time allows and if there is interest.
Giants Log magazines News, photos, new interviews, background research, memorabilia information, episode reviews. A5 booklet with colour inserts published for 10 years in the 1990s (31 issues).
Time Tunnel Special Large project that we've been planning for a long time in order to share our research including episode reviews, photos, comments on the show, cartoons and a lot of new material. Your input including episode reviews, articles, art, photos etc. would be most welcome. This is a massive project and one that will take us considerable time to complete. Contact us at usual address if you would like to help.
Land of the Giants Season One Special Originally intended to be a 30th anniversary special, this has turned out to be a much bigger project than originally anticipated and will include a lot of research covering the first season of Land of the Giants. We would be interested in your input including reviews of each of the First Season episodes (email us via our contact page).
Poseidon Adventure Special Reviews, photos, new interviews, background information. Would also welcome any magazine articles to help our research.
We are happy to help others promote these productions but do ask that you contact us first for permissions before using information and material from our collections and web site.
No attempt is made to infringe on copyrights held by Twentieth Century Fox, the estate of Irwin Allen or anyone else.
Any views expressed on the IANN web pages are entirely the responsibility of the individual authors.
There are many ways to be a part of the Irwin Allen News Network and you are welcome to submit photos, articles and creative work relating to the Irwin Allen productions, casts and crews for possible inclusion on the IANN site and newsletters. Please use the email button below to send contributions together with your name, location and any information relating to the material you send.
Examples of material you can contribute:
Photographs or scans of Irwin Allen collectibles and collections
Photographs and reports from relevant events
Art and creative work
Feature articles promoting different aspects of the Irwin Allen productions
Trivia, knowledge and observations on any of the Irwin Allen productions
Biographical information, photographs, clippings, articles etc. on Irwin Allen, his performers and production crew
Please also let us know how you would like to be credited, for example, full name, initials, first or last name, or nickname.
It would help if you can send original high-resolution photographs or scans which we will optimise for the Internet. Thank you very much in advance for any material you can provide.
Anyone who contributes to this extensive project is automatically considered part of the Irwin Allen network, helping to keep Irwin Allen's work in the public eye and preserving his productions for future generations. Regular contributors will also be sent our free membership pack if they provide their postal address.
Please note that we are not able to use material from other websites without permission from and credit to the content owners.
The Irwin Allen Show
Teasers and Trailers
Irwin Allen Legacy
Photo Vaults
Watching Irwin
Actor Database
Irwin Allen Gallery


text:
Honor roll: Governor General's Literary Award for Children's Literature – Text
Each of these books has been nominated for a Governor General's Literary Award for Children's Literature – Text. They are ranked by honors received.
This Dark Endeavor: The Apprenticeship of Victor Frankenstein
2014 YRCA-Intermediate nominee
2011 Governor General's finalist
2011 Stoker–Youth nominee
Victor and Konrad are the twin brothers Frankenstein. They are nearly inseparable. Growing up, their lives are filled with imaginary adventures…until the day their adventures turn all too real.
They stumble upon The Dark Library, and secret books of alchemy and ancient remedies are discovered. Father forbids that they ever enter the room again, but this only peaks Victor's curiosity more. When Konrad falls gravely ill, Victor is not be satisfied with the various doctors his parents have called in to help. He is drawn back to The Dark Library where he uncovers an ancient formula for the Elixir of Life. Elizabeth, Henry, and Victor immediately set out to find assistance in a man who was once known for his alchemical works to help create the formula.
Determination and the unthinkable outcome of losing his brother spur Victor on in the quest for the three ingredients that will save Konrads life. After scaling the highest trees in the Strumwald, diving into the deepest lake caves, and sacrificing one's own body part, the three fearless friends risk their lives to save another.
2007 YRCA-Senior nominee
2005 Printz honor
2004 Governor General's nominee
Sailing toward dawn, and I was perched atop the crow's nest, being the ship's eyes. We were two nights out of Sydney, and there'd been no weather to speak of so far. I was keeping watch on a dark stack of nimbus clouds off to the northwest, but we were leaving it far behind, and it looked to be smooth going all the way back to Lionsgate City. Like riding a cloud…
Matt Cruse is a cabin boy on the Aurora, a huge airship that sails hundreds of feet above the ocean, ferrying wealthy passengers from city to city. It is the life Matt's always wanted; convinced he's lighter than air, he imagines himself as buoyant as the hydrium gas that powers his ship. One night he meets a dying balloonist who speaks of beautiful creatures drifting through the skies. It is only after Matt meets the balloonist's granddaughter that he realizes that the man's ravings may, in fact, have been true, and that the creatures are completely real and utterly mysterious. …[more]
Blink & Caution
Tim Wynne-Jones
2011 Horn Book-fiction winner
Boy, did Blink get off on the wrong floor. All he wanted was to steal some breakfast for his empty belly, but instead he stumbled upon a fake kidnapping and a cell phone dropped by an "abducted" CEO, giving Blink a link to his perfect blonde daughter. Now Blink is on the run, but it's OK as long as he s smart enough to stay in the game and keep Captain Panic locked in his hold.
Enter a girl named Caution. As in "Caution: Toxic." As in "Caution: Watch Your Step." She's also on the run, from a skeezy drug-dealer boyfriend and from a nightmare in her past that won't let her go. When she spies Blink at the train station, Caution can see he's an easy mark. But there's something about this naïve, skinny street punk, whom she only wanted to rob, that tugs at her heart, a heart she thought deserved not to feel. …[more]
Seraphina
2013 Horn Book-fiction honor
The kingdom of Goredd is populated by humans and by dragons who fold themselves into a human form. Though they live alongside each other, the peace between them is uneasy.
But when a member of the royal family is murdered, and the crime appears to have been committed by a dragon the peace and treaty between both worlds is seriously threatened…
Into this comes Seraphina, a gifted musician who joins the royal court as the assistant to the court composer. She is soon drawn into the murder investigation and, as she uncovers hints of a sinister plot to destroy the peace in Goredd for good, finds herself caught desperately in the middle of the tension.
For Seraphina hides a secret—the secret behind her musical gift—and if she is found out, her life is in serious danger…
The White Bicycle
Beverley Brenna
The White Bicycle is the third stand-alone title in the Wild Orchid series about a young woman with Asperger's Syndrome. This installment chronicles Taylor Jane's travels to the south of France where she spends a summer babysitting for the Phoenix family. Including flashbacks into Taylor's earliest memories, along with immediate scenes in Lourmarin, a picturesque village in the Luberon Valley, The White Bicycle results in a journey for independence both personal and universal, told in Taylor's honest first-person prose.
Arthur Slade
2004 Edgar-Juvenile nominee
Seven-year-old Matthew disappears one day on a walk into Horshoe, a dust bowl farm town in Depression-era Saskatchewan. Robert, his older brother, is determined to find Matthew, even when the grownups seem to give up. Other children go missing just as a strange man named Abram Harsich appears in town. He dazzles the townspeople, long plagued by the effects of drought, with magic mirrors and the promises of a rainmaking machine. Only Robert seems to be able to resist Abram, and to discover what happened to Matthew.
True Confessions of a Heartless Girl
Martha Brooks
2003 LATimes–Young Adult finalist
In the midst of a heaven-rattling summer storm a young stranger blows into a small prairie town. On the run after taking her latest boyfriend's truck, with a pocketful of stolen money and a heart full of pain, seventeen-year-old Noreen Stall seems to invite trouble. And trouble comes soon enough as Noreen's new mistakes trigger calamities that shake the lives of the residents of Pembina Lake: Lynda Bradley, a divorced mother and owner of a failing café who's given up on life and love; Dolores Harper, the village elder who, in spite of her signature sweatshirt that says MEDDLING FOR JESUS, has lost her enthusiasm for helping others; and Del Armstrong, a middle-aged bachelor farmer who is still paying for the tragic events of his own seventeenth summer.
Set against the vast skies of a prairie landscape, with a rich cast of unforgettable characters and an unlikely heroine as endearing as she is tough, this affecting novel reminds readers that it's never too late for forgiveness—and that sometimes the most unlikely messenger can deliver a small miracle.
The Unlikely Hero of Room 13B
Teresa Toten
2013 Governor General's winner
When Adam meets Robyn at a support group for kids coping with obsessive-compulsive disorder, he is drawn to her almost before he can take a breath. He's determined to protect and defend her—to play Batman to her Robyn—whatever the cost. But when you're fourteen and the everyday problems of dealing with divorced parents and step-siblings are supplemented by the challenges of OCD, it's hard to imagine yourself falling in love. How can you have a "normal" relationship when your life is so fraught with problems? And that's not even to mention the small matter of those threatening letters Adam's mother has started to receive…
Teresa Toten sets some tough and topical issues against the backdrop of a traditional whodunit in this engaging new novel that readers will find hard to put down.
The Reluctant Journal of Henry K. Larsen
Susin Nielsen
Darker than her previous novels, Susin peoples this novel about the ultimate cost of bullying with a cast of fabulous characters, dark humour, and a lovable, difficult protagonist struggling to come to terms with the horrible crime his brother has committed.
From Then to Now: A Short History of the World
Christopher Moore, Andrej Krystoforski
Just 50,000 years ago, our hunter-gatherer ancestors ventured off the African savannah and into the wider world. Now, our technology reaches far out into the cosmos. How did we get to where we are today?
With lively text and colorful illustrations, From Then to Now explains how individual societies struggled to find their own paths, despite war, disease, slavery, natural disasters, and the relentless growth of human knowledge. From Hammurabi to Henry Ford, from Incan couriers to the Internet, from the Taj Mahal to the Eiffel Tower, from Marco Polo to Martin Luther King, from Cleopatra to Catherine the Great, from boiled haggis to fried tarantulas—this is no less than the story of humanity. It's the story of how we grew apart over all those years of migration and division, and how—as we recognize our common heritage and our often mixed ancestry—we can come together.
An index, maps, and notes make this a must-have reference, as well as a delight to read and to discuss. From Then to Now is bound to create a generation of history buffs!
Views: 1,028 • Modified:
4 November 2011, 15:54:25 GMT
Honor roll:Governor General's Literary Award for Children's Literature – Text authors
Honor roll:Children's authors
Honor roll:Children's books
Query years


This versatile Rowlinson Potting store allows you to grow your favourite flowers or vegetables in the greenhouse area and store your tools in another area.
This versatile Rowlinson potting shed has everything you need under one roof, a perfect well lit planting area, thanks to the glazed roof and then a shed area for storing all your garden tools and equipment. This potting store has opening windows providing adequate ventilation, allowing for ideal growing conditions.


text:
The Huxleys
Will Huxley grew up in the suburbs of Perth, Western Australia, and Garrett Huxley was raised on the Gold Coast, Queensland.
Garrett Huxley
Garrett Huxley (b. 1973) was born in Melbourne and raised on the Gold Coast.
Will Huxley
Will Huxley (b. 1982) was born in Bath, England, emigrating with his family at the age of seven to grow up in the suburbs of Perth.
Eric Douglas
Gilbert Eric Douglas (1902-1970), pilot and air force officer, took part in Sir Douglas Mawson's British, Australian and New Zealand Antarctic Research Expedition (BANZARE) of 1929-1931.
Frank Gardiner
Francis Gardiner (Christie) (1830-c. 1903), bushranger, came to New South Wales with his family as a child.
Reg Livermore, Pitt Street, Sydney, 1965 (printed 2020)
Robert McFarlane
Portrait, inkjet print on paper
J.C. Williamson, c. 1913
John Longstaff
Gift of the family of Aimée Viola Horsley, daughter of J.C. Williamson 2009. Donated through the Australian Government's Cultural Gifts Program.
David Combe and the portrait, 1983
Keith Looby
Gift of David Combe 1998
Donated through the Australian Government's Cultural Gifts Program
Eric Douglas, c. 1929-1931
Frank Hurley OBE
Gift of Sally Douglas 2009
Simon Harsent
Finalist interviews
I like to think I'm an artist who uses photography as my medium, but I work commercially as a photographer and it's my full time occupation so I guess that defines me as a photographer or maybe a commercial artist?
A rogue's calling card
Magazine article by Joanna Gilmour, 2008
Joanna Gilmour explores the stories behind the ninteenth-century carte de visites of bushrangers Frank Gardiner and Fred Lowry.
Herra Pahlasari
by Aminudin TH Siregar
Artist essays
At the time of Herra Pahlasari's birth in 1978, her academic parents were living in Canberra.
The news from Washington
Magazine article by Lauretta Morton, 2006
Australia's former Cultural Attache to the USA, Ron Ramsey, describes the mood at the opening week of the revitalised American National Portrait Gallery.
Money and swat
Magazine article by Andrew Sayers AM, 2007
Andrew Sayers discusses the real cost of George Lambert's Self portrait with gladioli 1922.
An Australian story
Magazine article by Hon. Kevin Rudd, 2009
In his speech launching the new National Portrait Gallery building on 3 December 2008, then Prime Minister Kevin Rudd set the Gallery in a national and historical context.


text:
The Wankhede Stadium is a cricket stadium in Mumbai, India. The stadium now has a capacity of 33,108, following renovations for the 2011 Cricket World Cup. Before the upgrade, the capacity was approximately 45,000.

The Wankhede has been host to numerous high-profile cricket matches in the past, most notable being the 2011 Cricket World Cup Final, in which India defeated Sri Lanka by 6 wickets. The stadium witnessed the last match of Sachin Tendulkar's international career. Additionally, it has hosted many other matches in both the 1996 as well as 2011 Cricket World Cup. The stadium is also the host to the match in which Ravi Shastri hit six sixes in an over. As of 19 July 2017, it has hosted 25 Tests, 20 ODIs and 5 T20Is.

Key

Tests

One Day Internationals

Women's Test Matches

Women's One-Day Internationals

Notes

References

External links

Wankhede Stadium
Indian cricket lists

redpajama_set_name: RedPajamaWikipedia


The information contained below is intended to satisfy the requirements of public reporting under section 1.6045B-1(a)(3) & (b)(4) of the Treasury Regulations.
Global X Management Company, LLC and their affiliates, nor SEI and its affiliates provide tax advice. Please note that (i) any discussion of U.S. tax matters contained in this communication cannot be used by you for the purpose of avoiding tax penalties; (ii) you should seek advice based on your particular circumstances from an independent tax advisor.
It is estimated that DIV, SDIV & SPFF have distributed more than their income and net realized gains; therefore, a portion of your distribution is a return of capital.


text:
FILED IN: Health
Germany gives parents option to decline declaration of baby's gender
German parents can now decline to state babies gender on birth certificate. Photo via Dept. of Defense.
Germany has become the first European country to pass a law which allows parents to choose a third option on a baby's birth certificate, designating them as "indeterminate sex."
The law was passed on Friday, in an effort to acknowledge children who are born intersexed or with both female and male genitalia. There has been concern among intersex advocates, who lobbied for the law, that parents of intersexed children were forced to make an emotional decision to surgically dedicate a subjective gender on the child before getting to know them and getting consent from the child.
However, the law does not address several issues that may arise years down the road such as which lavatory an intersex designee is supposed to use or whether an intersexed individual would be required to pick a gender as an adult.
Intersex advocates applauded the new law but argue the law doesn't go far enough. The Association of Intersexed People in Germany would also like to see laws forbidding sex designation surgeries for intersexed people under the age of 16.
According to the Intersex Society of North America, children born with both male and female sex variations ranges between 1 in 1500 to 1 in 2000 births.


text:
Q: Entity Framework 4 changes my table names when I do "Generate Database from model" I'm doing some simple things with EF4 and inheritance before I start the real work. I have tried it many ways and I can't fix this.
I have two tables:

*

*reporting_Items (ItemId,etc)

*reporting_DataItems (ItemId,etc)

I need to keep the prefixes in the database tables because of coding convention.
Then I want to have the maped entities with the names Item and DataItem, and DataItem inherits from Items.
I did Database First and created the tables, but I removed the ItemId key from reporting_DataItems.
Then I generated the model from the database. It created the entities:

*

*reporting_Item

*reporting_DataItems

which I renamed to Item and DataItem respectively. Then I created the inheritance relation between DataItem and Item.
So up to this point I have the entities named like I want and the tables named like I want, plus the inheritance.
The problem is that if now I run Generate Database from Model it deletes all the tables and creates them with this names:

*

*Items

*Items_DataItem

Is there any way to acchieve what I want to do? Thanks in advance

A: You can use either database first (generated model from database or model first (generate database from model). Combining them is not supported because when you use model first it doesn't use information about your original database. It uses its own conventions to name tables and it expects that you are going to use that new table names instead of old ones. Conventions can be changed but it means changing .tt template used to generate SQL.
So if you have existing database and you want to use it, never use Generate Database from model because this tool is not for your scenario.

redpajama_set_name: RedPajamaStackExchange


text:
NewsInsider
New luxury apt. and retail/office development could nudge Silverton from a village to a city
Ag47 is going up at Montgomery and Stewart roads
Posted: 7:00 AM, Jun 12, 2018
By: Roxanna Swift | WCPO contributor

Silverton's new Residences at Ag47 will be made up of 204 luxury apartments in three buildings. Here is an artistic rendering of one such residence.

SILVERTON, Ohio -- One Greater Cincinnati suburb may soon get a second shot at city status.
A development featuring luxury apartments is under construction in the village-turned-city-turned-village known as Silverton.
The apartments, located near the intersection of Montgomery and Stewart roads, are part of a mixed-use project co-developed by Miller-Valentine Group and Jeffrey R. Anderson Real Estate.
"It's transformative for the village," Silverton Village Manager Tom Carroll said.
The development, dubbed Ag47 after the periodic table name for silver, is composed of two construction phases. The first, currently underway, includes 204 apartments housed in three buildings. The second phase will be one 60,000-square-foot building designed for retail and office space.
The site appealed to developers for multiple reasons, including its proximity to I-71 and Kenwood Towne Centre. While the nearby mall offers plenty of retail amenities, there aren't a lot of new multi-family developments or offices in the area.
"There's kind of lack of competition," said Brian Copfer, president of Cincinnati sales and development for Miller-Valentine.
Construction is underway on the first phase of Ag47, near the intersection of Montgomery and Stewart roads in Silverton.
The location of the development is a boon for the village as well.
"It's kind of the gateway into Silverton," said J.R. Anderson, director of development for Jeffrey R. Anderson Real Estate .
The roughly 1-mile municipality was originally established as a village in 1904. It became a city in 1961, when census data from the prior year showed the population exceeded 5,000. The city reverted to a village designation after 2010 census data indicated the population had dropped to 4,788.
Village officials hope to see Silverton achieve city status again, but the potential to simply increase the population is a win.
"The point isn't so much whether you're a city or village," Carroll said. "The point is we will have reversed 50 years of population loss with this development."
The Residences at Ag47 are expected to be complete around spring 2019. Construction on the commercial building will begin once developers have enough space pre-leased.
"That's not so much a date as it is a milestone," Carroll said.
Ag47 is named for the symbol and atomic number of silver. Developers also incorporated an ancient symbol for silver into the development's logo.
Although developers aren't rushing to begin the second phase, they hope to start construction around spring of next year.
"Our goal is to reach the pre-leasing threshold needed by the end of the year," Copfer said.
Representatives for the developers are in discussions with potential business tenants.
"We want to get the right tenant mix for that building," Copfer said.
The plans for the building include 40,000 square feet of class A office space and 20,000 square feet devoted to retail. However, the space is flexible to tenants' needs and could be used exclusively for office space.
Financial services and information technology companies are among the types of businesses that might find the office space appealing. The retail space would be best suited for restaurants and health and beauty services.
That mix would ideally include a unique restaurant option, Anderson said.
"We're trying to get more local," he said.
In addition to offering a population boost, the development holds a promising forecast for expanding the village's tax base.
"Our calculation is that this project will expand our tax base by between 15 and 18 percent on a mere 2 percent of our land area," Carroll said.
Ag47 is one of a few projects underway fueling revitalization in Silverton. Road construction and streetscaping are underway on Montgomery and Stewart roads. Village officials also recently relocated to a new municipal building to make way for a brewery in the former space.
Village officials and developers anticipate the trend to continue.
"I think it (Ag47) will definitely spur other development in that part of the Montgomery corridor, specifically in Silverton," Copfer said.
INSIDER QUICK LINKS
Insider Home
WCPO Home
Insider Support


Having a great product or service is not enough. Companies need to know how brand, sell and market their products and services in order to firstly establish their brand into the market place, raise brand awareness and to set and achieve sales targets. Having a good Sales and Marketing Plan for your business is crucial. It is a statement of how you are going to develop your business and demonstrates HOW your business is going to achieve its sales targets e.g.
At Yvonne Scully & Associates we have developed a structured approach to marketing your products or services and selling them into the market place. Depending on what stage your business is at we can work with you to establish a brand based on the results of your consumer and market research.
With ready established brands, we can work with you to raise brand awareness through Marketing and PR. We can also work on setting sales targets and a step-by-step plan of how you are going to achieve those targets. This could involve traditional and social media training, sales training, work on sales presentations, marketing literature etc.
Yvonne Scully & Associates has worked with several companies, either on a one-to-one basis and/ or through Sales and Marketing training programmes, both in-house and through state agencies to write a Sales and Marketing Plan. We believe that this focuses limited resources on sales & marketing tools that will work best for your business, both in terms of your time and available funding. This is also the best way to ensure that your company sees a good return on investment from your sales and marketing spend.
For Food Companies, Yvonne Scully & Associates can work with you on your packaging and labelling to ensure that your brand commands the best visibility in the market place.
Alternatively, contact Yvonne Scully directly for one-to-one advice on Branding, Sales and Marketing or for workshops for your business.