From: Subject: Housing Market Facts Date: Fri, 27 Feb 2009 13:17:09 -0600 MIME-Version: 1.0 Content-Type: multipart/related; type="text/html"; boundary="----=_NextPart_000_0000_01C998DD.B1C4AA20" X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579 This is a multi-part message in MIME format. ------=_NextPart_000_0000_01C998DD.B1C4AA20 Content-Type: text/html; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.housingmarketfacts.com/ Housing Market Facts

Housing Market Facts

www.housingmarketfacts.com

Brought to you by the National Association = of=20 Realtors=AE

Learn about the benefits of owning a home. NAR is the leading = advocate for=20 private property rights, homeownership and housing issues.

THE NATIONAL ASSOCIATION OF REALTORS=AE WANTS YOU TO = KNOW

Housing is a good long-term investment

Over the past 30 years, home values have risen more than 6 percent=20 annually.
*NAR existing-home sales historic series

On average, the value of a home nearly doubles every 10 = years.
*NAR=20 existing-home sales historic series

Sixty percent of the average homeowner's wealth comes from their = home's=20 equity.
*Housing and Urban Development "Homeownership and its = Benefits; Urban=20 Policy Brief No.2 - 1995"

The average homeowner=92s net worth is $171,000 =96 that=92s nearly = 46 times that=20 of a renter=92s, who has an average net worth of $4,800.
*Federal = Reserve=20 Survey of Consumer Finances

Homeowners benefit from the power of leverage. At an annual = appreciation rate=20 of 5 percent, a 10 percent down payment on a home will return 94 percent = after 3=20 years. After 5 years, the rate of return increases to 225 percent and = after 10=20 years, 623 percent. *Harvard University's Joint Center for Housing=20 Studies

REALTORS=AE add value

Every market=92s different; talk to a REALTOR=AE for insight into = your own real=20 estate market. In fact, two-thirds of all metropolitan areas have seen=20 year-over-year increases in median existing single-family home prices, = including=20 six areas with double-digit gains.
*NAR=92s 2007 Q3 metro price = report

REALTORS=AE have the marketing, negotiating, and industry expertise = and=20 experience necessary to help home sellers protect their investment and = help home=20 buyers build theirs.

A REALTOR=AE can help sell your home faster and for more money than = you might=20 yourself.
*2007 NAR Profile of Home Buyers and Sellers)

REALTORS=AE visit hundreds, if not thousands, of homes with their = buyer clients=20 each year, and have a unique understanding of what home buyers value in = their=20 local markets.

REALTORS=AE are strong advocates for housing issues and = homeownership. Their=20 support for the mortgage interest deduction and other federal policies = helps=20 keep housing more affordable and makes housing a great investment.

REALTORS=AE commit to a strict Code of Ethics, which helps protect = consumers in=20 the real estate transaction.

Financing is available

For buyers who qualify for conventional financing, mortgages are = available at=20 near historically low rates.

FHA programs are a viable alternative for many first-time buyers. FHA = market=20 share for home purchases is expected to triple over the next three = years, from=20 an estimated 4 percent in 2007 to an estimated 12 percent in 2009.

You need to upgrade your Flash Player to view

housingmarketfacts.com

click=20 here to download the latest version of Flash

------=_NextPart_000_0000_01C998DD.B1C4AA20 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.housingmarketfacts.com/js/swfobject.js /**=0A= * SWFObject v1.5: Flash Player detection and embed - = http://blog.deconcept.com/swfobject/=0A= *=0A= * SWFObject is (c) 2007 Geoff Stearns and is released under the MIT = License:=0A= * http://www.opensource.org/licenses/mit-license.php=0A= *=0A= */=0A= if(typeof deconcept=3D=3D"undefined"){var deconcept=3Dnew = Object();}if(typeof = deconcept.util=3D=3D"undefined"){deconcept.util=3Dnew = Object();}if(typeof = deconcept.SWFObjectUtil=3D=3D"undefined"){deconcept.SWFObjectUtil=3Dnew = Object();}deconcept.SWFObject=3Dfunction(_1,id,w,h,_5,c,_7,_8,_9,_a){if(!= document.getElementById){return;}this.DETECT_KEY=3D_a?_a:"detectflash";th= is.skipDetect=3Ddeconcept.util.getRequestParameter(this.DETECT_KEY);this.= params=3Dnew Object();this.variables=3Dnew = Object();this.attributes=3Dnew = Array();if(_1){this.setAttribute("swf",_1);}if(id){this.setAttribute("id"= ,id);}if(w){this.setAttribute("width",w);}if(h){this.setAttribute("height= ",h);}if(_5){this.setAttribute("version",new = deconcept.PlayerVersion(_5.toString().split(".")));}this.installedVer=3Dd= econcept.SWFObjectUtil.getPlayerVersion();if(!window.opera&&document.all&= &this.installedVer.major>7){deconcept.SWFObject.doPrepUnload=3Dtrue;}if(c= ){this.addParam("bgcolor",c);}var = q=3D_7?_7:"high";this.addParam("quality",q);this.setAttribute("useExpress= Install",false);this.setAttribute("doExpressInstall",false);var = _c=3D(_8)?_8:window.location;this.setAttribute("xiRedirectUrl",_c);this.s= etAttribute("redirectUrl","");if(_9){this.setAttribute("redirectUrl",_9);= }};deconcept.SWFObject.prototype=3D{useExpressInstall:function(_d){this.x= iSWFPath=3D!_d?"expressinstall.swf":_d;this.setAttribute("useExpressInsta= ll",true);},setAttribute:function(_e,_f){this.attributes[_e]=3D_f;},getAt= tribute:function(_10){return = this.attributes[_10];},addParam:function(_11,_12){this.params[_11]=3D_12;= },getParams:function(){return = this.params;},addVariable:function(_13,_14){this.variables[_13]=3D_14;},g= etVariable:function(_15){return = this.variables[_15];},getVariables:function(){return = this.variables;},getVariablePairs:function(){var _16=3Dnew Array();var = key;var _18=3Dthis.getVariables();for(key in = _18){_16[_16.length]=3Dkey+"=3D"+_18[key];}return = _16;},getSWFHTML:function(){var = _19=3D"";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.l= ength){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplay= erType","PlugIn");this.setAttribute("swf",this.xiSWFPath);}_19=3D"0){_19+=3D"flashvar= s=3D\""+_1c+"\"";}_19+=3D"/>";}else{if(this.getAttribute("doExpressInstal= l")){this.addVariable("MMplayerType","ActiveX");this.setAttribute("swf",t= his.xiSWFPath);}_19=3D"";_19+=3D"";var = _1d=3Dthis.getParams();for(var key in _1d){_19+=3D"";}var = _1f=3Dthis.getVariablePairs().join("&");if(_1f.length>0){_19+=3D"";}_19+=3D"";}return = _19;},write:function(_20){if(this.getAttribute("useExpressInstall")){var = _21=3Dnew = deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(_21= )&&!this.installedVer.versionIsValid(this.getAttribute("version"))){this.= setAttribute("doExpressInstall",true);this.addVariable("MMredirectURL",es= cape(this.getAttribute("xiRedirectUrl")));document.title=3Ddocument.title= .slice(0,47)+" - Flash Player = Installation";this.addVariable("MMdoctitle",document.title);}}if(this.ski= pDetect||this.getAttribute("doExpressInstall")||this.installedVer.version= IsValid(this.getAttribute("version"))){var n=3D(typeof = _20=3D=3D"string")?document.getElementById(_20):_20;n.innerHTML=3Dthis.ge= tSWFHTML();return = true;}else{if(this.getAttribute("redirectUrl")!=3D""){document.location.r= eplace(this.getAttribute("redirectUrl"));}}return = false;}};deconcept.SWFObjectUtil.getPlayerVersion=3Dfunction(){var = _23=3Dnew = deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeType= s.length){var x=3Dnavigator.plugins["Shockwave = Flash"];if(x&&x.description){_23=3Dnew = deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replac= e(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{if(navigator.userAgent&&nav= igator.userAgent.indexOf("Windows CE")>=3D0){var axo=3D1;var = _26=3D3;while(axo){try{_26++;axo=3Dnew = ActiveXObject("ShockwaveFlash.ShockwaveFlash."+_26);_23=3Dnew = deconcept.PlayerVersion([_26,0,0]);}catch(e){axo=3Dnull;}}}else{try{var = axo=3Dnew = ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{var = axo=3Dnew ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");_23=3Dnew = deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess=3D"always";}catch= (e){if(_23.major=3D=3D6){return _23;}}try{axo=3Dnew = ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(e){}}if(axo!=3Dnull= ){_23=3Dnew deconcept.PlayerVersion(axo.GetVariable("$version").split(" = ")[1].split(","));}}}return = _23;};deconcept.PlayerVersion=3Dfunction(_29){this.major=3D_29[0]!=3Dnull= ?parseInt(_29[0]):0;this.minor=3D_29[1]!=3Dnull?parseInt(_29[1]):0;this.r= ev=3D_29[2]!=3Dnull?parseInt(_29[2]):0;};deconcept.PlayerVersion.prototyp= e.versionIsValid=3Dfunction(fv){if(this.majorfv.major){return = true;}if(this.minorfv.minor){return true;}if(this.rev=3D0;i--){_2f[i].style.display=3D"none";for(var x in = _2f[i]){if(typeof = _2f[i][x]=3D=3D"function"){_2f[i][x]=3Dfunction(){};}}}};if(deconcept.SWF= Object.doPrepUnload){if(!deconcept.unloadSet){deconcept.SWFObjectUtil.pre= pUnload=3Dfunction(){__flash_unloadHandler=3Dfunction(){};__flash_savedUn= loadHandler=3Dfunction(){};window.attachEvent("onunload",deconcept.SWFObj= ectUtil.cleanupSWFs);};window.attachEvent("onbeforeunload",deconcept.SWFO= bjectUtil.prepUnload);deconcept.unloadSet=3Dtrue;}}if(!document.getElemen= tById&&document.all){document.getElementById=3Dfunction(id){return = document.all[id];};}var = getQueryParamValue=3Ddeconcept.util.getRequestParameter;var = FlashObject=3Ddeconcept.SWFObject;var SWFObject=3Ddeconcept.SWFObject; ------=_NextPart_000_0000_01C998DD.B1C4AA20 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.housingmarketfacts.com/js/swfforcesize.js /**=0A= * SWFForceSize v1.0: Flash container size limiter for SWFObject - = http://blog.pixelbreaker.com/=0A= *=0A= * SWFForceSize is (c) 2006 Gabriel Bucknall and is released under the = MIT License:=0A= * http://www.opensource.org/licenses/mit-license.php=0A= *=0A= * Dependencies: =0A= * SWFObject v2.0 - (c) 2006 Geoff Stearns.=0A= * http://blog.deconcept.com/swfobject/=0A= */=0A= function SWFForceSize( swfObject, minWidth, minHeight )=0A= {=0A= this.div =3D swfObject.getAttribute('id');=0A= this.minW =3D minWidth;=0A= this.minH =3D minHeight;=0A= =0A= var o =3D this;=0A= this.addWindowEvent( 'onload', this, this.onLoadDiv );=0A= this.addWindowEvent( 'onresize', this, this.onResizeDiv );=0A= }=0A= =0A= SWFForceSize.prototype =3D {=0A= addWindowEvent: function( eventName, scope, func )=0A= {=0A= var oldEvent =3D window[ eventName ];=0A= if (typeof window[ eventName ] !=3D 'function') window[ eventName ] = =3D function(){ func.call( scope ); };=0A= else=0A= {=0A= window[ eventName ] =3D function()=0A= { =0A= if( oldEvent ) oldEvent();=0A= func.call( scope );=0A= }=0A= }=0A= =0A= },=0A= =0A= getWinSize: function()=0A= {=0A= var winH, winW;=0A= if (parseInt(navigator.appVersion)>3) {=0A= if ( window.innerWidth )=0A= {=0A= winW =3D window.innerWidth;=0A= winH =3D window.innerHeight;=0A= } else if ( window.document.body.clientWidth )=0A= {=0A= winW =3D window.document.body.clientWidth;=0A= winH =3D window.document.body.clientHeight;=0A= } else if ( document.body.offsetWidth )=0A= {=0A= winW =3D document.body.offsetWidth;=0A= winH =3D document.body.offsetHeight;=0A= }=0A= }=0A= return { height: winH, width: winW };=0A= },=0A= =0A= onLoadDiv: function()=0A= {=0A= document.getElementById( this.div ).style.width =3D "100%";=0A= document.getElementById( this.div ).style.height =3D "100%";=0A= this.onResizeDiv();=0A= },=0A= =0A= onResizeDiv: function()=0A= {=0A= var winSize =3D this.getWinSize();=0A= var w =3D winSize.width < this.minW? this.minW+"px" : "100%";=0A= var h =3D winSize.height < this.minH? this.minH+"px" : "100%";=0A= =0A= /*=0A= for IE on PC, turn off the disabled scrollbar =0A= on the right when there's no content to scroll=0A= */=0A= if( document.all )=0A= {=0A= if ( (document.body.scroll =3D ( w!=3D"100%" || h!=3D"100%" )? "auto" = : "no") =3D=3D "auto")=0A= {=0A= document.body.style.overflow =3D "auto";=0A= }=0A= }=0A= =0A= document.getElementById( this.div ).style.width =3D w;=0A= document.getElementById( this.div ).style.height =3D h;=0A= }=0A= } ------=_NextPart_000_0000_01C998DD.B1C4AA20 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.housingmarketfacts.com/js/swfaddress.js /**=0A= * SWFAddress 2.0: Deep linking for Flash and Ajax - = http://www.asual.com/swfaddress/=0A= *=0A= * SWFAddress is (c) 2006-2007 Rostislav Hristov and is released under = the MIT License:=0A= * http://www.opensource.org/licenses/mit-license.php=0A= *=0A= */=0A= =0A= if (typeof com =3D=3D "undefined") var com =3D {};=0A= if (typeof com.asual =3D=3D "undefined") com.asual =3D {};=0A= if (typeof com.asual.util =3D=3D "undefined") com.asual.util =3D {};=0A= =0A= /**=0A= * @class Utility class that provides detailed browser information.=0A= * @static=0A= * @ignore=0A= */=0A= com.asual.util.Browser =3D new function() {=0A= =0A= var _supported =3D false;=0A= var _version =3D -1;=0A= =0A= var _agent =3D navigator.userAgent;=0A= var _ie =3D false;=0A= var _camino =3D false;=0A= var _safari =3D false;=0A= var _opera =3D false;=0A= var _mozilla =3D false;=0A= =0A= if (/MSIE/.test(_agent)) {=0A= _ie =3D true;=0A= _version =3D parseFloat(_agent.substring(_agent.indexOf('MSIE') = + 4));=0A= _supported =3D _version >=3D 6;=0A= } else if (/AppleWebKit/.test(_agent)) {=0A= _safari =3D true;=0A= _version =3D = parseFloat(_agent.substring(_agent.indexOf('Safari') + 7));=0A= _supported =3D _version >=3D 312;=0A= } else if (/Opera/.test(_agent)) {=0A= _opera =3D true;=0A= _version =3D parseFloat(navigator.appVersion);=0A= _supported =3D _version >=3D 9.02;=0A= } else if (/Camino/.test(_agent)) {=0A= _camino =3D true;=0A= _version =3D = parseFloat(_agent.substring(_agent.indexOf('Camino') + 7));=0A= _supported =3D _version >=3D 1;=0A= } else if (/Firefox/.test(_agent)) {=0A= _mozilla =3D true;=0A= _version =3D = parseFloat(_agent.substring(_agent.indexOf('Firefox') + 8));=0A= _supported =3D _version >=3D 1;=0A= } else if (/Netscape/.test(_agent)) {=0A= _mozilla =3D true;=0A= _version =3D = parseFloat(_agent.substring(_agent.indexOf('Netscape') + 9));=0A= _supported =3D _version >=3D 8;=0A= } else if (/Mozilla/.test(_agent) && /rv:/.test(_agent)) {=0A= _mozilla =3D true;=0A= _version =3D parseFloat(_agent.substring(_agent.indexOf('rv:') + = 3));=0A= _supported =3D _version >=3D 1.8;=0A= }=0A= =0A= /**=0A= * Detects if the browser is supported.=0A= * @return {Boolean}=0A= * @static=0A= */=0A= this.isSupported =3D function() {=0A= return _supported;=0A= }=0A= =0A= /**=0A= * Detects the version of the browser.=0A= * @return {Number}=0A= * @static=0A= */=0A= this.getVersion =3D function() {=0A= return _version;=0A= }=0A= =0A= /**=0A= * Detects if the browser is Internet Explorer.=0A= * @return {Boolean}=0A= * @static=0A= */=0A= this.isIE =3D function() {=0A= return _ie;=0A= }=0A= =0A= /**=0A= * Detects if the browser is Safari.=0A= * @return {Boolean}=0A= * @static=0A= */=0A= this.isSafari =3D function() {=0A= return _safari;=0A= }=0A= =0A= /**=0A= * Detects if the browser is Opera.=0A= * @return {Boolean}=0A= * @static=0A= */=0A= this.isOpera =3D function() {=0A= return _opera;=0A= }=0A= =0A= /**=0A= * Detects if the browser is Camino.=0A= * @return {Boolean}=0A= * @static=0A= */=0A= this.isCamino =3D function() {=0A= return _camino;=0A= }=0A= =0A= /**=0A= * Detects if the browser is Mozilla.=0A= * @return {Boolean}=0A= * @static=0A= */=0A= this.isMozilla =3D function() {=0A= return _mozilla;=0A= }=0A= }=0A= =0A= /**=0A= * @class Utility class that provides event helpers.=0A= * @static=0A= * @ignore=0A= */=0A= com.asual.util.Events =3D new function() {=0A= =0A= var _cache =3D [];=0A= var _browser =3D com.asual.util.Browser;=0A= var _dcl =3D 'DOMContentLoaded';=0A= =0A= if (_browser.isIE() || _browser.isSafari()) {=0A= (function(){=0A= try {=0A= if (_browser.isIE() || = !/loaded|complete/.test(document.readyState))=0A= document.documentElement.doScroll('left');=0A= } catch(e) {=0A= return setTimeout(arguments.callee, 0);=0A= }=0A= for (var i =3D 0, e; e =3D _cache[i]; i++) {=0A= if (e.t =3D=3D _dcl) e.l.call(null);=0A= }=0A= })();=0A= }=0A= =0A= /**=0A= * Adds an event listener to an object.=0A= * @param {Object} obj The object that provides events.=0A= * @param {String} type The type of the event.=0A= * @param {Function} listener The event listener function.=0A= * @return {void}=0A= * @static=0A= */=0A= this.addListener =3D function(obj, type, listener) {=0A= _cache.push({o: obj, t: type, l: listener});=0A= if (type =3D=3D _dcl && (_browser.isIE() || _browser.isSafari()))=0A= return;=0A= if (obj.addEventListener){=0A= obj.addEventListener(type, listener, false);=0A= } else if (obj.attachEvent){=0A= obj.attachEvent('on' + type, listener);=0A= }=0A= }=0A= =0A= /**=0A= * Removes an event listener from an object.=0A= * @param {Object} obj The object that provides events.=0A= * @param {String} type The type of the event.=0A= * @param {Function} listener The event listener function.=0A= * @return {void} =0A= * @static=0A= */=0A= this.removeListener =3D function(obj, type, listener) {=0A= for (var i =3D 0, e; e =3D _cache[i]; i++) {=0A= if (e.o =3D=3D obj && e.t =3D=3D type && e.l =3D=3D = listener) {=0A= _cache.splice(i, 1);=0A= break;=0A= }=0A= }=0A= if (type =3D=3D _dcl && (_browser.isIE() || _browser.isSafari()))=0A= return;=0A= if (obj.removeEventListener){=0A= obj.removeEventListener(type, listener, false);=0A= } else if (obj.detachEvent){=0A= obj.detachEvent('on' + type, listener);=0A= }=0A= }=0A= =0A= var _unload =3D function() {=0A= for (var i =3D 0, evt; evt =3D _cache[i]; i++) {=0A= if (evt.t !=3D _dcl)=0A= com.asual.util.Events.removeListener(evt.o, evt.t, = evt.l);=0A= }=0A= }=0A= =0A= this.addListener(window, 'unload', _unload);=0A= }=0A= =0A= /**=0A= * Creates a new SWFAddress event.=0A= * @class Event class for SWFAddress.=0A= * @param {String} type Type of the event.=0A= */=0A= SWFAddressEvent =3D function(type) {=0A= =0A= /**=0A= * String representation of this object.=0A= * @ignore=0A= */=0A= this.toString =3D function() {=0A= return '[object SWFAddressEvent]';=0A= }=0A= =0A= /**=0A= * The type of this event.=0A= * @type String=0A= */=0A= this.type =3D type;=0A= =0A= /**=0A= * The target of this event.=0A= * @type Function=0A= */=0A= this.target =3D [SWFAddress][0];=0A= =0A= /**=0A= * The value of this event.=0A= * @type String=0A= */=0A= this.value =3D SWFAddress.getValue();=0A= =0A= /**=0A= * The path of this event.=0A= * @type String=0A= */=0A= this.path =3D SWFAddress.getPath();=0A= =0A= /**=0A= * The parameters of this event.=0A= * @type Object=0A= */=0A= this.parameters =3D {};=0A= =0A= var _names =3D SWFAddress.getParameterNames();=0A= for (var i =3D 0, n; n =3D _names[i]; i++) {=0A= this.parameters[n] =3D SWFAddress.getParameter(n);=0A= }=0A= }=0A= =0A= /**=0A= * Init event.=0A= * @type String=0A= * @memberOf SWFAddressEvent=0A= * @static=0A= */=0A= SWFAddressEvent.INIT =3D 'init';=0A= =0A= /**=0A= * Change event.=0A= * @type String=0A= * @memberOf SWFAddressEvent=0A= * @static =0A= */=0A= SWFAddressEvent.CHANGE =3D 'change';=0A= =0A= /**=0A= * @class The SWFAddress class can be configured with query parameters = using the following format:=0A= * = swfaddress.js?html=3Dfalse&history=3D1&tracker=3DpageTracker._trackPagevi= ew&strict=3D1.
=0A= * The list of supported options include:

=0A= * history:Boolean - Enables or disables the creation of = history entries.
=0A= * html:Boolean - Enables or disables the usage of = swfaddress.html.
=0A= * strict:Boolean - Enables or disables the strict mode.
=0A= * tracker:String - Sets a function for page view = tracking.
=0A= * @static =0A= */ =0A= SWFAddress =3D new function() {=0A= =0A= var _browser =3D com.asual.util.Browser;=0A= var _supported =3D _browser.isSupported();=0A= =0A= var _d =3D top.document;=0A= var _h =3D top.history;=0A= var _l =3D top.location;=0A= =0A= var _iframe, _form, _url, _js =3D 'swfaddress.js';=0A= var _title =3D _d.title;=0A= var _length =3D _h.length;=0A= var _silent =3D false;=0A= var _listeners =3D {};=0A= var _stack =3D [];=0A= var _ids =3D [];=0A= var _opts =3D [];=0A= _opts['history'] =3D true;=0A= _opts['html'] =3D false;=0A= _opts['strict'] =3D true;=0A= _opts['tracker'] =3D 'urchinTracker';=0A= =0A= if ((!_supported && _l.href.indexOf('#') !=3D -1) || =0A= (_browser.isSafari() && _browser.getVersion() < 412 && = _l.href.indexOf('#') !=3D -1 && _l.search !=3D '')){=0A= _d.open();=0A= _d.write('');=0A= _d.close();=0A= }=0A= =0A= var _getHash =3D function() {=0A= var index =3D _l.href.indexOf('#');=0A= if (index !=3D -1) {=0A= return _l.href.substring(index).replace(/^#/g, '');=0A= }=0A= return '';=0A= }=0A= =0A= var _value =3D _getHash();=0A= =0A= var _strictCheck =3D function(value, force) {=0A= if (_opts['strict']) {=0A= if (force) {=0A= if (value.substr(0, 1) !=3D '/') value =3D '/' + value;=0A= value =3D value.replace(/^([^\?.]*[^\/])(\?|$)/, = '$1/$2').replace(/\/\//, '/');=0A= } else {=0A= if (value =3D=3D '') value =3D '/';=0A= }=0A= }=0A= return value;=0A= }=0A= =0A= var _titleCheck =3D function() {=0A= if (_browser.isIE() && _d.title !=3D _title) {=0A= SWFAddress.setTitle(_title);=0A= }=0A= }=0A= =0A= var _listen =3D function() {=0A= if (!_silent) {=0A= if (_browser.isIE()) {=0A= if (_value !=3D _getHash()) {=0A= if (_browser.getVersion() < 7) {=0A= _l.reload();=0A= } else {=0A= SWFAddress.setValue(_getHash());=0A= }=0A= }=0A= } else if (_browser.isSafari()) {=0A= if (_length !=3D _h.length) {=0A= _length =3D _h.length;=0A= if (typeof _stack[_length - 1] !=3D 'undefined') {=0A= _value =3D _stack[_length - 1];=0A= }=0A= _update();=0A= }=0A= } else if (_value !=3D _getHash()) {=0A= _value =3D _getHash();=0A= _update();=0A= }=0A= _titleCheck();=0A= }=0A= }=0A= =0A= var _jsDispatch =3D function(type) {=0A= if (SWFAddress.hasEventListener(type)) {=0A= SWFAddress.dispatchEvent(new SWFAddressEvent(type));=0A= }=0A= type =3D type.substr(0, 1).toUpperCase() + type.substring(1);=0A= if(typeof SWFAddress['on' + type] =3D=3D 'function') {=0A= SWFAddress['on' + type]();=0A= }=0A= }=0A= =0A= var _jsInit =3D function() {=0A= _jsDispatch('init');=0A= }=0A= =0A= var _jsChange =3D function() {=0A= _jsDispatch('change');=0A= }=0A= =0A= var _swfChange =3D function() {=0A= for (var i =3D 0, id; id =3D _ids[i]; i++) {=0A= var obj =3D document.getElementById(id);=0A= if (obj) {=0A= if (obj.parentNode && typeof obj.parentNode.so !=3D = 'undefined') {=0A= obj.parentNode.so.call('setSWFAddressValue', = SWFAddress.getValue());=0A= } else {=0A= obj =3D (obj && typeof obj.setSWFAddressValue !=3D = 'undefined') ? =0A= obj : ((obj.getElementsByTagName('object')[0] && =0A= typeof = obj.getElementsByTagName('object')[0].setSWFAddressValue !=3D = 'undefined') ? =0A= obj.getElementsByTagName('object')[0] : = ((obj.getElementsByTagName('embed')[0] && =0A= typeof = obj.getElementsByTagName('embed')[0].setSWFAddressValue !=3D = 'undefined') ? =0A= obj.getElementsByTagName('embed')[0] : null));=0A= if (obj) {=0A= obj.setSWFAddressValue(SWFAddress.getValue());=0A= }=0A= }=0A= }=0A= }=0A= }=0A= =0A= var _update =3D function() {=0A= _swfChange();=0A= _jsChange();=0A= }=0A= =0A= var _track =3D function() {=0A= if (typeof _opts['tracker'] !=3D 'undefined' && eval('typeof ' + = _opts['tracker'] + ' !=3D "undefined"')){=0A= var fn =3D eval(_opts['tracker']);=0A= if (typeof fn =3D=3D 'function') {=0A= fn((_l.pathname + SWFAddress.getValue()).replace(/\/\//, = '/').replace(/^\/$/, ''));=0A= }=0A= }=0A= }=0A= =0A= var _htmlWrite =3D function() {=0A= var doc =3D _iframe.contentWindow.document;=0A= doc.open();=0A= doc.write('');=0A= doc.close();=0A= }=0A= =0A= var _htmlLoad =3D function() {=0A= if (_opts['html']) {=0A= var src =3D _iframe.contentWindow.location.href;=0A= _value =3D (src.indexOf('?') > -1) ? =0A= src.substring(src.indexOf('?') + 1) : '';=0A= } else {=0A= _value =3D (typeof _iframe.contentWindow.swfaddress !=3D = 'undefined') ? =0A= _iframe.contentWindow.swfaddress : '';=0A= }=0A= if (_value !=3D _getHash()) {=0A= _update();=0A= _l.hash =3D _value;=0A= }=0A= }=0A= =0A= var _load =3D function() {=0A= =0A= var attr =3D 'id=3D"swfaddress" = style=3D"position:absolute;top:-9999px;"';=0A= if (_browser.isIE()) {=0A= = document.body.appendChild(document.createElement('div')).innerHTML =3D = '';=0A= _iframe =3D document.getElementById('swfaddress');=0A= setTimeout(function() {=0A= if (!_opts['html'] && typeof = _iframe.contentWindow.swfaddress =3D=3D 'undefined') _htmlWrite();=0A= com.asual.util.Events.addListener(_iframe, 'load', = _htmlLoad);=0A= }, 10);=0A= } else if (_browser.isSafari()) {=0A= if (_browser.getVersion() < 412) {=0A= document.body.innerHTML +=3D '
';=0A= _form =3D document.getElementById('swfaddress');=0A= }=0A= if (typeof _l.swfaddress =3D=3D 'undefined') _l.swfaddress = =3D {};=0A= if (typeof _l.swfaddress[_l.pathname] !=3D 'undefined') = _stack =3D _l.swfaddress[_l.pathname].split(',');=0A= } else if (_browser.isOpera() && _ids.length =3D=3D 0) {=0A= document.body.innerHTML +=3D '';=0A= }=0A= setTimeout(_jsInit, 1);=0A= setTimeout(_jsChange, 2);=0A= setTimeout(_track, 10);=0A= setInterval(_listen, 50);=0A= }=0A= =0A= /**=0A= * Init event.=0A= * @type Function=0A= * @event=0A= * @static=0A= */=0A= this.onInit =3D null;=0A= =0A= /**=0A= * Change event.=0A= * @type Function=0A= * @event=0A= * @static=0A= */=0A= this.onChange =3D null;=0A= =0A= /**=0A= * String representation of this class.=0A= * @ignore=0A= */=0A= this.toString =3D function() {=0A= return '[class SWFAddress]';=0A= }=0A= =0A= /**=0A= * Loads the previous URL in the history list.=0A= * @return {void}=0A= * @static=0A= */=0A= this.back =3D function() {=0A= _h.back();=0A= }=0A= =0A= /**=0A= * Loads the next URL in the history list.=0A= * @return {void}=0A= * @static=0A= */=0A= this.forward =3D function() {=0A= _h.forward();=0A= }=0A= =0A= /**=0A= * Loads a URL from the history list.=0A= * @param {Number} delta An integer representing a relative position = in the history list.=0A= * @return {void}=0A= * @static=0A= */=0A= this.go =3D function(delta) {=0A= _h.go(delta);=0A= }=0A= =0A= /**=0A= * Opens a new URL in the browser. =0A= * @param {String} url The resource to be opened.=0A= * @param {String} target Target window.=0A= * @return {void}=0A= * @static=0A= */=0A= this.href =3D function(url, target) {=0A= target =3D typeof target !=3D 'undefined' ? target : '_self'; = =0A= switch(target) {=0A= case '_self': =0A= self.location.href =3D url; =0A= break;=0A= case '_top': =0A= _l.href =3D url; =0A= break; =0A= case '_blank':=0A= window.open(url); =0A= break; =0A= default:=0A= top.frames[target].location.href =3D url; =0A= break; =0A= }=0A= }=0A= =0A= /**=0A= * Opens a browser popup window. =0A= * @param {String} url Resource location.=0A= * @param {String} name Name of the popup window.=0A= * @param {String} options Options which get evaluted and passed to = the window.open() method.=0A= * @param {String} handler Optional JavaScript code for popup = handling. =0A= * @return {void}=0A= * @static=0A= */=0A= this.popup =3D function(url, name, options, handler) {=0A= var popup =3D window.open(url, name, eval(options));=0A= eval(handler);=0A= }=0A= =0A= /**=0A= * Registers an event listener..=0A= * @param {String} type Event type.=0A= * @param {Function} listener Event listener.=0A= * @return {void}=0A= * @static=0A= */=0A= this.addEventListener =3D function (type, listener) {=0A= if (typeof _listeners[type] =3D=3D 'undefined') {=0A= _listeners[type] =3D [];=0A= }=0A= _listeners[type].push(listener);=0A= }=0A= =0A= /**=0A= * Removes an event listener.=0A= * @param {String} type Event type.=0A= * @param {Function} listener Event listener.=0A= * @return {void}=0A= * @static =0A= */=0A= this.removeEventListener =3D function (type, listener) {=0A= if (typeof _listeners[type] !=3D 'undefined') {=0A= for (var i =3D 0, l; l =3D _listeners[type][i]; i++) {=0A= if (l =3D=3D listener) break;=0A= }=0A= _listeners[type].splice(i, 1);=0A= }=0A= }=0A= =0A= /**=0A= * Dispatches an event to all the registered listeners. =0A= * @param {Object} event Event object.=0A= * @return {Boolean}=0A= * @static=0A= */=0A= this.dispatchEvent =3D function (event) {=0A= if (typeof _listeners[event.type] !=3D 'undefined' && = _listeners[event.type].length) {=0A= event.target =3D this;=0A= for (var i =3D 0, l; l =3D _listeners[event.type][i]; i++) {=0A= l(event);=0A= }=0A= return true; =0A= }=0A= return false;=0A= }=0A= =0A= /**=0A= * Checks the existance of any listeners registered for a specific = type of event. =0A= * @param {String} event Event type.=0A= * @return {Boolean}=0A= * @static=0A= */=0A= this.hasEventListener =3D function (type) {=0A= return (typeof _listeners[type] !=3D 'undefined' && = _listeners[type].length > 0);=0A= }=0A= =0A= /**=0A= * Provides the state of the strict mode setting. =0A= * @return {Boolean}=0A= * @static=0A= */=0A= this.getStrict =3D function() {=0A= return _opts['strict'];=0A= }=0A= =0A= /**=0A= * Enables or disables the strict mode.=0A= * @param {Boolean} strict Strict mode state.=0A= * @return {void}=0A= * @static=0A= */=0A= this.setStrict =3D function(strict) {=0A= _opts['strict'] =3D enabled;=0A= }=0A= =0A= /**=0A= * Provides the state of the history setting. =0A= * @return {Boolean}=0A= * @static=0A= */=0A= this.getHistory =3D function() {=0A= return _opts['history'];=0A= }=0A= =0A= /**=0A= * Enables or disables the creation of history entries.=0A= * @param {Boolean} history History state.=0A= * @return {void}=0A= * @static=0A= */=0A= this.setHistory =3D function(history) {=0A= _opts['history'] =3D history;=0A= }=0A= =0A= /**=0A= * Provides the tracker function.=0A= * @return {String}=0A= * @static=0A= */=0A= this.getTracker =3D function() {=0A= return _opts['tracker'];=0A= }=0A= =0A= /**=0A= * Sets a function for page view tracking. The default value is = 'urchinTracker'.=0A= * @param {String} tracker Tracker function.=0A= * @return {void}=0A= * @static=0A= */=0A= this.setTracker =3D function(tracker) {=0A= _opts['tracker'] =3D tracker;=0A= }=0A= =0A= /**=0A= * Provides a list of all the Flash objects registered. =0A= * @return {Array}=0A= * @static=0A= */=0A= this.getIds =3D function() {=0A= return _ids;=0A= }=0A= =0A= /**=0A= * Provides the id the first and probably the only Flash object = registered. =0A= * @return {String}=0A= * @static=0A= */=0A= this.getId =3D function(index) {=0A= return _ids[0];=0A= }=0A= =0A= /**=0A= * Sets the id of a single Flash object which will be registered for = deep linking.=0A= * @param {String} id ID of the object.=0A= * @return {void}=0A= * @static=0A= */=0A= this.setId =3D function(id) {=0A= _ids[0] =3D id;=0A= }=0A= =0A= /**=0A= * Adds an id to the list of Flash object registered for deep = linking.=0A= * @param {String} id ID of the object.=0A= * @return {void}=0A= * @static=0A= */=0A= this.addId =3D function(id) {=0A= this.removeId(id);=0A= _ids.push(id);=0A= }=0A= =0A= /**=0A= * Removes an id from the list of Flash object registered for deep = linking.=0A= * @param {String} id ID of the object.=0A= * @return {void}=0A= * @static=0A= */=0A= this.removeId =3D function(id) {=0A= for (var i =3D 0, swfid; swfid =3D _ids[i]; i++) {=0A= if (id =3D=3D swfid) {=0A= _ids.splice(i, 1);=0A= break;=0A= }=0A= }=0A= }=0A= =0A= /**=0A= * Provides the title of the HTML document.=0A= * @return {String}=0A= * @static=0A= */=0A= this.getTitle =3D function() {=0A= return _d.title;=0A= }=0A= =0A= /**=0A= * Sets the title of the HTML document.=0A= * @param {String} title Title value.=0A= * @return {void}=0A= * @static=0A= */=0A= this.setTitle =3D function(title) {=0A= if (!_supported) return null;=0A= if (typeof title =3D=3D 'undefined') return;=0A= if (title =3D=3D 'null') title =3D '';=0A= _title =3D _d.title =3D title;=0A= if (_iframe && _iframe.contentWindow)=0A= _iframe.contentWindow.document.title =3D title;=0A= }=0A= =0A= /**=0A= * Provides the status of the browser window.=0A= * @return {String}=0A= * @static=0A= */=0A= this.getStatus =3D function() {=0A= return top.status;=0A= }=0A= =0A= /**=0A= * Sets the status of the browser window.=0A= * @param {String} status Status value.=0A= * @return {void}=0A= * @static=0A= */=0A= this.setStatus =3D function(status) {=0A= if (!_supported) return null;=0A= if (typeof status =3D=3D 'undefined') return;=0A= if (!_browser.isSafari()) {=0A= if (status =3D=3D 'null') status =3D '';=0A= status =3D _strictCheck(status, true);=0A= if (status =3D=3D '/') status =3D '';=0A= if (!(/http(s)?:\/\//.test(status))) {=0A= var index =3D _l.href.indexOf('#');=0A= status =3D (index =3D=3D -1 ? _l.href : = _l.href.substr(0, index)) + '#' + status;=0A= }=0A= top.status =3D status;=0A= }=0A= }=0A= =0A= /**=0A= * Resets the status of the browser window.=0A= * @return {void}=0A= * @static=0A= */=0A= this.resetStatus =3D function() {=0A= top.status =3D '';=0A= }=0A= =0A= /**=0A= * Provides the current deep linking value.=0A= * @return {String}=0A= * @static=0A= */=0A= this.getValue =3D function() {=0A= if (!_supported) return null;=0A= return _strictCheck(_value, false);=0A= }=0A= =0A= /**=0A= * Sets the current deep linking value.=0A= * @param {String} value A value which will be appended to the base = link of the HTML document.=0A= * @return {void}=0A= * @static=0A= */=0A= this.setValue =3D function(value) {=0A= if (!_supported) return null;=0A= if (typeof value =3D=3D 'undefined') return;=0A= if (value =3D=3D 'null') value =3D ''=0A= value =3D _strictCheck(value, true);=0A= if (value =3D=3D '/') value =3D '';=0A= if (_value =3D=3D value) return;=0A= _value =3D value;=0A= _silent =3D true;=0A= _update();=0A= _stack[_h.length] =3D _value;=0A= if (_browser.isSafari()) {=0A= if (_opts['history']) {=0A= _l.swfaddress[_l.pathname] =3D _stack.toString();=0A= _length =3D _h.length + 1;=0A= if (_browser.getVersion() < 412) {=0A= if (_l.search =3D=3D '') {=0A= _form.action =3D '#' + _value;=0A= _form.submit();=0A= }=0A= } else {=0A= var evt =3D document.createEvent('MouseEvents');=0A= evt.initEvent('click', true, true);=0A= var anchor =3D document.createElement('a');=0A= anchor.href =3D '#' + _value;=0A= anchor.dispatchEvent(evt);=0A= }=0A= } else {=0A= _l.replace('#' + _value);=0A= }=0A= } else if (_value !=3D _getHash()) {=0A= if (_opts['history']) {=0A= _l.hash =3D '#' + _value;=0A= } else {=0A= _l.replace('#' + _value);=0A= }=0A= }=0A= if (_browser.isIE() && _opts['history']) {=0A= if (_opts['html']) {=0A= = _iframe.contentWindow.location.assign(_iframe.contentWindow.location.path= name + =0A= '?' + _getHash());=0A= } else {=0A= _htmlWrite();=0A= }=0A= }=0A= setTimeout(_track, 10);=0A= _silent =3D false;=0A= }=0A= =0A= /**=0A= * Provides the deep linking value without the query string.=0A= * @return {String}=0A= * @static=0A= */=0A= this.getPath =3D function() {=0A= var value =3D this.getValue();=0A= if (value.indexOf('?') !=3D -1) {=0A= return value.split('?')[0];=0A= } else {=0A= return value; =0A= }=0A= }=0A= =0A= /**=0A= * Provides the query string part of the deep linking value.=0A= * @return {String}=0A= * @static=0A= */=0A= this.getQueryString =3D function() {=0A= var value =3D this.getValue();=0A= var index =3D value.indexOf('?');=0A= if (index !=3D -1 && index < value.length) {=0A= return value.substr(index + 1);=0A= }=0A= return '';=0A= }=0A= =0A= /**=0A= * Provides the value of a specific query parameter.=0A= * @param {String} param Parameter name.=0A= * @return {String}=0A= * @static=0A= */=0A= this.getParameter =3D function(param) {=0A= var value =3D this.getValue();=0A= var index =3D value.indexOf('?');=0A= if (index !=3D -1) {=0A= value =3D value.substr(index + 1);=0A= var params =3D value.split('&');=0A= var p, i =3D params.length;=0A= while(i--) {=0A= p =3D params[i].split('=3D');=0A= if (p[0] =3D=3D param) {=0A= return p[1];=0A= }=0A= }=0A= }=0A= return '';=0A= }=0A= =0A= /**=0A= * Provides a list of all the query parameter names.=0A= * @return {Array}=0A= * @static=0A= */=0A= this.getParameterNames =3D function() {=0A= var value =3D this.getValue();=0A= var index =3D value.indexOf('?');=0A= var names =3D [];=0A= if (index !=3D -1) {=0A= value =3D value.substr(index + 1);=0A= if (value !=3D '' && value.indexOf('=3D') !=3D -1) {=0A= var params =3D value.split('&');=0A= var i =3D 0;=0A= while(i < params.length) {=0A= names.push(params[i].split('=3D')[0]);=0A= i++;=0A= }=0A= }=0A= }=0A= return names;=0A= }=0A= =0A= if (!_supported) return;=0A= =0A= for (var i =3D 1; i < _length; i++) {=0A= _stack.push('');=0A= }=0A= _stack.push(_l.hash.replace(/^#/g, ''));=0A= =0A= if (_browser.isIE() && _l.hash !=3D _getHash()) {=0A= _l.hash =3D '#' + _getHash();=0A= }=0A= =0A= var scripts =3D document.getElementsByTagName('script');=0A= for (var i =3D 0, s; s =3D scripts[i]; i++) {=0A= if (s.src.indexOf(_js) > -1) {=0A= _url =3D String(s.src);=0A= break;=0A= }=0A= }=0A= if ((qi =3D _url.indexOf('?')) > -1) {=0A= var param, params =3D _url.substr(qi + 1).split('&');=0A= for (var j =3D 0, p; p =3D params[j]; j++) {=0A= param =3D p.split('=3D');=0A= if (/^(history|html|strict)$/.test(param[0])) {=0A= _opts[param[0]] =3D (isNaN(param[1]) ? eval(param[1]) : = (parseFloat(param[1]) > 0));=0A= }=0A= if (/^tracker$/.test(param[0])) {=0A= _opts[param[0]] =3D param[1];=0A= }=0A= }=0A= }=0A= if (/file:\/\//.test(_l.href)) _opts['html'] =3D false;=0A= =0A= _titleCheck();=0A= com.asual.util.Events.addListener(document, 'DOMContentLoaded', = _load);=0A= }=0A= =0A= /* Flash embedding hooks */=0A= if (typeof swfobject !=3D 'undefined') SWFObject =3D swfobject;=0A= if (typeof FlashObject !=3D 'undefined') SWFObject =3D FlashObject;=0A= if (typeof SWFObject !=3D 'undefined') {=0A= if (SWFObject.prototype && SWFObject.prototype.write) {=0A= com.asual.SWFObjectWrite =3D SWFObject.prototype.write;=0A= /**=0A= * @ignore=0A= */=0A= SWFObject.prototype.write =3D function() {=0A= if (this.getAttribute('version').major < 8) {=0A= this.addVariable('$swfaddress', SWFAddress.getValue());=0A= ((typeof arguments[0] =3D=3D 'string') ? =0A= document.getElementById(arguments[0]) : = arguments[0]).so =3D this;=0A= }=0A= if (success =3D com.asual.SWFObjectWrite.apply(this, = arguments))=0A= SWFAddress.addId(this.getAttribute('id'));=0A= return success;=0A= }=0A= } else {=0A= com.asual.SWFObjectRegisterObject =3D SWFObject.registerObject;=0A= SWFObject.registerObject =3D function() {=0A= com.asual.SWFObjectRegisterObject.apply(this, arguments);=0A= SWFAddress.addId(arguments[0]); =0A= }=0A= com.asual.SWFObjectCreateSWF =3D SWFObject.createSWF;=0A= SWFObject.createSWF =3D function() {=0A= com.asual.SWFObjectCreateSWF.apply(this, arguments);=0A= SWFAddress.addId(arguments[0].id); =0A= }=0A= com.asual.SWFObjectEmbedSWF =3D SWFObject.embedSWF;=0A= SWFObject.embedSWF =3D function() {=0A= com.asual.SWFObjectEmbedSWF.apply(this, arguments);=0A= SWFAddress.addId(arguments[8].id); =0A= }=0A= }=0A= }=0A= if (typeof UFO !=3D 'undefined') {=0A= com.asual.UFOCreate =3D UFO.create;=0A= UFO.create =3D function() {=0A= com.asual.UFOCreate.apply(this, arguments);=0A= SWFAddress.addId(arguments[0].id); =0A= }=0A= }=0A= if (typeof AC_FL_RunContent !=3D 'undefined') {=0A= com.asual.AC_FL_RunContent =3D AC_FL_RunContent;=0A= AC_FL_RunContent =3D function() {=0A= com.asual.AC_FL_RunContent.apply(this, arguments);=0A= for (var i =3D 0, a; a =3D arguments[i]; i++) {=0A= if (a =3D=3D 'id') {=0A= SWFAddress.addId(arguments[i+1]);=0A= break;=0A= }=0A= }=0A= }=0A= } ------=_NextPart_000_0000_01C998DD.B1C4AA20--