From: <Saved by Windows Internet Explorer 8>
Subject: Nearly 700 jobs added in Macomb County in 2009 - Detroit News and Information - Crain's Detroit Business
Date: Thu, 11 Feb 2010 13:59:22 -0500
MIME-Version: 1.0
Content-Type: multipart/related;
	type="multipart/alternative";
	boundary="----=_NextPart_000_0000_01CAAB22.69BDBAC0"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579

This is a multi-part message in MIME format.

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.crainsdetroit.com/Assets/gif/CDBlogo.gif

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
3RIhAAA7

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.crainsdetroit.com/assets/ad/freenewslett170x70.gif

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

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.crainsdetroit.com/assets/ad/nominate.gif

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

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Location: http://www.crainsdetroit.com/apps/pbcsi.dll/storyimage/CD/20100207/SUB01/302079957/AR-302079957.jpg?ref=AR&MaxW=155&border=0&q=90

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
2Q==

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.crainsdetroit.com/assets/gif/bt-facebook.gif

R0lGODlhlgARALMAALK33+7v91pkvGx1w1JcuaChrkdOi0pVuGFqv0dRq0VOoTxFkTc+e2ZmZpmZ
mf///yH5BAAAAAAALAAAAACWABEAAAT/sLhJq7046827/2DYSU9pnmiqrmzrvnAsz+9E33iu7/xq
PwECYogQGAnIQQ/WaOyayyjOBhAQiUYBUhhQNb9OHVQclpphVOIAAQBqkQfEatyj4+znvCp9bQcM
CVsIXSl4YCZgYYkliWWLjIcPY3h6eXwIa34GCoKEKJSQkmWhoV+ljk50UKujlXppA54oAAkCc4+n
n6iiiKm7qr6grmawsicACwLGpL2mho28udK8psPDVFkGCwVADN4MycvRpKy6hb/ovaLC1kvYRwTc
fwsKCrW3J5O+5tPl/fvs2u2gskWLHwYKDihU5qXVo4eRoEGqtk4fM4FRCCLRckDBAnoJKRZiHElS
xo8gWwgcSMDyAAElJWPKTPFjps2bLhxIEMGzp8+fQINiKBABADs=

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.crainsdetroit.com/assets/gif/bt-twitter.gif

R0lGODlhlgARALMAAF2soHfbzPT6+cXw6mDGt7Lp4W3ZyavX0V7Yxm/PwGPSwmTYx2fZyGZmZpmZ
mf///yH5BAAAAAAALAAAAACWABEAAAT/0MlJq7046827/+D3jGRpnmiqrmzrvnDcSnJt33iup/Qz
BMCAQWhgMBaBnXLJbJJovyDQQC0WAwJUY8vdrrwP8EjsLJsf0GGw8BAkFIYFMqsiu8j2s34HlQbY
AgAECkdYXw1jiGGKXo1di1yJkZCKe5Y8Dj5qQICCCYV0KWCjjIikJWKppnmXrWiZUaEmBQqGdZVd
j4uJqLi+u67BT7BDsiUHAAbGJqq5pbwkzY+swntpBgkAAAdt2toECcu90c7PwNDn5NXCUAxUCQnc
gd8Eyofj56fq6I7rwe3uinQigKCgLVGVgKki56vUJGr+ykBZYKSIAgLfFBS0F7FjtR4DHSgeWYCA
wCAEDJJ4XPkvE8uXMEPInEmzps2bGyIAADs=

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.crainsdetroit.com/assets/gif/bt-rss.gif

R0lGODlhlgARALMAAP706+qPQveYPOV4NeyDOfKNOfrl1vi6heBqLvWoZvq3dvfDmqSkpGZmZpmZ
mf///yH5BAAAAAAALAAAAACWABEAAAT9kLlJq7046827/2DYSU9pnmiqrmzrvnAsz+9E33iu7/xq
PwbCgEAoFASCQsDQazqf0NOPgEgQi0hkoNXodk/e7yPciJrPsN9gUAIssllueTwX0+12tH4/JSQW
TAAJSEZyJWJ5dHuLjCV9C4MKAA8JRgSGipkmiY2dTz8Flw8ACgkAAKGiK2RgYYeunrE8oEcHkwoK
DwdrhpyvKL6ywjUOJUgJBwKnBAAGCGwsiHPA07/D1zE/SJMHB5QLD8+Y0pte5djoLtoCTEi6CQ9U
mJmsd8Hp+D8BhEQDCP/i8Alk9MNAAEtC1jxjMrAhmh8OI8pyIEGExYsYM2rciIFBBAA7

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.crainsdetroit.com/assets/gif/bt-mobile.gif

R0lGODlhlgARALMAAP706+qPQveYPOV4NeyDOfKNOfrl1vi6heBqLvWoZvq3dvfDmqSkpGZmZpmZ
mf///yH5BAAAAAAALAAAAACWABEAAAT/kLlJq7046827/2DYSU9pnmiqrmzrvnAsz+9E33iu7/xq
PwbCgEAoFASCQsDQOzUarGdzSpX9CIgEsYhEBlpPaCkcFTuh0qp6jfoNBiXAotsFpx/k1T21Z/un
VwQJC0wACUhGdlJhYoyNjmNoj3l/lTSBC4cKAA8JRgSKkotmo494kqcmfZasLD8FoA8ACgkAALCx
emSMqZG9qaO/q63EJ69HB5wKCg8Hb3anqHfBvsGOw8XFP0gJBwK2BAAGCHBl0cCkqNXSZtnuKdvf
zQedCw/k0GfC6uj9vu/v4jFB0izBAyz5VE1Kc21dJEoAs/0IgIjIAAQY8UXcGPGHgQCfHIS8IceE
o0mJDk6qXPnAgQQRMGPKnEmzJgYGEQAAOw==

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.crainsdetroit.com/Assets/gif/icon_email.gif

R0lGODlhEAALAPcAAP///46OjpSUlOjo6PPz8/7+/vz8/JCQkP39/Z2dnZGRkfn5+YyMjJeXlwAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAAAQAAsA
AAhfAAMIHEiw4MABABIqXDhgIAEBCyMCYEBAIICHBRRmTHiAAACLAAYIMLAxYQOEHwMYSDhAAYKV
AASgTIkAQIGOEAsIeLjAJsidCQMcSPhwpUWZEllCFIg0KcsEBqMSDAgAOw==

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.crainsdetroit.com/Assets/gif/icon_print.gif

R0lGODlhDwAMAPcAAP///46OjvPz88XFxaysrN3d3aurqwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAAAPAAwA
AAhQAAEAIECwYEGBCAcWKCCgYcOBCRUOmDggYUWEBARERHhRYEaKIAF0HKhxo8iEGU2eBBCgpcuX
MAMsXOiwZsOWBVQCMGCAZYCSOln6jAkTQEAAOw==

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Location: http://sitelife.crainsdetroit.com/ver1.0/Content/images/poweredbypluck.gif?sid=sitelife.crainsdetroit.com

R0lGODlheAAOAOYAAAAAALy8vG9wcABAbs/h65mZmSkpKVpaWSF4tUpKStbW1oadrhAQEP///ztj
fayqqL3N2YODg1aHqTo6OpK82/L2+d7e3hFimrKvrmiq12ZmZlmfzzaKxszMzBBRfGGEm+/v75uz
xRwdHa7AzHp7e1NTUyFjkWZmZt/k54uMjBxUe6Wmptjr+Hq33zMzM8XFxU2Tw0JCQgcHCKe+zwxL
dY6vyGKMqI6kszNmmRgYGZmZmSiAvuXr777T4VWe0ixTbqOwt7a2tujj315gYEeNv7PI2Bltp9Pk
70mb01JSWj1ohXBvb7XQ4czT2HNzdAdTh/f397q4t+bm5qSzvCMjI2agyFaPtnWpzoytvS6GxMHI
za2trXNze6W91ujx9wdBZxBKcbzQ3oyeqpzA2mxtbeDt9WOMrTdukq2ttd7m7VVXWERqgnNrcw1S
gf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5
BAUUAG4ALAAAAAB4AA4AAAf/gG6Cg4SFhoeIiYqLjI2Oj5CRkm4NYVVERDBeHWoaQykWk6KjpKWU
NTtZGS0bZUFDGmoJCS+DUCBSIA27gg1Qo76mwpMQRhwUEFdIRw9OKQURJQlSgkEJBxoaJEENbgok
oZMvS9TD5o0fRj4EQiFWYQUFHVArQzG1bgUizyRksx0KDCgQtYJBOEcAEg5S6AbAwoYKEzqEOFFi
IYsNHwpacwHBBhYNUPCwUKFBhwMxXAQRVKBEt10KJqSAEmOgt5WDQKwI1wBEkBROCkgJYCBUgxcC
bCaqmDGjw6dNm0LVOFEQU6eEmowIgWVGBUJSVhTYEgUEywRmBUE5UICmzSAH/7oJkhIjQIMtCWIk
iCUCQwcDulbEWPFLEUamUJ9GZHjYKiGMjgkpCIChAIa0glCEGMOkx9d8EwJ0eBBhQowOFiaUizLh
IAgX30Q0KQxiiwWiL4bIIPNgSzlEVaVinYo1qnCqGgdNAJAjQYcGFUDw2DXFxIUnM1jKmDCrhF1v
LgIIeuECA8wIVCyQKK9LrpstVGQwcDErRwzMhoJDfFgxouPDDC0UoHFuJACAAbVgcEAUN0jQQwML
tOFBESzBxssgDWgwQQQPgHCAAU4c4IIBInQghQCzZJNCCgpEIUMJ8kBhEgMxkHDOjYKsAAADCQyR
AwAviDHAGTacAYYKaVRTAF8iIKSQjRsdaHAACSsokEIHlFiQAgkCCODEC1JEgF8DAXSJ441QqCFR
QgoA8QUYA9DgwQxyyZjILoXtwsuFlOjppyF6nnljBQWMaIABQmjxgwNK2BCGe4JGKumklLoRCAA7

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.crainsdetroit.com/assets/ad/crainsevents.gif

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
uq2EEAgAOw==

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.crainsdetroit.com/graphics/icon_search.gif

R0lGODlhEQARANUvAMcwMPrv78YvL74PD1EAAN2AgPLPz4sAAH9/f24/P/bf3zcfH+GQkOWfn/vw
8O7AwNx/f+CPj5+fn+/v79/f309PT0UAAEoPD29vb6cPD8s/P64AANNfX7cfH9rPz5cAAJ5vb3Ef
H0s/P8/Pz3QAAL+/v7Vvb+2/v5E/P/fg4L4QENRgYNhwcP///7oAAP///wAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAC8ALAAAAAARABEAAAaSwJfw
9VipXEjVKjUcOljIqJTVdACiAs1A6loNoS6BglJqRbgFIjITMB1IixGEm1ohQY3oRqTgso4uCHNR
BC1cV0gIeVEoAVxSCxMcSAMeZ49IBxUTBicBLQECXIAuHxcJCSEYLQZbSAB2mAQSrK4sKZhIFhKh
LipMYLIdSAxDsbldTS8FuSrFyi8pLIguAAVMQ0EAOw==

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/includes/tabber.css

.tabberlive .tabbertabhide {
	DISPLAY: none
}
.tabber {
=09
}
.tabberlive {
	MARGIN-TOP: 1em
}
UL.tabbernav {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 1px; =
LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: =
0px; FONT: 9px Verdana, sans-serif; BORDER-TOP: 0px; LIST-STYLE-IMAGE: =
none; BORDER-RIGHT: 0px; PADDING-TOP: 1px
}
UL.tabbernav LI {
	PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 5px; PADDING-RIGHT: =
0px; BACKGROUND: url(/graphics/TWI/bt_left.jpg) no-repeat left top; =
FLOAT: left; PADDING-TOP: 0px
}
UL.tabbernav LI A {
	PADDING-BOTTOM: 4px; PADDING-LEFT: 3px; PADDING-RIGHT: 4px; DISPLAY: =
block; BACKGROUND: url(/graphics/TWI/bt_right.jpg) no-repeat right top; =
COLOR: #ffffff; FONT-WEIGHT: bold; TEXT-DECORATION: none; PADDING-TOP: =
5px
}
UL.tabbernav LI A:link {
	COLOR: #ffffff
}
UL.tabbernav LI A:visited {
	COLOR: #ffffff
}
UL.tabbernav LI A:hover {
	COLOR: #eda194
}
UL.tabbernav LI.tabberactive {
	BACKGROUND-IMAGE: url(/graphics/TWI/bt_left_on.gif); COLOR: #cc0000
}
UL.tabbernav LI.tabberactive A {
	BACKGROUND-IMAGE: url(/graphics/TWI/bt_right_on.gif); PADDING-BOTTOM: =
5px; COLOR: #cc0000
}
UL.tabbernav LI.tabberactive A:hover {
	COLOR: #333333
}
.tabberlive .tabbertab {
	SCROLLBAR-ARROW-COLOR: #ffffff; BORDER-BOTTOM: #999999 4px double; =
BORDER-LEFT: #999999 3px double; SCROLLBAR-FACE-COLOR: #cc0000; =
PADDING-BOTTOM: 5px; BACKGROUND-COLOR: #f6f6dc; PADDING-LEFT: 5px; =
WIDTH: 560px; PADDING-RIGHT: 5px; HEIGHT: 250px; SCROLLBAR-SHADOW-COLOR: =
#ffffff; CLEAR: left; OVERFLOW: auto; BORDER-TOP: #999999 3px double; =
SCROLLBAR-TRACK-COLOR: #ffffff; BORDER-RIGHT: #999999 3px double; =
PADDING-TOP: 5px
}
.tabberlive .tabbertab H2 {
	DISPLAY: none
}
.tabberlive .tabbertab H3 {
	DISPLAY: none
}
.tabberlive#tab1 {
=09
}
.tabberlive#tab2 {
=09
}
.tabberlive#tab2 .tabbertab {
	HEIGHT: 200px; OVERFLOW: auto
}

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/includes/gen.css

HTML {
	PADDING-BOTTOM: 0px; BACKGROUND-COLOR: #dcdbdb; MARGIN: 0px; =
PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px
}
BODY {
	PADDING-BOTTOM: 0px; BACKGROUND-COLOR: #dcdbdb; MARGIN: 0px; =
PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px
}
.contentpadding A:link {
	FONT-FAMILY: Verdana, Helvetica, Arial, sans-serif; COLOR: #336699; =
FONT-WEIGHT: normal; TEXT-DECORATION: underline
}
.contentpadding A:visited {
	FONT-FAMILY: Verdana, Helvetica, Arial, sans-serif; COLOR: #336699; =
FONT-WEIGHT: normal; TEXT-DECORATION: underline
}
.contentpadding A:hover {
	FONT-FAMILY: Verdana, Helvetica, Arial, sans-serif; COLOR: #cc3300; =
FONT-WEIGHT: normal; TEXT-DECORATION: none
}
IMG {
	BORDER-BOTTOM-COLOR: #000; BORDER-TOP-COLOR: #000; BORDER-RIGHT-COLOR: =
#000; BORDER-LEFT-COLOR: #000
}
.contentpadding UL {
	PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 10px 0px; =
PADDING-LEFT: 0px; PADDING-RIGHT: 0px; CLEAR: both; LIST-STYLE-IMAGE: =
none; PADDING-TOP: 0px
}
.contentpadding UL LI {
	MARGIN: 8px 0px 5px; PADDING-LEFT: 10px; BACKGROUND: =
url(http://www.crainsdetroit.com/Assets/gif/li_bullet3.gif) no-repeat =
left top; FONT-WEIGHT: normal
}
.contentpadding {
	PADDING-BOTTOM: 5px; PADDING-LEFT: 5px; PADDING-RIGHT: 5px; =
PADDING-TOP: 5px
}
.headline {
	LINE-HEIGHT: 1.3em
}
.headline2 {
	LINE-HEIGHT: 1.3em
}
.headline UL {
	PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: =
0px; PADDING-RIGHT: 0px; CLEAR: both; LIST-STYLE-IMAGE: none; =
PADDING-TOP: 0px
}
.headline2 UL {
	PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: =
0px; PADDING-RIGHT: 0px; CLEAR: both; LIST-STYLE-IMAGE: none; =
PADDING-TOP: 0px
}
.mostread UL {
	PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: =
0px; PADDING-RIGHT: 0px; CLEAR: both; LIST-STYLE-IMAGE: none; =
PADDING-TOP: 0px
}
.headline UL LI {
	MARGIN: 0px 0px 6px; PADDING-LEFT: 10px; BACKGROUND: =
url(http://www.crainsdetroit.com/Assets/gif/li_bullet.gif) no-repeat =
left top; FONT-WEIGHT: normal
}
.headline2 UL LI {
	MARGIN: 0px 0px 15px; PADDING-LEFT: 0px; BACKGROUND: none transparent =
scroll repeat 0% 0%; FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.headline2 UL LI A:link {
	MARGIN: 0px 0px 15px; PADDING-LEFT: 0px; BACKGROUND: none transparent =
scroll repeat 0% 0%; FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.headline2 UL LI A:visited {
	MARGIN: 0px 0px 15px; PADDING-LEFT: 0px; BACKGROUND: none transparent =
scroll repeat 0% 0%; FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.headline UL LI UL LI {
	PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 15px; PADDING-RIGHT: =
0px; FONT-SIZE: 10px; PADDING-TOP: 0px
}
.headline2 UL LI UL LI {
	PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 15px; PADDING-RIGHT: =
0px; FONT-SIZE: 10px; PADDING-TOP: 0px
}
.headline UL LI UL LI A:link {
	FONT-SIZE: 11px; TEXT-DECORATION: none
}
.headline UL LI UL LI A:visited {
	FONT-SIZE: 11px; TEXT-DECORATION: none
}
.headline2 UL LI UL LI A:link {
	FONT-SIZE: 11px; TEXT-DECORATION: none
}
.headline2 UL LI UL LI A:visited {
	FONT-SIZE: 11px; TEXT-DECORATION: none
}
.mostread UL LI {
	MARGIN: 5px 0px; PADDING-LEFT: 8px; BACKGROUND: =
url(http://www.crainsdetroit.com/Assets/gif/li_bullet2.gif) no-repeat =
left top; FONT-WEIGHT: normal
}
.cdb_body A:link {
	COLOR: #000000; TEXT-DECORATION: none
}
.cdb_body A:active {
	COLOR: #000000; TEXT-DECORATION: none
}
.cdb_body A:visited {
	COLOR: #000000; TEXT-DECORATION: none
}
.calendarweeks {
	TEXT-ALIGN: center; COLOR: #ffffff; FONT-SIZE: 10px; FONT-WEIGHT: bold; =
TEXT-DECORATION: none
}
.calendarrb {
	BORDER-BOTTOM: #274863 0px solid; BORDER-LEFT: #274863 0px solid; =
BORDER-TOP: #274863 0px solid; BORDER-RIGHT: #274863 1px solid
}
.cdb_headline_RR {
	LINE-HEIGHT: 14px; FONT-SIZE: 13px; FONT-WEIGHT: bold; TEXT-DECORATION: =
underline
}
.cdb_headline_bright {
	LINE-HEIGHT: 14px; TEXT-DECORATION: underline
}
.cdb_body_howto {
	FONT-FAMILY: Arial, sans-serif; COLOR: #333333; FONT-SIZE: 14px; =
FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.cdb_headline_howtoart {
	LINE-HEIGHT: 16px; FONT-FAMILY: Arial, sans-serif; COLOR: #333333; =
FONT-SIZE: 14px; FONT-WEIGHT: bold; TEXT-DECORATION: none
}
.cdb_howto_table {
	PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; BACKGROUND: =
url(http://www.crainsdetroit.com/Assets/gif/howto_side.gif) repeat-y =
left top; COLOR: #cccccc; FONT-SIZE: 6px; PADDING-TOP: 0px
}
.cdb_dropmenu {
	MARGIN-TOP: 0px; TEXT-INDENT: 0px; FONT-FAMILY: Arial; COLOR: #000000; =
FONT-SIZE: 11px; FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.cdb_newshead {
	BACKGROUND-IMAGE: url(/graphics/headderdots.gif); BORDER-BOTTOM: =
#b6b6b6 1px solid; BORDER-LEFT: #b6b6b6 1px solid; PADDING-BOTTOM: 1px; =
BACKGROUND-COLOR: #ffffff; TEXT-INDENT: 25px; MARGIN: 0px 0px 10px; =
PADDING-LEFT: 1px; PADDING-RIGHT: 1px; BACKGROUND-REPEAT: no-repeat; =
FONT-FAMILY: "Times New Roman", Times, serif; BACKGROUND-POSITION: left =
50%; LETTER-SPACING: 0px; HEIGHT: 20px; COLOR: #cc3300; FONT-SIZE: 18px; =
VERTICAL-ALIGN: middle; BORDER-TOP: #b6b6b6 1px solid; FONT-WEIGHT: =
bold; BORDER-RIGHT: #b6b6b6 1px solid; PADDING-TOP: 1px
}
H2.cdb_newshead {
	BACKGROUND-IMAGE: url(/graphics/headderdots.gif); BORDER-BOTTOM: =
#b6b6b6 1px solid; BORDER-LEFT: #b6b6b6 1px solid; PADDING-BOTTOM: 1px; =
BACKGROUND-COLOR: #ffffff; TEXT-INDENT: 25px; MARGIN: 0px 0px 10px; =
PADDING-LEFT: 1px; PADDING-RIGHT: 1px; BACKGROUND-REPEAT: no-repeat; =
FONT-FAMILY: "Times New Roman", Times, serif; BACKGROUND-POSITION: left =
50%; LETTER-SPACING: 0px; HEIGHT: 20px; COLOR: #cc3300; FONT-SIZE: 18px; =
VERTICAL-ALIGN: middle; BORDER-TOP: #b6b6b6 1px solid; FONT-WEIGHT: =
bold; BORDER-RIGHT: #b6b6b6 1px solid; PADDING-TOP: 1px
}
.cdb_newshead_s {
	BACKGROUND-IMAGE: url(/graphics/headderdots.gif); BORDER-BOTTOM: =
#b6b6b6 1px solid; BORDER-LEFT: #b6b6b6 1px solid; PADDING-BOTTOM: 3px; =
BACKGROUND-COLOR: #ffffff; TEXT-INDENT: 25px; MARGIN: 0px 0px 10px; =
PADDING-LEFT: 3px; PADDING-RIGHT: 3px; BACKGROUND-REPEAT: no-repeat; =
FONT-FAMILY: "Times New Roman", Times, serif; BACKGROUND-POSITION: left =
50%; LETTER-SPACING: 0px; HEIGHT: 20px; COLOR: #cc3300; FONT-SIZE: 18px; =
VERTICAL-ALIGN: middle; BORDER-TOP: #b6b6b6 1px solid; FONT-WEIGHT: =
bold; BORDER-RIGHT: #b6b6b6 1px solid; PADDING-TOP: 3px
}
.cdb_newshead2 {
	BORDER-BOTTOM: #b6b6b6 1px solid; BORDER-LEFT: #b6b6b6 1px solid; =
PADDING-BOTTOM: 2px; BACKGROUND-COLOR: #ffffff; PADDING-LEFT: 2px; =
PADDING-RIGHT: 2px; FONT-FAMILY: "Times New Roman", Times, serif; =
LETTER-SPACING: 0px; COLOR: #cc3300; FONT-SIZE: 18px; BORDER-TOP: =
#b6b6b6 1px solid; FONT-WEIGHT: bold; BORDER-RIGHT: #b6b6b6 1px solid; =
PADDING-TOP: 2px
}
.cdb_newshead_howto {
	BORDER-BOTTOM: #b6b6b6 1px solid; BORDER-LEFT: #b6b6b6 1px solid; =
PADDING-BOTTOM: 5px; BACKGROUND-COLOR: #ffffff; PADDING-LEFT: 5px; =
PADDING-RIGHT: 5px; BACKGROUND-REPEAT: no-repeat; FONT-FAMILY: "Times =
New Roman", Times, serif; BACKGROUND-POSITION: left 50%; LETTER-SPACING: =
0px; HEIGHT: 20px; COLOR: #cc0000; FONT-SIZE: 18px; VERTICAL-ALIGN: =
middle; BORDER-TOP: #b6b6b6 1px solid; FONT-WEIGHT: bold; BORDER-RIGHT: =
#b6b6b6 1px solid; PADDING-TOP: 5px
}
.cdb_howto_padding {
	PADDING-BOTTOM: 5px; PADDING-LEFT: 5px; PADDING-RIGHT: 5px; =
PADDING-TOP: 5px
}
.cdb_howto_menu {
	BORDER-BOTTOM: #cccccc 1px double; BORDER-LEFT: #cccccc 1px double; =
PADDING-BOTTOM: 5px; PADDING-LEFT: 10px; PADDING-RIGHT: 5px; BORDER-TOP: =
#cccccc 1px double; BORDER-RIGHT: #cccccc 1px double; PADDING-TOP: 5px
}
.cdb_howto_menu2 {
	BORDER-BOTTOM: 3px; BORDER-LEFT: 3px; PADDING-BOTTOM: 0px; =
PADDING-LEFT: 5px; PADDING-RIGHT: 5px; BORDER-TOP: 3px; BORDER-RIGHT: =
3px; PADDING-TOP: 5px
}
.cdb_howto_backimg {
	BACKGROUND: =
url(http://www.crainsdetroit.com/Assets/gif/banner_howto3.gif) no-repeat
}
.calendarhed {
	LINE-HEIGHT: 19px; COLOR: #274863; FONT-SIZE: 11px; FONT-WEIGHT: bold; =
TEXT-DECORATION: none
}
.calendartxt {
	BORDER-BOTTOM: #274863 1px solid; BORDER-LEFT: #274863 1px solid; =
FONT-FAMILY: Arial, Helvetica, sans-serif; COLOR: #274863; FONT-SIZE: =
10px; BORDER-TOP: #274863 1px solid; BORDER-RIGHT: #274863 0px solid; =
TEXT-DECORATION: none
}
.calendartxt A:link {
	BORDER-BOTTOM-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-TOP-STYLE: =
none; COLOR: #274863; BORDER-LEFT-STYLE: none
}
.calendartxt A:visited {
	BORDER-BOTTOM-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-TOP-STYLE: =
none; COLOR: #274863; BORDER-LEFT-STYLE: none
}
.tdborder {
	BORDER-BOTTOM: #d4d4be 1px solid; TEXT-ALIGN: left; BORDER-LEFT: =
#d4d4be 1px solid; PADDING-BOTTOM: 3px; BACKGROUND-COLOR: #f6f6dc; =
PADDING-LEFT: 3px; PADDING-RIGHT: 3px; MARGIN-BOTTOM: 3px; BORDER-TOP: =
#d4d4be 1px solid; BORDER-RIGHT: #d4d4be 1px solid; PADDING-TOP: 3px
}
.tdborder2 {
	TEXT-ALIGN: left; PADDING-BOTTOM: 6px; PADDING-LEFT: 6px; =
PADDING-RIGHT: 6px; PADDING-TOP: 6px
}
.tdborder_bright {
	BORDER-BOTTOM: #d4d4be 1px solid; TEXT-ALIGN: left; BORDER-LEFT: =
#d4d4be 1px solid; PADDING-BOTTOM: 3px; BACKGROUND-COLOR: #f6f6dc; =
PADDING-LEFT: 3px; PADDING-RIGHT: 3px; FONT-FAMILY: Verdana, sans-serif; =
COLOR: #666666; FONT-SIZE: 12px; BORDER-TOP: #d4d4be 1px solid; =
BORDER-RIGHT: #d4d4be 1px solid; TEXT-DECORATION: none; PADDING-TOP: 3px
}
#top_ad {
	BACKGROUND-IMAGE: =
url(http://www.crainsdetroit.com/Assets/jpg/bg_top_ad.jpg); TEXT-ALIGN: =
center
}
.tdborder_list {
	BORDER-BOTTOM: #666666 1px solid; BORDER-LEFT: #666666 1px solid; =
MARGIN: 5px auto 0px; WIDTH: 900px; BORDER-TOP: #666666 1px solid; =
BORDER-RIGHT: #666666 1px solid
}
#UserNav {
	FONT-FAMILY: Arial, sans-serif; FONT-SIZE: 10px
}
#UserNav A:link {
	FONT-FAMILY: Arial, sans-serif; COLOR: #900; FONT-SIZE: 10px; =
FONT-WEIGHT: normal; TEXT-DECORATION: none
}
#UserNav A:visited {
	FONT-FAMILY: Arial, sans-serif; COLOR: #900; FONT-SIZE: 10px; =
FONT-WEIGHT: normal; TEXT-DECORATION: none
}
#UserNav A:hover {
	COLOR: #000000
}
.columnintro {
	FONT-SIZE: 14px
}
.columnheadline {
	FONT-SIZE: 16px
}
.facts-left {
	BORDER-BOTTOM: #dddddd 1px solid; TEXT-ALIGN: left; BORDER-LEFT: =
#dddddd 1px solid; PADDING-BOTTOM: 5px; LINE-HEIGHT: 1.5em; =
PADDING-LEFT: 5px; PADDING-RIGHT: 5px; BACKGROUND: #f5f5f5; FONT-SIZE: =
11px; BORDER-TOP: #dddddd 1px solid; BORDER-RIGHT: #dddddd 1px solid; =
PADDING-TOP: 5px
}
.facts-right {
	BORDER-BOTTOM: #dddddd 1px solid; TEXT-ALIGN: left; BORDER-LEFT: =
#dddddd 1px solid; PADDING-BOTTOM: 5px; LINE-HEIGHT: 1.5em; =
PADDING-LEFT: 5px; PADDING-RIGHT: 5px; BACKGROUND: #f5f5f5; FONT-SIZE: =
11px; BORDER-TOP: #dddddd 1px solid; BORDER-RIGHT: #dddddd 1px solid; =
PADDING-TOP: 5px
}
.facts-left {
	MARGIN: 2px 5px 5px 0px; WIDTH: 200px; FLOAT: left; CLEAR: left
}
.facts-right {
	MARGIN: 5px 0px; WIDTH: 290px; FLOAT: right; CLEAR: both
}
.facts-heading {
	FONT-VARIANT: small-caps; MARGIN: 0px 0px 5px; FONT-FAMILY: georgia, =
times new roman, serif; LETTER-SPACING: 1px; COLOR: #cc3300; FONT-SIZE: =
14px; FONT-WEIGHT: bold
}
.facts-text UL {
	PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: =
0px; PADDING-RIGHT: 0px; CLEAR: both; LIST-STYLE-IMAGE: none; =
PADDING-TOP: 0px
}
.connectionitems UL {
	PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: =
0px; PADDING-RIGHT: 0px; CLEAR: both; LIST-STYLE-IMAGE: none; =
PADDING-TOP: 0px
}
.facts-text UL LI {
	LIST-STYLE-TYPE: square; MARGIN: 8px 0px 5px 15px; PADDING-LEFT: 0px; =
BACKGROUND: none transparent scroll repeat 0% 0%; FONT-WEIGHT: normal
}
.connectionitems UL LI {
	LIST-STYLE-TYPE: square; MARGIN: 8px 0px 5px 15px; PADDING-LEFT: 0px; =
BACKGROUND: none transparent scroll repeat 0% 0%; FONT-WEIGHT: normal
}
.connectionitems {
	BORDER-BOTTOM: #dddddd 1px solid; BORDER-LEFT: #dddddd 1px solid; =
PADDING-BOTTOM: 3px; PADDING-LEFT: 3px; PADDING-RIGHT: 3px; BORDER-TOP: =
#dddddd 1px solid; BORDER-RIGHT: #dddddd 1px solid; PADDING-TOP: 3px
}
.surveyquestion {
	BORDER-BOTTOM: #dddddd 1px solid; BORDER-LEFT: #dddddd 1px solid; =
PADDING-BOTTOM: 5px; FONT-STYLE: italic; MARGIN-TOP: 40px; PADDING-LEFT: =
5px; PADDING-RIGHT: 5px; DISPLAY: block; BACKGROUND: #f5f5f5; FONT-SIZE: =
13px; BORDER-TOP: #dddddd 3px solid; BORDER-RIGHT: #dddddd 1px solid; =
PADDING-TOP: 5px
}
#toprow-left {
	PADDING-LEFT: 10px; WIDTH: 115px; FLOAT: left
}
#toprow-center {
	TEXT-ALIGN: left; WIDTH: 800px; FLOAT: left
}
H2 {
	MARGIN: 0px; FONT-WEIGHT: normal
}
H3 {
	MARGIN: 0px; FONT-WEIGHT: normal
}
.breadcrumbs {
	BORDER-BOTTOM: #dddddd 1px solid; LINE-HEIGHT: 1.5em; MARGIN-BOTTOM: =
5px; FONT-SIZE: 80%; BORDER-TOP: #dddddd 1px solid
}
.breadcrumbs A:link {
	TEXT-DECORATION: none
}
.breadcrumbs A:visited {
	TEXT-DECORATION: none
}
.breadcrumbs A:hover {
	TEXT-DECORATION: underline
}
.breadcrumbs A:active {
	TEXT-DECORATION: underline
}
.box {
	BORDER-BOTTOM: #dddddd 1px solid; TEXT-ALIGN: left; BORDER-LEFT: =
#dddddd 1px solid; PADDING-BOTTOM: 3px; LINE-HEIGHT: 1.5em; =
PADDING-LEFT: 3px; PADDING-RIGHT: 3px; FONT-SIZE: 11px; BORDER-TOP: =
#dddddd 1px solid; BORDER-RIGHT: #dddddd 1px solid; PADDING-TOP: 3px
}
.box2 {
	BORDER-BOTTOM: #dddddd 1px solid; TEXT-ALIGN: left; BORDER-LEFT: =
#dddddd 1px solid; PADDING-BOTTOM: 3px; MARGIN: 2px 0px; PADDING-LEFT: =
3px; PADDING-RIGHT: 3px; FONT-SIZE: 12px; BORDER-TOP: #dddddd 1px solid; =
BORDER-RIGHT: #dddddd 1px solid; PADDING-TOP: 3px
}
.boxheader {
	BORDER-BOTTOM: #cccccc 1px solid; TEXT-ALIGN: center; BORDER-LEFT: =
#cccccc 1px solid; PADDING-BOTTOM: 2px; BACKGROUND-COLOR: #ffffff; =
MARGIN: 2px; PADDING-LEFT: 1px; PADDING-RIGHT: 1px; COLOR: #cc3300; =
BORDER-TOP: #cccccc 1px solid; FONT-WEIGHT: bold; BORDER-RIGHT: #cccccc =
1px solid; PADDING-TOP: 2px
}
.box-article {
	BORDER-BOTTOM: #dddddd 1px solid; BORDER-LEFT: #dddddd 1px solid; =
PADDING-BOTTOM: 5px; LINE-HEIGHT: 1.5em; MARGIN-TOP: 5px; PADDING-LEFT: =
5px; PADDING-RIGHT: 5px; FONT-SIZE: 11px; BORDER-TOP: #dddddd 1px solid; =
BORDER-RIGHT: #dddddd 1px solid; PADDING-TOP: 5px
}
.box-article UL {
	PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: =
0px; PADDING-RIGHT: 0px; CLEAR: both; LIST-STYLE-IMAGE: none; =
PADDING-TOP: 0px
}
.box-article A:link {
	TEXT-DECORATION: none
}
.box-article A:visited {
	TEXT-DECORATION: none
}
.box-article-heading {
	MARGIN: 0px 0px 5px; FONT: bold small-caps 12px georgia, serif; =
LETTER-SPACING: 1px; COLOR: #cc3300
}
.box-advertisement {
	TEXT-ALIGN: center; MARGIN-TOP: 5px; FONT: 11px Arial; COLOR: #666; =
CLEAR: both
}
.box-photo {
	BORDER-BOTTOM: #dddddd 1px solid; TEXT-ALIGN: center; BORDER-LEFT: =
#dddddd 1px solid; PADDING-BOTTOM: 5px; PADDING-LEFT: 5px; =
PADDING-RIGHT: 5px; BORDER-TOP: #dddddd 1px solid; BORDER-RIGHT: #dddddd =
1px solid; PADDING-TOP: 5px
}
.box-photo-caption {
	BORDER-BOTTOM: #dddddd 1px solid; TEXT-ALIGN: left; BORDER-LEFT: =
#dddddd 1px solid; PADDING-BOTTOM: 5px; LINE-HEIGHT: 1.5em; MARGIN-TOP: =
0px; PADDING-LEFT: 5px; PADDING-RIGHT: 5px; BACKGROUND: #f5f5f5; =
FONT-SIZE: 11px; BORDER-TOP: #dddddd 1px solid; BORDER-RIGHT: #dddddd =
1px solid; PADDING-TOP: 5px
}
.box-photo-2 {
	PADDING-BOTTOM: 5px; LINE-HEIGHT: 1.5em; BACKGROUND-COLOR: #f5f5f5; =
MARGIN: 15px 0px 5px; PADDING-LEFT: 5px; WIDTH: 450px; PADDING-RIGHT: =
5px; FONT-FAMILY: georgia, serif; FONT-SIZE: 11px; PADDING-TOP: 5px
}
.dateheader {
	PADDING-BOTTOM: 1px; BACKGROUND-COLOR: #cccccc; MARGIN: 15px 0px 0px; =
PADDING-LEFT: 3px; WIDTH: 350px; PADDING-RIGHT: 3px; FONT-FAMILY: Arial, =
serif; COLOR: #ffffff; FONT-SIZE: 13px; FONT-WEIGHT: bold; PADDING-TOP: =
1px
}
.sp_contentpadding A:link {
	COLOR: #336699; TEXT-DECORATION: none
}
.sp_contentpadding A:hover {
	COLOR: #cc3300; TEXT-DECORATION: underline
}
.sp_contentpadding A:visited {
	COLOR: #993366; TEXT-DECORATION: none
}
.speakingout {
	TEXT-ALIGN: center; PADDING-BOTTOM: 2px; BACKGROUND-COLOR: #dbdec2; =
PADDING-LEFT: 3px; PADDING-RIGHT: 3px; FONT: bold 11px Times, serif; =
PADDING-TOP: 0px
}
.sp_headlines {
	MARGIN-TOP: 9px
}
.sectionheader {
	BORDER-BOTTOM: #cccccc 3px double; MARGIN: 3px 0px 0px
}
.wheels-heading {
	MARGIN: 10px 0px; FONT-FAMILY: Times; FONT-SIZE: 28px; FONT-WEIGHT: =
bold
}
.wheels-subhead {
	TEXT-ALIGN: right; PADDING-BOTTOM: 2px; BACKGROUND-COLOR: #999; MARGIN: =
0px 0px 10px; PADDING-LEFT: 3px; PADDING-RIGHT: 3px; FONT-FAMILY: Times; =
COLOR: #ffffff; FONT-SIZE: 18px; FONT-WEIGHT: bold; PADDING-TOP: 2px
}
#menu_2 {
	BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; =
PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 100%; =
PADDING-RIGHT: 0px; DISPLAY: inline-block; BACKGROUND: #b42e2f; =
BORDER-TOP: #cccccc 1px solid; PADDING-TOP: 0px
}
#menu_2 UL {
	PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: =
0px; PADDING-RIGHT: 0px; LIST-STYLE-IMAGE: none; PADDING-TOP: 0px
}
#menu_2 A {
	TEXT-ALIGN: left; PADDING-BOTTOM: 2px; MARGIN: 0px; PADDING-LEFT: 3px; =
PADDING-RIGHT: 3px; DISPLAY: block; FONT: bold 11px/16px arial, =
helvetica, sans-serif; PADDING-TOP: 2px
}
#menu_2 H2 {
	TEXT-ALIGN: left; PADDING-BOTTOM: 2px; MARGIN: 0px; PADDING-LEFT: 3px; =
PADDING-RIGHT: 3px; DISPLAY: block; FONT: bold 11px/16px arial, =
helvetica, sans-serif; PADDING-TOP: 2px
}
#menu_2 H2 {
	TEXT-TRANSFORM: uppercase; BACKGROUND: #be3233; COLOR: #ffffff
}
#menu_2 A {
	BACKGROUND: #f6f6dc; COLOR: #333333; TEXT-DECORATION: none
}
#menu_2 A:hover {
	BACKGROUND: #fff; COLOR: #a00
}
#menu_2 LI {
	POSITION: relative; BORDER-TOP: #cccccc 1px solid
}
#menu_2 UL UL UL {
	POSITION: absolute; WIDTH: 100%; TOP: 0px; LEFT: 100%
}
DIV#menu_2 UL UL UL {
	BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; =
DISPLAY: none; BORDER-TOP: #cccccc 1px solid; BORDER-RIGHT: #cccccc 1px =
solid
}
DIV#menu_2 UL UL LI:hover UL UL {
	BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; =
DISPLAY: none; BORDER-TOP: #cccccc 1px solid; BORDER-RIGHT: #cccccc 1px =
solid
}
DIV#menu_2 UL UL LI:hover UL {
	DISPLAY: block
}
DIV#menu UL UL UL LI:hover UL {
	DISPLAY: block
}
.btn {
	BACKGROUND-IMAGE: url(/assets/gif/bg_btn.gif); BORDER-BOTTOM: #999 3px =
double; BORDER-LEFT: #ddd 3px double; BACKGROUND-COLOR: #eee; WIDTH: =
auto; BACKGROUND-REPEAT: repeat-x; FONT-FAMILY: Arial, Helvetica, =
sans-serif; COLOR: #333; FONT-SIZE: 10px; BORDER-TOP: #ddd 3px double; =
FONT-WEIGHT: bold; BORDER-RIGHT: #999 3px double
}
.sectiongraphic {
	WIDTH: 280px; MARGIN-BOTTOM: 5px; FLOAT: left
}
.sectioninfo {
	TEXT-ALIGN: center; MARGIN: 5px 0px 0px; WIDTH: 295px; FLOAT: left
}
#sectioncontain {
	FONT-FAMILY: arial, helvetica, verdana, sans-serif; FONT-SIZE: 12px
}
#sectioncontain A:link {
	FONT-FAMILY: arial, helvetica, verdana, sans-serif; TEXT-DECORATION: =
none
}
#sectioncontain A:visited {
	FONT-FAMILY: arial, helvetica, verdana, sans-serif; TEXT-DECORATION: =
none
}
#sectionstoriescontainer {
	FONT-FAMILY: arial, helvetica, verdana; CLEAR: both; BORDER-TOP: =
#dddddd 3px double
}
.video {
	BORDER-BOTTOM: #999999 1px dotted; TEXT-ALIGN: center; MARGIN-BOTTOM: =
5px
}
.box-video A {
	FONT: 13px bold Arial; COLOR: #333333; TEXT-DECORATION: none
}
.article_tools {
	TEXT-ALIGN: right
}
.article_tools_item A:link {
	FONT: 11px Arial; FLOAT: left; COLOR: #336699; MARGIN-LEFT: 10px; =
TEXT-DECORATION: none
}
.article_tools_item A:visited {
	FONT: 11px Arial; FLOAT: left; COLOR: #336699; MARGIN-LEFT: 10px; =
TEXT-DECORATION: none
}
.article_tools_item A:hover {
	COLOR: #cc3300
}
#cdbArticleComments {
	FONT: 11px Arial; FLOAT: left; COLOR: #336699; MARGIN-LEFT: 10px; =
TEXT-DECORATION: none
}
#cdbArticleComments A:link {
	FONT: 11px Arial; FLOAT: left; COLOR: #336699; MARGIN-LEFT: 10px; =
TEXT-DECORATION: none
}
#cdbArticleComments A:visited {
	FONT: 11px Arial; FLOAT: left; COLOR: #336699; MARGIN-LEFT: 10px; =
TEXT-DECORATION: none
}
.Recommend_Container {
	FONT: 11px Arial; FLOAT: left; COLOR: #336699; MARGIN-LEFT: 10px; =
TEXT-DECORATION: none
}
.section-top-text {
	FONT: 12px/18px Arial; COLOR: #666
}
.section-top {
	BORDER-BOTTOM: #ccc 3px double; HEIGHT: 50px
}
.clearfix:after {
	DISPLAY: block; HEIGHT: 0px; VISIBILITY: hidden; CLEAR: both; CONTENT: =
"."
}
.clearfix {
	DISPLAY: inline-block
}
* HTML .clearfix {
	HEIGHT: 1%
}
.clearfix {
	DISPLAY: block
}
#mask {
	BACKGROUND-IMAGE: url(/assets/png/mask_333.png); Z-INDEX: 1000; =
POSITION: absolute; TEXT-ALIGN: center; WIDTH: 100%; HEIGHT: 1500px; =
TOP: 0px; LEFT: 0px
}
#inter {
	BACKGROUND-IMAGE: url(/assets/png/mask_333.png); Z-INDEX: 1000; =
POSITION: absolute; TEXT-ALIGN: center; WIDTH: 100%; HEIGHT: 1500px; =
TOP: 0px; LEFT: 0px
}
#inter DIV.bar {
	BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; =
PADDING-BOTTOM: 5px; BACKGROUND-COLOR: #fff; PADDING-LEFT: 5px; WIDTH: =
100%; PADDING-RIGHT: 5px; HEIGHT: 3em; COLOR: #000000; BORDER-TOP: =
#cccccc 1px solid; BORDER-RIGHT: #cccccc 1px solid; PADDING-TOP: 5px
}
#inter DIV.bar .title {
	COLOR: #999; FONT-SIZE: 1.2em
}

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/includes/navigation.css

.preload1 {
	BACKGROUND: url(/Assets/menu/blank_over.gif)
}
.preload2 {
	BACKGROUND: url(/Assets/menu/blank_overa.gif)
}
.menu2 {
	Z-INDEX: 500; POSITION: relative; PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: =
none; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
arial, verdana, sans-serif; BACKGROUND: #fff; HEIGHT: 30px; =
LIST-STYLE-IMAGE: none; PADDING-TOP: 0px
}
.menu2 LI.top {
	DISPLAY: block; FLOAT: left
}
.menu2 LI A.top_link {
	PADDING-BOTTOM: 0px; LINE-HEIGHT: 27px; PADDING-LEFT: 0px; =
PADDING-RIGHT: 0px; DISPLAY: block; BACKGROUND: =
url(/Assets/menu/blank.gif); FLOAT: left; HEIGHT: 30px; COLOR: #fff; =
FONT-SIZE: 11px; CURSOR: pointer; FONT-WEIGHT: bold; TEXT-DECORATION: =
none; PADDING-TOP: 0px
}
.menu2 LI A.top_link SPAN {
	PADDING-BOTTOM: 0px; PADDING-LEFT: 24px; PADDING-RIGHT: 23px; DISPLAY: =
block; BACKGROUND: url(/Assets/menu/blank.gif) right top; FLOAT: left; =
HEIGHT: 36px; PADDING-TOP: 0px
}
.menu2 LI A.top_link SPAN.down {
	PADDING-BOTTOM: 0px; PADDING-LEFT: 12px; PADDING-RIGHT: 21px; DISPLAY: =
block; BACKGROUND: url(/Assets/menu/blanka.gif) no-repeat right top; =
FLOAT: left; HEIGHT: 36px; PADDING-TOP: 0px
}
.menu2 LI A.top_link:hover {
	BACKGROUND: url(/Assets/menu/blank_over.gif) no-repeat; COLOR: #fff
}
.menu2 LI A.top_link:hover SPAN {
	BACKGROUND: url(/Assets/menu/blank_over.gif) no-repeat right top
}
.menu2 LI A.top_link:hover SPAN.down {
	BACKGROUND: url(/Assets/menu/blank_overa.gif) no-repeat right top
}
.menu2 LI:hover > A.top_link {
	BACKGROUND: url(/Assets/menu/blank_over.gif) no-repeat; COLOR: #fff
}
.menu2 LI:hover > A.top_link SPAN {
	BACKGROUND: url(/Assets/menu/blank_over.gif) no-repeat right top
}
.menu2 LI:hover > A.top_link SPAN.down {
	BACKGROUND: url(/Assets/menu/blank_overa.gif) no-repeat right top
}
.menu2 TABLE {
	POSITION: absolute; WIDTH: 0px; BORDER-COLLAPSE: collapse; HEIGHT: 0px; =
TOP: 0px; LEFT: 0px
}
.menu2 A:hover {
	Z-INDEX: 200; POSITION: relative; VISIBILITY: visible
}
.menu2 LI:hover {
	Z-INDEX: 200; POSITION: relative
}
.menu2 UL {
	POSITION: absolute; PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: =
0px; PADDING-LEFT: 0px; WIDTH: 0px; PADDING-RIGHT: 0px; HEIGHT: 0px; =
TOP: -9999px; LIST-STYLE-IMAGE: none; PADDING-TOP: 0px; LEFT: -9999px
}
.menu2 :hover UL UL {
	POSITION: absolute; PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: =
0px; PADDING-LEFT: 0px; WIDTH: 0px; PADDING-RIGHT: 0px; HEIGHT: 0px; =
TOP: -9999px; LIST-STYLE-IMAGE: none; PADDING-TOP: 0px; LEFT: -9999px
}
.menu2 :hover UL :hover UL UL {
	POSITION: absolute; PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: =
0px; PADDING-LEFT: 0px; WIDTH: 0px; PADDING-RIGHT: 0px; HEIGHT: 0px; =
TOP: -9999px; LIST-STYLE-IMAGE: none; PADDING-TOP: 0px; LEFT: -9999px
}
.menu2 :hover UL :hover UL :hover UL UL {
	POSITION: absolute; PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: =
0px; PADDING-LEFT: 0px; WIDTH: 0px; PADDING-RIGHT: 0px; HEIGHT: 0px; =
TOP: -9999px; LIST-STYLE-IMAGE: none; PADDING-TOP: 0px; LEFT: -9999px
}
.menu2 :hover UL :hover UL :hover UL :hover UL UL {
	POSITION: absolute; PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: =
0px; PADDING-LEFT: 0px; WIDTH: 0px; PADDING-RIGHT: 0px; HEIGHT: 0px; =
TOP: -9999px; LIST-STYLE-IMAGE: none; PADDING-TOP: 0px; LEFT: -9999px
}
.menu2 :hover UL.sub {
	Z-INDEX: 300; BORDER-BOTTOM: #cc3300 1px solid; BORDER-LEFT: #cc3300 =
1px solid; PADDING-BOTTOM: 3px; PADDING-LEFT: 3px; WIDTH: 170px; =
PADDING-RIGHT: 3px; WHITE-SPACE: nowrap; BACKGROUND: #fff; HEIGHT: auto; =
BORDER-TOP: #cc3300 1px solid; TOP: 31px; BORDER-RIGHT: #cc3300 1px =
solid; PADDING-TOP: 3px; LEFT: 0px
}
.menu2 :hover UL.sub LI {
	POSITION: relative; WIDTH: 150px; DISPLAY: block; FLOAT: left; HEIGHT: =
20px; FONT-WEIGHT: normal
}
.menu2 :hover UL.sub LI A {
	LINE-HEIGHT: 20px; TEXT-INDENT: 5px; WIDTH: 150px; DISPLAY: block; =
HEIGHT: 20px; COLOR: #000; FONT-SIZE: 11px; TEXT-DECORATION: none
}
.menu2 :hover UL.sub LI A.fly {
	BACKGROUND: url(/Assets/menu/arrow.gif) #fff no-repeat 140px 7px
}
.menu2 :hover UL.sub LI A:hover {
	BACKGROUND: #e5e5e5; COLOR: #000
}
.menu2 :hover UL.sub LI A.fly:hover {
	BACKGROUND: url(/Assets/menu/arrow_over.gif) #e5e5e5 no-repeat 140px =
7px; COLOR: #000
}
.menu2 :hover UL LI:hover > A.fly {
	BACKGROUND: url(/Assets/menu/arrow_over.gif) #e5e5e5 no-repeat 140px =
7px; COLOR: #000
}
.menu2 :hover UL :hover UL {
	Z-INDEX: 400; BORDER-BOTTOM: #cc3300 1px solid; BORDER-LEFT: #cc3300 =
1px solid; PADDING-BOTTOM: 3px; PADDING-LEFT: 3px; WIDTH: 300px; =
PADDING-RIGHT: 3px; WHITE-SPACE: nowrap; BACKGROUND: #fff; HEIGHT: auto; =
BORDER-TOP: #cc3300 1px solid; TOP: -4px; BORDER-RIGHT: #cc3300 1px =
solid; PADDING-TOP: 3px; LEFT: 150px
}
.menu2 :hover UL :hover UL :hover UL {
	Z-INDEX: 400; BORDER-BOTTOM: #cc3300 1px solid; BORDER-LEFT: #cc3300 =
1px solid; PADDING-BOTTOM: 3px; PADDING-LEFT: 3px; WIDTH: 300px; =
PADDING-RIGHT: 3px; WHITE-SPACE: nowrap; BACKGROUND: #fff; HEIGHT: auto; =
BORDER-TOP: #cc3300 1px solid; TOP: -4px; BORDER-RIGHT: #cc3300 1px =
solid; PADDING-TOP: 3px; LEFT: 150px
}
.menu2 :hover UL :hover UL :hover UL :hover UL {
	Z-INDEX: 400; BORDER-BOTTOM: #cc3300 1px solid; BORDER-LEFT: #cc3300 =
1px solid; PADDING-BOTTOM: 3px; PADDING-LEFT: 3px; WIDTH: 300px; =
PADDING-RIGHT: 3px; WHITE-SPACE: nowrap; BACKGROUND: #fff; HEIGHT: auto; =
BORDER-TOP: #cc3300 1px solid; TOP: -4px; BORDER-RIGHT: #cc3300 1px =
solid; PADDING-TOP: 3px; LEFT: 150px
}
.menu2 :hover UL :hover UL :hover UL :hover UL :hover UL {
	Z-INDEX: 400; BORDER-BOTTOM: #cc3300 1px solid; BORDER-LEFT: #cc3300 =
1px solid; PADDING-BOTTOM: 3px; PADDING-LEFT: 3px; WIDTH: 300px; =
PADDING-RIGHT: 3px; WHITE-SPACE: nowrap; BACKGROUND: #fff; HEIGHT: auto; =
BORDER-TOP: #cc3300 1px solid; TOP: -4px; BORDER-RIGHT: #cc3300 1px =
solid; PADDING-TOP: 3px; LEFT: 150px
}
#subnav {
	PADDING-BOTTOM: 2px; BACKGROUND-COLOR: #efefef; PADDING-LEFT: 2px; =
PADDING-RIGHT: 5px; PADDING-TOP: 2px
}
#subnav A {
	FONT-FAMILY: Verdana; COLOR: #666666; FONT-SIZE: 10px; FONT-WEIGHT: =
normal; TEXT-DECORATION: none
}
#subnav A:hover {
	TEXT-DECORATION: underline
}
.submenu {
	TEXT-ALIGN: right
}

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/includes/s.css

P {
	FONT: 12px/1.5em Verdana, Helvetica, Arial, sans-serif; COLOR: #333333
}
TD {
	FONT: 12px/1.5em Verdana, Helvetica, Arial, sans-serif; COLOR: #333333
}
H5 {
	FONT-SIZE: 13px; FONT-WEIGHT: bold
}
.cdb_date {
	LINE-HEIGHT: 13pt; FONT-FAMILY: Arial, Helvetica, sans-serif; COLOR: =
#000000; FONT-SIZE: 11px; TEXT-DECORATION: none
}
.headline A:link {
	FONT-FAMILY: Arial, sans-serif; COLOR: #336699; FONT-SIZE: 13px; =
FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.headline A:visited {
	FONT-FAMILY: Arial, sans-serif; COLOR: #336699; FONT-SIZE: 13px; =
FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.headline A:hover {
	COLOR: #cc3300; FONT-WEIGHT: normal; TEXT-DECORATION: underline
}
.mostread A:hover {
	COLOR: #cc3300; FONT-WEIGHT: normal; TEXT-DECORATION: underline
}
.mostread UL {
	LINE-HEIGHT: 1.3em
}
.mostread A:link {
	FONT-FAMILY: Arial, sans-serif; COLOR: #666666; FONT-SIZE: 12px; =
FONT-WEIGHT: normal; TEXT-DECORATION: underline
}
.mostread A:visited {
	FONT-FAMILY: Arial, sans-serif; COLOR: #666666; FONT-SIZE: 12px; =
FONT-WEIGHT: normal; TEXT-DECORATION: underline
}
.mostread A:hover {
	FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.cdb_body {
	FONT-FAMILY: Arial, Helvetica, sans-serif; COLOR: #333333; FONT-SIZE: =
12px; FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.cdb_mainphototitle {
	FONT-SIZE: 14px; FONT-WEIGHT: bold; TEXT-DECORATION: none
}
.cdb_mainphotocaption {
	FONT-SIZE: 11px; FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.cdb_mainphotocredit {
	FONT-STYLE: italic; COLOR: #666666; FONT-SIZE: 9px; FONT-WEIGHT: =
normal; TEXT-DECORATION: none
}
.small {
	COLOR: #900; FONT-SIZE: 10px
}
.gray {
	COLOR: #666666; FONT-WEIGHT: normal
}
.smallgray {
	COLOR: #666666; FONT-SIZE: 11px
}
.boldtext {
	FONT-WEIGHT: bold
}
.red {
	COLOR: #cc3300
}
.largeRed {
	COLOR: #cc3300; FONT-SIZE: 14px
}
.larger {
	FONT-SIZE: 15px
}
.large {
	FONT-SIZE: 16px
}
H2.large {
	MARGIN: 0px; FONT-SIZE: 16px
}
H3.larger {
	MARGIN: 0px; FONT-SIZE: 14px; FONT-WEIGHT: normal
}
.kicker {
	COLOR: #666666; FONT-SIZE: 10px
}
.kicker A:link {
	FONT-SIZE: 10px
}
.kicker A:visited {
	FONT-SIZE: 10px
}
.kicker A:hover {
	FONT-SIZE: 10px
}
.kicker A:active {
	FONT-SIZE: 10px
}
H1 {
	MARGIN: 0px; FONT-SIZE: 16px
}
.sp_headlines A:link {
	MARGIN: 8px 0px 0px; FONT-FAMILY: Arial, sans-serif; COLOR: #336699; =
FONT-SIZE: 13px; FONT-WEIGHT: bold
}
.sp_headlines A:visited {
	MARGIN: 8px 0px 0px; FONT-FAMILY: Arial, sans-serif; COLOR: #336699; =
FONT-SIZE: 13px; FONT-WEIGHT: bold
}
.sp_headlines A:hover {
	MARGIN: 8px 0px 0px; FONT-FAMILY: Arial, sans-serif; COLOR: #336699; =
FONT-SIZE: 13px; FONT-WEIGHT: bold
}
.sp_headlines A:visited {
	COLOR: #993366
}
.sp_headlines A:hover {
	COLOR: #993366
}
.sp_contentpadding P {
	FONT: 12px/15px Arial, sans-serif; COLOR: #333333
}
.sp_contentpadding TD {
	FONT: 12px/15px Arial, sans-serif; COLOR: #333333
}
.sp_contentpadding H4 {
	COLOR: #cc3300; FONT-SIZE: 13px; FONT-WEIGHT: bold
}
.sp_contentpadding H5 {
	FONT-SIZE: 12px; FONT-WEIGHT: bold
}
.sp_mainphotocaption {
	COLOR: #cc6666
}
.PersonaSearchTypes UL LI {
	PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: =
5px; PADDING-RIGHT: 5px; BACKGROUND: none transparent scroll repeat 0% =
0%; PADDING-TOP: 0px
}

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/includes/m.css

P {
	FONT: 13px/1.5em Verdana, Helvetica, Arial, sans-serif; COLOR: #333333
}
TD {
	FONT: 13px/1.5em Verdana, Helvetica, Arial, sans-serif; COLOR: #333333
}
H5 {
	FONT-SIZE: 14px; FONT-WEIGHT: bold
}
.cdb_date {
	LINE-HEIGHT: 14pt; FONT-FAMILY: Arial, Helvetica, sans-serif; COLOR: =
#000000; FONT-SIZE: 11px; TEXT-DECORATION: none
}
.headline A:link {
	FONT-FAMILY: Arial, sans-serif; COLOR: #336699; FONT-SIZE: 14px; =
FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.headline A:visited {
	FONT-FAMILY: Arial, sans-serif; COLOR: #336699; FONT-SIZE: 14px; =
FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.headline A:hover {
	COLOR: #cc3300; FONT-WEIGHT: normal; TEXT-DECORATION: underline
}
.mostread A:hover {
	COLOR: #cc3300; FONT-WEIGHT: normal; TEXT-DECORATION: underline
}
.mostread A:link {
	FONT-FAMILY: Arial, sans-serif; COLOR: #666666; FONT-SIZE: 13px; =
FONT-WEIGHT: normal; TEXT-DECORATION: underline
}
.mostread A:visited {
	FONT-FAMILY: Arial, sans-serif; COLOR: #666666; FONT-SIZE: 13px; =
FONT-WEIGHT: normal; TEXT-DECORATION: underline
}
.mostread A:hover {
	FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.cdb_body {
	FONT-FAMILY: Arial, Helvetica, sans-serif; COLOR: #333333; FONT-SIZE: =
13px; FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.cdb_mainphototitle {
	FONT-SIZE: 14px; FONT-WEIGHT: bold; TEXT-DECORATION: none
}
.cdb_mainphotocaption {
	FONT-SIZE: 12px; FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.cdb_mainphotocredit {
	FONT-STYLE: italic; COLOR: #666666; FONT-SIZE: 10px; FONT-WEIGHT: =
normal; TEXT-DECORATION: none
}
.small {
	COLOR: #900; FONT-SIZE: 11px
}
.gray {
	COLOR: #666666; FONT-WEIGHT: normal
}
.smallgray {
	COLOR: #666666; FONT-SIZE: 12px
}
.boldtext {
	FONT-WEIGHT: bold
}
.red {
	COLOR: #cc3300
}
.largeRed {
	COLOR: #cc3300; FONT-SIZE: 15px
}
.larger {
	FONT-SIZE: 15px
}
.large {
	FONT-SIZE: 16px
}
H2.large {
	MARGIN: 0px; FONT-SIZE: 16px
}
H3.larger {
	MARGIN: 0px; FONT-SIZE: 14px; FONT-WEIGHT: normal
}
.kicker {
	COLOR: #666666; FONT-SIZE: 11px
}
.kicker A:link {
	FONT-SIZE: 11px
}
.kicker A:visited {
	FONT-SIZE: 11px
}
.kicker A:hover {
	FONT-SIZE: 11px
}
.kicker A:active {
	FONT-SIZE: 11px
}
H1 {
	MARGIN: 0px; FONT-SIZE: 16px
}
.sp_headlines A:link {
	MARGIN: 8px 0px 0px; FONT-FAMILY: Arial, sans-serif; COLOR: #336699; =
FONT-SIZE: 14px; FONT-WEIGHT: bold
}
.sp_headlines A:visited {
	MARGIN: 8px 0px 0px; FONT-FAMILY: Arial, sans-serif; COLOR: #336699; =
FONT-SIZE: 14px; FONT-WEIGHT: bold
}
.sp_headlines A:hover {
	MARGIN: 8px 0px 0px; FONT-FAMILY: Arial, sans-serif; COLOR: #336699; =
FONT-SIZE: 14px; FONT-WEIGHT: bold
}
.sp_headlines A:visited {
	COLOR: #993366
}
.sp_headlines A:hover {
	COLOR: #993366
}
.sp_contentpadding P {
	FONT: 13px/15px Arial, sans-serif; COLOR: #333333
}
.sp_contentpadding TD {
	FONT: 13px/15px Arial, sans-serif; COLOR: #333333
}
.sp_contentpadding H4 {
	COLOR: #cc3300; FONT-SIZE: 14px; FONT-WEIGHT: bold
}
.sp_contentpadding H5 {
	FONT-SIZE: 13px; FONT-WEIGHT: bold
}
.sp_mainphotocaption {
	COLOR: #cc6666
}

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/includes/l.css

P {
	FONT: 14px/1.5em Verdana, Helvetica, Arial, sans-serif; COLOR: #333333
}
TD {
	FONT: 14px/1.5em Verdana, Helvetica, Arial, sans-serif; COLOR: #333333
}
H5 {
	FONT-SIZE: 15px; FONT-WEIGHT: bold
}
.cdb_date {
	LINE-HEIGHT: 14pt; FONT-FAMILY: Arial, Helvetica, sans-serif; COLOR: =
#000000; FONT-SIZE: 12px; TEXT-DECORATION: none
}
.headline A:link {
	FONT-FAMILY: Arial, sans-serif; COLOR: #336699; FONT-SIZE: 15px; =
FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.headline A:visited {
	FONT-FAMILY: Arial, sans-serif; COLOR: #336699; FONT-SIZE: 15px; =
FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.headline A:hover {
	COLOR: #cc3300; FONT-WEIGHT: normal; TEXT-DECORATION: underline
}
.mostread A:hover {
	COLOR: #cc3300; FONT-WEIGHT: normal; TEXT-DECORATION: underline
}
.mostread A:link {
	FONT-FAMILY: Arial, sans-serif; COLOR: #666666; FONT-SIZE: 14px; =
FONT-WEIGHT: normal; TEXT-DECORATION: underline
}
.mostread A:visited {
	FONT-FAMILY: Arial, sans-serif; COLOR: #666666; FONT-SIZE: 14px; =
FONT-WEIGHT: normal; TEXT-DECORATION: underline
}
.mostread A:hover {
	FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.cdb_body {
	FONT-FAMILY: Arial, Helvetica, sans-serif; COLOR: #333333; FONT-SIZE: =
14px; FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.cdb_mainphototitle {
	FONT-SIZE: 15px; FONT-WEIGHT: bold; TEXT-DECORATION: none
}
.cdb_mainphotocaption {
	FONT-SIZE: 13px; FONT-WEIGHT: normal; TEXT-DECORATION: none
}
.cdb_mainphotocredit {
	FONT-STYLE: italic; COLOR: #666666; FONT-SIZE: 11px; FONT-WEIGHT: =
normal; TEXT-DECORATION: none
}
.small {
	COLOR: #900; FONT-SIZE: 12px
}
.gray {
	COLOR: #666666; FONT-WEIGHT: normal
}
.smallgray {
	COLOR: #666666; FONT-SIZE: 13px
}
.boldtext {
	FONT-WEIGHT: bold
}
.red {
	COLOR: #cc3300
}
.largeRed {
	COLOR: #cc3300; FONT-SIZE: 16px
}
.larger {
	FONT-SIZE: 16px
}
.large {
	FONT-SIZE: 17px
}
H2.large {
	MARGIN: 0px; FONT-SIZE: 17px
}
H3.larger {
	MARGIN: 0px; FONT-SIZE: 15px; FONT-WEIGHT: normal
}
.kicker {
	COLOR: #666666; FONT-SIZE: 12px
}
.kicker A:link {
	FONT-SIZE: 12px
}
.kicker A:visited {
	FONT-SIZE: 12px
}
.kicker A:hover {
	FONT-SIZE: 12px
}
.kicker A:active {
	FONT-SIZE: 12px
}
H1 {
	MARGIN: 0px; FONT-SIZE: 17px
}
.sp_headlines A:link {
	MARGIN: 8px 0px 0px; FONT-FAMILY: Arial, sans-serif; COLOR: #336699; =
FONT-SIZE: 15px; FONT-WEIGHT: bold
}
.sp_headlines A:visited {
	MARGIN: 8px 0px 0px; FONT-FAMILY: Arial, sans-serif; COLOR: #336699; =
FONT-SIZE: 15px; FONT-WEIGHT: bold
}
.sp_headlines A:hover {
	MARGIN: 8px 0px 0px; FONT-FAMILY: Arial, sans-serif; COLOR: #336699; =
FONT-SIZE: 15px; FONT-WEIGHT: bold
}
.sp_headlines A:visited {
	COLOR: #993366
}
.sp_headlines A:hover {
	COLOR: #993366
}
.sp_contentpadding P {
	FONT: 14px/15px Arial, sans-serif; COLOR: #333333
}
.sp_contentpadding TD {
	FONT: 14px/15px Arial, sans-serif; COLOR: #333333
}
.sp_contentpadding H4 {
	COLOR: #cc3300; FONT-SIZE: 15px; FONT-WEIGHT: bold
}
.sp_contentpadding H5 {
	FONT-SIZE: 14px; FONT-WEIGHT: bold
}
.sp_mainphotocaption {
	COLOR: #cc6666
}

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/includes/interstitial.css

#interContainer {
	Z-INDEX: 600; BORDER-BOTTOM: black 1px solid; POSITION: absolute; =
BORDER-LEFT: black 1px solid; PADDING-BOTTOM: 15px; BACKGROUND-COLOR: =
#fff; PADDING-LEFT: 15px; WIDTH: 650px; PADDING-RIGHT: 15px; VISIBILITY: =
hidden; BORDER-TOP: black 1px solid; TOP: 0px; BORDER-RIGHT: black 1px =
solid; PADDING-TOP: 0px; LEFT: 0px
}
#interContainer .headerbar {
	TEXT-ALIGN: right; PADDING-BOTTOM: 5px; PADDING-LEFT: 0px; =
PADDING-RIGHT: 0px; COLOR: gray; PADDING-TOP: 5px
}
#interContainer .headerbar A {
	FONT-SIZE: 120%; TEXT-DECORATION: none
}
#interContent {
	BACKGROUND-COLOR: white
}
#interVeil {
	Z-INDEX: 550; POSITION: absolute; FILTER: =
progid:DXImageTransform.Microsoft.alpha(opacity=3D80); WIDTH: 10px; =
BACKGROUND: url(/Assets/dm/blackdot.gif) black; VISIBILITY: hidden; TOP: =
0px; RIGHT: 0px; opacity: 0.8
}

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/includes/sitelife.css

.userStatus_class {
	DISPLAY: none
}
.customBlogFeed {
	DISPLAY: none
}
#personaDest .PersonaTabs_Container {
	DISPLAY: none
}
#cdbPluckPersonaBlogHeader {
	DISPLAY: none
}
.hideThisClass {
	DISPLAY: none
}
DIV.personaSearchForm {
	WIDTH: 550px
}
DIV.Blog_Container {
	BORDER-BOTTOM: #ccc 1px solid; BORDER-LEFT: #ccc 1px solid; =
PADDING-BOTTOM: 0px; PADDING-LEFT: 10px; PADDING-RIGHT: 10px; =
BACKGROUND: url(/Assets/pluck/gradient.jpg) repeat-x 50% top; CLEAR: =
both; BORDER-TOP: #ccc 1px solid; BORDER-RIGHT: #ccc 1px solid; =
PADDING-TOP: 10px
}
DIV.PersonaHeader_Container {
	BORDER-BOTTOM: #ccc 1px solid; BORDER-LEFT: #ccc 1px solid; =
PADDING-BOTTOM: 0px; PADDING-LEFT: 10px; PADDING-RIGHT: 10px; =
BACKGROUND: url(/Assets/pluck/gradient.jpg) repeat-x 50% top; CLEAR: =
both; BORDER-TOP: #ccc 1px solid; BORDER-RIGHT: #ccc 1px solid; =
PADDING-TOP: 10px
}
DIV.PersonaTabs_Container {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; BACKGROUND: =
url(/Assets/pluck/tabs.jpg) repeat-x; HEIGHT: 25px; BORDER-TOP: 0px; =
BORDER-RIGHT: 0px
}
A.PersonaTabs_On {
	BACKGROUND: url(/Assets/pluck/tabon.jpg) repeat-x
}
DIV.PersonaTabs_Container A.PersonaTabs_On {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; COLOR: #993333; BORDER-TOP: 0px; =
BORDER-RIGHT: 0px
}
DIV.PersonaTabs_Container A.PersonaTabs_Off {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; BACKGROUND: =
url(/Assets/pluck/taboff.jpg) repeat-x; COLOR: #333; BORDER-TOP: 0px; =
FONT-WEIGHT: bold; BORDER-RIGHT: 0px
}
DIV.PersonaStyle_SectionHead {
	BACKGROUND: url(/Assets/pluck/titlebg.jpg) repeat-x; COLOR: #333
}
DIV.PersonaStyle_SectionHead A:link {
	COLOR: #666
}
DIV.PersonaStyle_SectionHead A:visited {
	COLOR: #666
}
DIV#GallerySubmissionDiv {
	HEIGHT: 1px; VISIBILITY: hidden
}
.PluckUserAvatar {
	WIDTH: 60px
}
#sitelifePersonaCustomProfile {
	WIDTH: 550px; FONT-FAMILY: verdana, geneva, sans-serif; FONT-SIZE: 11px
}
.customProfile-left-wrapper {
	WIDTH: 380px; FLOAT: left
}
.customProfile-right-wrapper {
	WIDTH: 202px; FLOAT: left; MARGIN-LEFT: 5px
}
.customProfile-left-wrapper P {
	MARGIN: 5px 5px 15px; CLEAR: both
}
.customProfile-right-wrapper P {
	MARGIN: 5px 5px 15px; CLEAR: both
}
.customProfile-noedit-wrapper P {
	MARGIN: 5px 5px 15px; CLEAR: both
}
.customProfile-left-wrapper P STRONG {
	TEXT-ALIGN: right; WIDTH: 100px; DISPLAY: block; FLOAT: left; =
MARGIN-RIGHT: 10px
}
.customProfile-right-wrapper P STRONG {
	TEXT-ALIGN: right; WIDTH: 100px; DISPLAY: block; FLOAT: left; =
MARGIN-RIGHT: 10px
}
.customProfile-noedit-wrapper P STRONG {
	TEXT-ALIGN: right; WIDTH: 100px; DISPLAY: block; FLOAT: left; =
MARGIN-RIGHT: 10px
}
.customProfile-left-wrapper P SPAN {
	WIDTH: 255px; DISPLAY: block; OVERFLOW: auto
}
.customProfile-right-wrapper P SPAN {
	WIDTH: 255px; DISPLAY: block; OVERFLOW: auto
}
.customProfile-noedit-wrapper P SPAN {
	WIDTH: 255px; DISPLAY: block; OVERFLOW: auto
}
.customProfile-right-wrapper UL {
	LIST-STYLE-TYPE: none; PADDING-LEFT: 10px; MARGIN-BOTTOM: 15px
}
.customProfile-right-wrapper UL LI {
	MARGIN-BOTTOM: 10px
}
.PersonaSearchTypes UL {
	MARGIN: 5px 0px 15px; PADDING-LEFT: 10px
}
.PersonaSearchTypes UL LI {
	PADDING-RIGHT: 5px; DISPLAY: block; MARGIN-BOTTOM: 5px; FLOAT: left; =
FONT-SIZE: 12px; MARGIN-RIGHT: 5px; BORDER-RIGHT: #ccc 1px solid
}
.PersonaSearchTypes UL LI.selected {
	FONT-WEIGHT: 800
}
.PersonaSearchTypes UL LI.last {
	BORDER-RIGHT: #fff 0px solid
}
.PersonaSearchTypes A:link {
	COLOR: #005
}
.PersonaSearchTypes A:visited {
	COLOR: #005
}
.PersonaSearchTypes H3 {
	PADDING-BOTTOM: 5px; PADDING-LEFT: 10px; PADDING-RIGHT: 0px; COLOR: =
#333; PADDING-TOP: 5px
}
.personaSearchKey SPAN {
	MARGIN: 0px; WIDTH: 60px; DISPLAY: block; FLOAT: left
}
#filter SPAN {
	PADDING-LEFT: 10px; DISPLAY: block; FLOAT: left; HEIGHT: 3em
}
#filter SELECT {
	MARGIN: 0px 150px 5px 0px; FLOAT: left
}
.personaSearchKey {
	MARGIN: 0px 0px 15px 10px; COLOR: #333; FONT-SIZE: 14px; FONT-WEIGHT: =
800
}
.personaSearchKey INPUT {
	FONT-SIZE: 14px
}
.personaSearchForm {
	WIDTH: 582px
}
.personaSearchForm FORM {
	PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; CLEAR: =
both; PADDING-TOP: 15px
}
.personaSearchForm FORM INPUT.button {
	MARGIN: 10px 0px 15px 10px; WIDTH: 100px; DISPLAY: block; CLEAR: both
}
.PersonaSearchResults {
	MARGIN: 0px 5px; BORDER-TOP: #ddd 3px double
}
#displayResponse2 .PersonaSearchResults H1 {
	BACKGROUND-IMAGE: none
}
#displayResponse2 .PersonaSearchResults .PersonaSearchResultsItem H2 A {
	BACKGROUND-IMAGE: none
}
.PersonaSearchResultsItem {
	BORDER-BOTTOM: #ddd 1px solid; MARGIN: 5px 0px 0px; CLEAR: both; =
FONT-SIZE: 12px
}
.PersonaSearchResultsItem IMG {
	MARGIN: 0px 10px 10px 0px; WIDTH: 80px; DISPLAY: block; FLOAT: left; =
CLEAR: both
}
.PersonaSearchResultsItem P {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; BORDER-TOP: 0px; BORDER-RIGHT: =
0px
}
.personaSearchPagination {
	MARGIN: 0px 0px 5px 10px; FONT-WEIGHT: 800
}
#sitelifePersonaCustomProfile H4 {
	MARGIN: 5px 0px; FONT-FAMILY: arial, helvetica, sans-serif; FONT-SIZE: =
16px
}
.customProfile-noedit-wrapper {
	BORDER-BOTTOM: #ddd 1px solid; BORDER-LEFT: #ddd 1px solid; =
PADDING-BOTTOM: 5px; MARGIN: 0px; PADDING-LEFT: 5px; WIDTH: 525px; =
PADDING-RIGHT: 5px; BORDER-TOP: #ddd 1px solid; BORDER-RIGHT: #ddd 1px =
solid; PADDING-TOP: 5px
}
#sitelifePersonaCustomProfile H5 {
	TEXT-ALIGN: center; MARGIN: 10px 0px 0px; FONT-FAMILY: arial, =
helvetica, sans-serif; FONT-SIZE: 14px; FONT-WEIGHT: normal
}
#sitelifePersonaCustomProfile H6 {
	MARGIN: 10px 0px 0px; FONT-FAMILY: arial, helvetica, sans-serif; =
FONT-SIZE: 14px
}
DIV.BloggerProfile_Container {
	BORDER-BOTTOM: #993333 1px dotted; BORDER-LEFT: #993333 1px dotted; =
PADDING-BOTTOM: 4px; BACKGROUND-COLOR: #fff; MARGIN: 3px 0px 10px; =
PADDING-LEFT: 4px; PADDING-RIGHT: 4px; BORDER-TOP: #993333 1px dotted; =
BORDER-RIGHT: #993333 1px dotted; PADDING-TOP: 4px
}
TABLE.BloggerProfile_Table {
	TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; =
WIDTH: 100%; PADDING-RIGHT: 0px; TABLE-LAYOUT: fixed; PADDING-TOP: 0px
}
TD.BloggerProfile_TableImg {
	TEXT-ALIGN: center; WIDTH: 80px; VERTICAL-ALIGN: top
}
TABLE.BloggerProfile_Table DIV.BloggerProfile_Title {
	MARGIN: 5px 0px 5px 15px; FONT-FAMILY: Times; COLOR: #993333; =
FONT-SIZE: 24px; FONT-WEIGHT: bold; TEXT-DECORATION: none
}
TABLE.BloggerProfile_Table DIV.BloggerProfile_Title A:link {
	MARGIN: 5px 0px 5px 15px; FONT-FAMILY: Times; COLOR: #993333; =
FONT-SIZE: 24px; FONT-WEIGHT: bold; TEXT-DECORATION: none
}
TABLE.BloggerProfile_Table DIV.BloggerProfile_Title A:visited {
	MARGIN: 5px 0px 5px 15px; FONT-FAMILY: Times; COLOR: #993333; =
FONT-SIZE: 24px; FONT-WEIGHT: bold; TEXT-DECORATION: none
}
DIV.BloggerProfile_TagLine {
	MARGIN: 0px 0px 10px 33px; COLOR: #666; FONT-SIZE: 11px
}
DIV.BlogMain_EntryTitle {
	FONT: 18px Arial; TEXT-DECORATION: none
}
DIV.BlogMain_EntryTitle A:link {
	FONT: 18px Arial; TEXT-DECORATION: none
}
DIV.BlogMain_EntryTitle A:visited {
	FONT: 18px Arial; COLOR: #6699cc; TEXT-DECORATION: none
}
DIV.BlogMain_EntryDate {
	COLOR: #999999; FONT-SIZE: 10px; PADDING-TOP: 3px
}
DIV.BlogMain_EntryContent {
	FONT: 12px Arial; COLOR: #666; PADDING-TOP: 5px
}
TD.PersonaBlog_TableLeft {
	TEXT-ALIGN: left; WIDTH: 67%; PADDING-RIGHT: 3%; VERTICAL-ALIGN: top
}
DIV.BlogMain_EntryDetails {
	TEXT-ALIGN: right; FONT-SIZE: 11px
}
DIV.BlogMain_EntryDetails A {
	TEXT-ALIGN: right; FONT-SIZE: 11px
}
DIV.Blog_AddToWatchlist {
	MARGIN: 3px 0px
}
DIV.Blog_AddToWatchlist A:link {
	BORDER-BOTTOM: #ccc 0px solid; TEXT-ALIGN: center; BORDER-LEFT: #ccc =
0px solid; BACKGROUND-COLOR: #336699; HEIGHT: 16px; COLOR: #ffffff; =
FONT-SIZE: 11px; VERTICAL-ALIGN: middle; BORDER-TOP: #ccc 0px solid; =
FONT-WEIGHT: bold; BORDER-RIGHT: #ccc 0px solid; TEXT-DECORATION: none
}
DIV.Blog_AddToWatchlist A:visited {
	BORDER-BOTTOM: #ccc 0px solid; TEXT-ALIGN: center; BORDER-LEFT: #ccc =
0px solid; BACKGROUND-COLOR: #336699; HEIGHT: 16px; COLOR: #ffffff; =
FONT-SIZE: 11px; VERTICAL-ALIGN: middle; BORDER-TOP: #ccc 0px solid; =
FONT-WEIGHT: bold; BORDER-RIGHT: #ccc 0px solid; TEXT-DECORATION: none
}
DIV.Blog_AddToWatchlist A:hover {
	COLOR: #ccc
}
DIV.PersonaHeader_Title {
	TEXT-ALIGN: left; DISPLAY: inline; FONT-FAMILY: times; COLOR: #333; =
FONT-SIZE: 22px; FONT-WEIGHT: bold
}
DIV.PersonaHeader_Info {
	PADDING-BOTTOM: 10px; WIDTH: 100%; FONT: 12px verdana; OVERFLOW: hidden
}
TD.PersonaBlog_TableRight {
	TEXT-ALIGN: left; BORDER-LEFT: #993333 1px dotted; WIDTH: 30%; =
VERTICAL-ALIGN: top
}
DIV.BlogNav {
	TEXT-ALIGN: right; PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; =
PADDING-RIGHT: 0px; FONT-SIZE: 10px; PADDING-TOP: 10px
}
A.BlogNav_Off {
	FONT-SIZE: 10px
}
DIV.Ratings_Container {
	PADDING-BOTTOM: 5px; BACKGROUND-COLOR: #f6f6dc; PADDING-LEFT: 5px; =
PADDING-RIGHT: 5px; MARGIN-BOTTOM: 5px; COLOR: #666; FONT-SIZE: 10px; =
PADDING-TOP: 5px
}
DIV.Ratings_YourRating {
	FONT-SIZE: 10px
}
SPAN.Ratings_Heading {
	FONT-SIZE: 10px
}
DIV.Sitelife_PluckLogo {
	DISPLAY: none
}

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://sitelife.crainsdetroit.com/ver1.0/SiteLifeProxy?sid=sitelife.crainsdetroit.com

    //multi site enabled -- sid: sitelife.crainsdetroit.com=20
    document.write("<link =
href=3D'http://sitelife.crainsdetroit.com/ver1.0/SiteLifeCss?sid=3Dsiteli=
fe.crainsdetroit.com' rel=3D'stylesheet' type=3D'text/css' />");
    document.write("<script type=3D'text/javascript' =
src=3D'http://sitelife.crainsdetroit.com/ver1.0/SiteLifeScripts?sid=3Dsit=
elife.crainsdetroit.com'></script>");
	document.write("<link =
href=3D'http://www.crainsdetroit.com/communities/styles/default/css/pluck=
Override.css&ver=3D20100119' rel=3D'stylesheet' type=3D'text/css' />");

///<summary>constructor to create a new SiteLifeProxy</summary>
function SiteLifeProxy(url) {
    // User Configurable Properties - these can be set at any time

    // your apiKey, this value must be set!
    this.apiKey =3D null;
   =20
    this.siteLifeDomainOverride =3D null;
    this.siteLifeServerBaseOverride =3D null;
    this.customerCSSOverride =3D null;
    this.customerForumPagePathOverride =3D null;
    this.gcid =3D "Widgets1.0";

    // sniff the browser for custom behaviors
    this.__isExplorer =3D =
navigator.userAgent.toLowerCase().indexOf('msie') !=3D -1;
    this.__isSafari =3D =
navigator.userAgent.toLowerCase().indexOf('safari') !=3D -1;
    this.__isMac =3D navigator.platform.toLowerCase().indexOf('mac') =
!=3D -1;
    this.__isMacIE =3D this.__isMac && this.__isExplorer;
   =20
    // if enabled, spit out debug information through alert()
    this.debug =3D false;
   =20
    // used to track the id of the handler expecting the results from =
the immediately preceeding method invocation
    // this is used only for testing purposes
    this.lastHandlerId =3D "";
   =20
    // Methods You can Overide
    //
    // OnSuccess(returnValue) - is passed the return value at the end of =
a successful call, default does nothing
    // OnError(msg) - is passed an error message if a problem occurs
    // OnDebug(msg) - is called when debugging is enabled
    =20
    this.__baseUrl =3D url;
    this.__sendInvokeCount =3D 0;
   =20
    this.__eventHandlers =3D new Object();
};

SiteLifeProxy.prototype.AddEventHandler =3D function (event_name, =
callback) {
	var eventList =3D this.__eventHandlers[event_name];
	if (!eventList){
		eventList =3D new Array();
		this.__eventHandlers[event_name] =3D eventList;
	}
	eventList.push(callback);
};

SiteLifeProxy.prototype.FireEvent =3D function (event_name) {
    var func;
    var handlers;
    if(handlers =3D this.__eventHandlers[event_name]) {
        var A =3D new Array(); for (var i =3D 1; i <  =
this.FireEvent.arguments.length; i++){ A[i - 1] =3D =
this.FireEvent.arguments[i];}
        for(var x=3D0;x<handlers.length;x++){
			func =3D handlers[x];
			if (func.__Bound){
			   if (handlers.length =3D=3D 1) return func();
			   func();
			}
			if (handlers.length =3D=3D 1) return func.apply(this, A);
			func.apply(this, A);
    }
}
};

SiteLifeProxy.prototype.ScriptId =3D function() { return this.__scriptId =
=3D "_bb_script_" + this.__sendInvokeCount++; }

// Default error handler for the proxy object, simple alert
SiteLifeProxy.prototype.OnError =3D function(msg) {
   alert("OnError: " + msg);
}

// Default debug handler for the proxy object, simple alert
SiteLifeProxy.prototype.OnDebug =3D function(msg) {
    if (this.debug)
        alert("Debug: " + msg);
}

// fetch a named request parameter from the page URL
SiteLifeProxy.prototype.GetParameter =3D function(parameterName) {
    var key =3D parameterName + "=3D";
    var parameters =3D document.location.search.substring(1).split("&");
    for (var i =3D 0; i < parameters.length; i++)
    {
        if (parameters[i].indexOf(key) =3D=3D 0)
            return parameters[i].substring(key.length);
    }
    return null;
};

// browser independent method to get elements by ID
SiteLifeProxy.prototype.GetElement =3D function(id) {
    this.OnDebug("GetElement " + id);
    if (document.getElementById)
        return document.getElementById(id);
    if (document.all)
        return document.all[id];
    this.OnError("No support for GetElement() in this browser");
    return null;
}

// browser independent method to get elements by tag name
SiteLifeProxy.prototype.GetTags =3D function(tagName) {
    this.OnDebug("GetTags " + tagName);
    if (document.getElementsByTagName)
        return document.getElementsByTagName(tagName);
    if (document.all)
       return document.tags(tagName);
    this.OnError("No support for GetTags() in this browser");
    return null;
}

SiteLifeProxy.prototype.Trim =3D function(s) {
	return s.replace(/^\s+|\s+$/g,"");

};

SiteLifeProxy.prototype.EscapeValue =3D function(s) {
    if (s =3D=3D null) return null;
    return encodeURIComponent(s);
};

SiteLifeProxy.prototype.__ArrayValidation =3D function(s)
{
    if ((typeof s =3D=3D 'undefined') || (s.length < 1))
    {
        return false;
    }
    return true;
}

SiteLifeProxy.prototype.__CheckErrorHandler =3D function(onError) {
    this.OnDebug("__CheckErrorHandler " + onError);
    if ((typeof onError =3D=3D 'undefined') || (eval("window." + =
onError) =3D=3D null))
    {
      return "gSiteLife.OnError";
    }
    return onError;
}
SiteLifeProxy.prototype.SetCookie =3D function SetCookie( name, value) {
    var today =3D new Date(); today.setTime( today.getTime() );
   =20
    var expires_date =3D new Date( today.getTime() + 126144000000 );
   =20
    document.cookie =3D name + "=3D" +escape( value ) +
    ";expires=3D" + expires_date.toGMTString() +=20
    ";path=3D/" + ";domain=3Dcrainsdetroit.com" ;
}
// validate and fetch arguments, if the argument is missing and =
optional, we return an empty string       =20
SiteLifeProxy.prototype.__GetArgument =3D function(variableName, =
variableValue, isRequired, isArray) {
    this.OnDebug("__GetArgument " + variableName + "," + variableValue + =
"," + isRequired + "," + isArray);
    if (typeof variableValue =3D=3D "undefined" || variableValue =3D=3D =
null || variableValue =3D=3D "")
    {
        if (isRequired)
        {
            this.OnError("Missing required parameter " + variableName);
            this.__isValid =3D false;
            return "";
        }
        else
            return "";
    }
    if (isRequired && isArray)=20
    {
        if (!this.__ArrayValidation(variableValue))=20
        {
            this.OnError("Invalid array parameter " + variableName);
            this.__isValid =3D false;
            return "";
        }
    }
    return "&" + variableName + "=3D" + this.EscapeValue(variableValue);
};

SiteLifeProxy.prototype.__StripAnchorFromUrl =3D function(url) {
    var aIdx =3D url.indexOf("#");
    return aIdx =3D=3D -1 ? url : url.substring(0, aIdx);
}

SiteLifeProxy.prototype.__SafeAppendUrlValue =3D function(url, key, =
value) {
    url +=3D url.indexOf("?") !=3D -1 ? "&" : "?";
    return url + key + "=3D" + value;
}

SiteLifeProxy.prototype.__AppendUrlValues =3D function (url)
{
	time =3D new Date();
    url +=3D this.__GetArgument("plckNoCache", time.getTime(), false, =
false);
    url +=3D this.__GetArgument("plckApiKey", this.apiKey, true, false);
    		url +=3D this.__GetArgument("pckgp", this["pckgp"], false, false);
    		url +=3D this.__GetArgument("pckgpp", this["pckgpp"], false, =
false);
    		url +=3D this.__GetArgument("pckvp", this["pckvp"], false, false);
    		url +=3D this.__GetArgument("pckvd", this["pckvd"], false, false);
    		url +=3D this.__GetArgument("pckvg", this["pckvg"], false, false);
    		url +=3D this.__GetArgument("pckps", this["pckps"], false, false);
    		url +=3D this.__GetArgument("pckcbu", this["pckcbu"], false, =
false);
    		url +=3D this.__GetArgument("pckdt", this["pckdt"], false, false);
    		url +=3D this.__GetArgument("pckcgp", this["pckcgp"], false, =
false);
    		url +=3D this.__GetArgument("pckas", this["pckas"], false, false);
    		url +=3D this.__GetArgument("pckli", this["pckli"], false, false);
    		url +=3D this.__GetArgument("pcklo", this["pcklo"], false, false);
    		url +=3D this.__GetArgument("pckr", this["pckr"], false, false);
    		url +=3D this.__GetArgument("pckfp", this["pckfp"], false, false);
    		url +=3D this.__GetArgument("pckov", this["pckov"], false, false);
    		url +=3D this.__GetArgument("pckpm", this["pckpm"], false, false);
    		url +=3D this.__GetArgument("pcksld", this["pcksld"], false, =
false);
    		url +=3D this.__GetArgument("pcksbu", this["pcksbu"], false, =
false);
    		url +=3D this.__GetArgument("pckcss", this["pckcss"], false, =
false);
    		url +=3D this.__GetArgument("pckfpp", this["pckfpp"], false, =
false);
    		url +=3D this.__GetArgument("pckppp", this["pckppp"], false, =
false);
                            url +=3D this.__GetArgument("sid", =
gSiteLife.SID, false, false);
               =20
    return url;
}

SiteLifeProxy.prototype.ReloadPage =3D function(params) {
    var sSearch =3D window.location.search.substring(1);
    var sNVPs =3D sSearch.split('&');
    var newSearch =3D "";
    var anchorPoint =3D "";
    for(var k in params) {
        if(k =3D=3D "extend") continue;
		if(k =3D=3D "#") {
			anchorPoint =3D '#' + params[k];
			continue;
		}	=09
        if(newSearch =3D=3D "") newSearch +=3D "?"; else newSearch +=3D =
"&";
        newSearch +=3D k + '=3D' + params[k];
    }
    for (var i =3D 0; i < sNVPs.length; i++) {
        var kv =3D sNVPs[i].split('=3D');
        if(kv[0] && kv[0].indexOf('plck') !=3D 0 && ! params[kv[0]]) {
            newSearch +=3D "&" + sNVPs[i];       =20
        }
    }
           =20
    if(anchorPoint !=3D ""){=20
        window.location.hash =3D anchorPoint;
    }
    window.location.search =3D newSearch;
}

function loadScript (url, callback) {
	var script =3D document.createElement('script');
	script.type =3D 'text/javascript';
	script.charset =3D 'utf-8';
	if (callback)
		script.onload =3D script.onreadystatechange =3D function() {
			if (script.readyState && script.readyState !=3D 'loaded' && =
script.readyState !=3D 'complete')
				return;
			script.onreadystatechange =3D script.onload =3D null;
			callback();
		};
	script.src =3D url;
	document.getElementsByTagName('head')[0].appendChild (script);
}

// Cookie and HTTP Param manipulations
// generates a list of user keys
function getCurrentUserFromCookie() {
    var ca =3D document.cookie.split(';');
    for (var i =3D 0; i < ca.length; i++) {
        var c =3D ca[i];
        while (c.charAt(0) =3D=3D=3D " ") c =3D c.substring(1, =
c.length);
        var eqIndex =3D c.indexOf("=3D");
        if (eqIndex > 0) {
            name =3D c.substring(0, eqIndex);
            value =3D c.substring(eqIndex + 1);
            if (name.toLowerCase() =3D=3D 'hd') {
                value =3D unescape(value);
                value =3D value.split('|');
		            =09
                return value[0];
            }
        }
    }
    return null;
}

function createSrcUrl(baseUrl, url, userId, gcid, currentTime) {
    return srcUrl =3D baseUrl + "/Stats/Tracker.gif" + "?plckUrl=3D" + =
encodeURIComponent(url) + "&plckUserId=3D" + userId + "&plckGcid=3D" + =
gcid + "&plckCurrentTime=3D" + currentTime;
}


SiteLifeProxy.prototype.__InsertTrackerNode =3D function(baseUrl, =
requestUrl, userIdTrckr, gcid, currentTime) {
	// add script node for tracker
	if (document.getElementById('slImgNodeTrckr') =3D=3D=3D null) {
	    var trackImgNode =3D document.createElement('img');
	    trackImgNode.setAttribute('id', "slImgNodeTrckr");
	    trackImgNode.setAttribute('src', createSrcUrl(gSiteLife.__baseUrl, =
requestUrl, userIdTrckr, gcid, currentTime));
	    if (trackImgNode.style.setAttribute) {
			trackImgNode.style.setAttribute('display', 'none');
		} else {
			trackImgNode.setAttribute('style', 'display:none');
		}
	    document.getElementsByTagName('body')[0].appendChild =
(trackImgNode);
	}
}

SiteLifeProxy.prototype.__Send =3D function(url, scriptToUse, =
callbackName, args) {
    this.OnDebug("_Send " + url);
   =20
    // setup some items for tracker
    var requestUrl =3D location.href;
    var userIdTrckr =3D getCurrentUserFromCookie();
    var me =3D this;
   =20
    function gLoadScript(url, callbackName) {
      var script =3D document.createElement('script');
        var baseUrl =3D gSiteLife.__baseUrl;
      script.setAttribute('type', 'text/javascript');
    	script.setAttribute('charset', 'utf-8');
    	script.setAttribute('src', url + (callbackName ? '&EVENT_ID=3D' + =
callbackName : ''));
    	document.getElementsByTagName('head')[0].appendChild (script);
    }
   =20
    function initializeTracking() {
    	var d =3D new Date();
	=09
		// We are using jQuery's object detection to determine if the browser =
is ready for us
		// to insert our stat tracker node.
		// Mozilla, Opera and webkit nightlies currently support this event
		if (document.addEventListener) {
			// Use the handy event callback
			document.addEventListener( "DOMContentLoaded", function(){=0A=
				document.removeEventListener( "DOMContentLoaded", arguments.callee, =
false );=0A=
				me.__InsertTrackerNode(gSiteLife.__baseUrl, requestUrl, userIdTrckr, =
me.gcid, d.getTime());=0A=
			}, false );
		=09
		// If IE event model is used
		} else if (document.attachEvent) {
			// ensure firing before onload,=0A=
			// maybe late but safe also for iframes=0A=
			document.attachEvent("onreadystatechange", function(){=0A=
				if ( document.readyState =3D=3D=3D "complete" ) {=0A=
					document.detachEvent( "onreadystatechange", arguments.callee );=0A=
					me.__InsertTrackerNode(gSiteLife.__baseUrl, requestUrl, =
userIdTrckr, me.gcid, d.getTime());=0A=
				}=0A=
			});=0A=
=0A=
			// If IE and not an iframe=0A=
			// continually check to see if the document is ready=0A=
			if ( document.documentElement.doScroll && window =3D=3D window.top ) =
(function(){=0A=
=0A=
				try {=0A=
					// If IE is used, use the trick by Diego Perini=0A=
					// http://javascript.nwbox.com/IEContentLoaded/=0A=
					document.documentElement.doScroll("left");=0A=
				} catch( error ) {=0A=
					setTimeout( arguments.callee, 0 );=0A=
					return;=0A=
				}=0A=
=0A=
				// and execute any waiting functions=0A=
				me.__InsertTrackerNode(gSiteLife.__baseUrl, requestUrl, userIdTrckr, =
me.gcid, d.getTime());=0A=
			})();
		}=09
    }
   =20
    function bind(_function, _this, _arguments) {
      var f =3D function() {
        _function.apply(_this, _arguments);
      };
      f['__Bound'] =3D true;
      return f;
    };
    var func;
    if ((typeof callbackName =3D=3D 'string') && (func =3D =
this.__eventHandlers[callbackName]) && (typeof func =3D=3D 'function') =
&& !func['__Bound']) {
      this.__eventHandlers[callbackName] =3D bind(func, this, args);
    }
   =20
    //append our various parameters as necessary
    url =3D this.__AppendUrlValues(url);
    this.OnDebug("_Send (updated) " + url);
    // add the script node to the document
    if (document.createElement && ! this.__isMacIE) {
        gLoadScript(url, callbackName);
        initializeTracking();
        return;
    }

    // could fall back to sync at this point, but will bust if the page =
is already loaded

    this.OnError("No support for async in this browser");
}

SiteLifeProxy.prototype.Logout =3D function(ScriptToUse, IsRestPage) {
    var plckRest =3D IsRestPage ? true : false;
    this.__Send(this.__baseUrl + '/Utility/Logout?plckRedirectUrl=3D' + =
escape(window.location.href) + '&plckRest=3D' + plckRest, ScriptToUse);
    return false;
}

SiteLifeProxy.prototype.AddLoadEvent =3D function(func) {
if(window.addEventListener){
 window.addEventListener("load", func, false);
}else{
 if(window.attachEvent){
   window.attachEvent("onload", func);
 }else{
   if(document.getElementById){
    var oldonload =3D window.onload;
    if (typeof window.onload !=3D 'function') {
      window.onload =3D func;
    } else {
      window.onload =3D function() {
       if (oldonload) {
        oldonload();
       }
       func();
}}}}}}

SiteLifeProxy.prototype.AdInsertHelper =3D function() {
    for(var src in gSiteLife.__adsToInsert) {
        if(src =3D=3D "extend") continue;
        var dest =3D gSiteLife.__adsToInsert[src];
        var parent =3D document.getElementById(dest);
		var newChild =3D document.getElementById(src);
		if( ! parent || ! newChild ) {continue; }
		parent.replaceChild( newChild, document.getElementById(dest + =
"Child"));
		newChild.style.display =3D "block"; parent.style.display =3D "block";
    }
}

SiteLifeProxy.prototype.InsertAds =3D function(source, destination) {
gSiteLife.__adsToInsert =3D new Object();
for(ii=3D0; ii< this.InsertAds.arguments.length; ii+=3D2) { =
gSiteLife.__adsToInsert[this.InsertAds.arguments[ii]] =3D =
this.InsertAds.arguments[ii+1];}
this.AddLoadEvent(gSiteLife.AdInsertHelper);
}

SiteLifeProxy.prototype.TitleTag =3D function() {
 var titleTag =3D document.getElementById("plckTitleTag");
 return titleTag ? titleTag.innerText || titleTag.textContent : null;
 }

SiteLifeProxy.prototype.WriteDiv =3D function(id, divClass) {
    var cssClass =3D divClass ? divClass : "";
    document.write('<div id=3D"'+id+'" class=3D"'+cssClass+'"></div>'); =
return id;
}

SiteLifeProxy.prototype.InnerHtmlWrite =3D function(elementId, =
innerContents ) {
    var el =3D document.createElement("div");
    try {
        if(document.location.href.indexOf("debug=3Dtrue") > -1) {
            el.innerHTML +=3D "<div style=3D'border:1px solid =
red;'><span style=3D'background-color:red; color:white; =
position:absolute; cursor:pointer; font-size:8pt;' =
onclick=3D'DebugShowInnerHTML(\"${plckElementId}\",\"http://sitelife.crai=
nsdetroit.com/ver1.0/Proxies/Default.rails?&sid=3Dsitelife.crainsdetroit.=
com&pckcss=3Dhttp://www.crainsdetroit.com/communities/styles/default/css/=
pluckOverride.css%26ver=3D20100119\");'>&nbsp;?&nbsp;</span><div>" + =
innerContents + "</div></div>";
        } else {
            el.innerHTML +=3D innerContents;
            el.style.display =3D "inline";
        }
        var destDiv =3D document.getElementById(elementId);
        while (destDiv.childNodes.length >=3D 1) {
             destDiv.removeChild(destDiv.childNodes[0]);
        }
       =20
        destDiv.appendChild(el);
    } catch (error) {
        alert(elementId + " Error "  + error.number + ": " + =
error.description);
    }
}

SiteLifeProxy.prototype.SortTimeStampDescending =3D =
"TimeStampDescending";
SiteLifeProxy.prototype.SortTimeStampAscending =3D "TimeStampAscending";
SiteLifeProxy.prototype.SortRecommendationsDescending =3D =
"RecommendationsDescending";
SiteLifeProxy.prototype.SortRecommendationsAscending =3D =
"RecommendationsAscending";
SiteLifeProxy.prototype.SortRatingDescending =3D "RatingDescending";
SiteLifeProxy.prototype.SortRatingAscending =3D "RatingAscending";
SiteLifeProxy.prototype.SortAlphabeticalAscending =3D =
"AlphabeticalAscending";
SiteLifeProxy.prototype.SortAlphabeticalDescending =3D =
"AlphabeticalDescending";
SiteLifeProxy.prototype.KeyTypeExternalResource =3D "ExternalResource";
       =20



SiteLifeProxy.prototype.PersonaHeaderRequest =3D function(UserId) {
    var url =3D this.__baseUrl + =
'/Persona/PersonaHeader?plckElementId=3DpersonaHDest&plckUserId=3D'+ =
UserId;
    this.__Send(url, "personaHeaderScript", 'persona:header', =
arguments);
}
SiteLifeProxy.prototype.PersonaHeader =3D function(UserId) {
    this.WriteDiv("personaHDest", "Persona_Main");
        this.PersonaHeaderRequest(UserId);=20
}
SiteLifeProxy.prototype.PersonaHeaderInbox =3D function() {
	// if DAAPI proxy is not present, fail gracefully
	if (!document.getElementById('PrivateMessageInbox') || =
!window.RequestBatch || !window.PrivateMessageFolderList) {
		var pmContainer =3D =
document.getElementById('PersonaHeader_PrivateMessageContent');
		if (pmContainer) {
			pmContainer.style.display =3D 'none';
		}
		return;
	}

	var rb =3D new RequestBatch();
	rb.AddToRequest(new PrivateMessageFolderList());
	rb.BeginRequest(serverUrl,
		function(responseBatch) {
			var count =3D '';
			try {
				if (responseBatch && responseBatch.Messages && =
responseBatch.Messages.length && responseBatch.Messages[0].Message =
=3D=3D 'ok') {
					var folders =3D =
responseBatch.Responses[0].PrivateMessageFolderList.FolderList;
					for (var i =3D 0; i < folders.length; i++) {
						var f =3D folders[i];
						if (f.FolderID =3D=3D 'Inbox') { count =3D f.UnreadMessageCount; =
break; }
					}
				}
			} catch (e) {}
			var inboxStr =3D "Inbox ({0})";
			var idx =3D inboxStr.indexOf("{0}");
			if (inboxStr =3D=3D '' || idx >=3D -1)
				inboxStr =3D inboxStr.substring(0, idx) + count + =
inboxStr.substring(idx+3);
			var inbox =3D document.getElementById('PrivateMessageInbox');
			inbox.innerHTML =3D inboxStr;
			if (count > 0) inbox.style.fontWeight =3D 'bold';
		});
}

SiteLifeProxy.prototype.Persona =3D function(UserId) {
    this.WriteDiv("personaDest", "Persona_Main");
    var action =3D this.GetParameter("plckPersonaPage");
    if(action && (typeof this[action] =3D=3D 'function')) =
this[action](UserId);
             else this.PersonaHome(UserId);
    }
SiteLifeProxy.prototype.LoadPersonaPage =3D function(PageName, UserId) {
    var params =3D new Object(); params['plckPersonaPage'] =3D PageName; =
params['plckUserId'] =3D UserId;
            params['uid'] =3D UserId;
        for(ii=3D2; ii< this.LoadPersonaPage.arguments.length; ii+=3D2) =
{ params[this.LoadPersonaPage.arguments[ii]] =3D =
this.LoadPersonaPage.arguments[ii+1];}
    this.ReloadPage(params);
    return false;
}

SiteLifeProxy.prototype.PersonaHome =3D function(UserId) {

    var me =3D this;
    this.AddEventHandler('persona:home:complete', function() {=20
		me.PopulateGroupsDiv(UserId, 1);=20
					});
    return this.PersonaSend('PersonaHome', 'personaDest', =
'personaScript', UserId, null, 'persona:home:complete');
	 =20
}

SiteLifeProxy.htmlEncode =3D function(str){
	// Fix HTML
	var ret =3D str;
	var div =3D document.createElement('div');
	var text =3D document.createTextNode(str);
	div.appendChild(text);
	ret =3D new String(div.innerHTML);			=09
=09
	// The above doesn't take care of quotes.
	ret =3D ret.replace(/"/g, '&quot;');
=09
	return ret;
};
		=09
SiteLifeProxy.prototype.PopulateGroupsDiv =3D function(UserId, OnPage) {
        // a utility function to compare two urls for purposes of =
determining site of origin
    var isFromThisSite =3D function(siteOfOrigin, currentHost) {
        // assume each url has periods in it
        var siteOfOriginDotIndex =3D siteOfOrigin.indexOf('.');
        var currentHostDotIndex =3D currentHost.indexOf('.')
        if (siteOfOriginDotIndex < 0 || currentHostDotIndex < 0) {
            return false;
        }
        else {
            return =
siteOfOrigin.slice(siteOfOriginDotIndex).toLowerCase() =3D=3D =
currentHost.slice(currentHostDotIndex).toLowerCase();
        }
    }
        // check for DAAPI objects; if not there, fail gracefully
    if (window.RequestBatch && window.CommunityGroupMembershipPage && =
window.UserKey) {
        var requestBatch =3D new RequestBatch();
        requestBatch.AddToRequest(new CommunityGroupMembershipPage(new =
UserKey(UserId+""), 8, OnPage, "TimeStampAscending", "Member"));
        =
requestBatch.BeginRequest("http://sitelife.crainsdetroit.com/ver1.0/Direc=
t/Process", function(responseBatch) {  =20
            if (responseBatch.Responses.length > 0 && =
responseBatch.Responses[0].CommunityGroupMembershipPage) {
                // create the div that will house all this info
                var groupsDiv =3D document.createElement('div');
                groupsDiv.className =3D 'PersonaStyle_ItemContainer';
                var groupsContainer =3D =
document.getElementById('PersonaStyle_GroupsContainer');
                // Check groupsContainer is null because =
PersonaStyle_GroupContainer may be absent due to private persona files.
                if (groupsContainer !=3D null) {
                    groupsContainer.appendChild(groupsDiv);
                       =20
                    var groupBaseUrl =3D =
"http://www.crainsdetroit.com/section/c?template=3Dcommunities";
                    var groupMembershipPage =3D =
responseBatch.Responses[0].CommunityGroupMembershipPage;
                    var groupsHtml =3D "<div =
class=3D\"PersonaStyle_SectionHead\">Groups</div>";
                    groupsHtml +=3D "<div =
class=3D\"PersonaStyle_GroupList\">";
                    for (var index =3D 0; index < =
groupMembershipPage.CommunityGroupMemberships.length; index++) {
                        var currentGroup =3D =
groupMembershipPage.CommunityGroupMemberships[index].CommunityGroup;
                        // if current group is private and user is =
non-member, don't display
                        var display =3D true;
                        if (currentGroup.CommunityGroupVisibility =3D=3D =
'Private') {
                            display =3D =
(currentGroup.RequestingUsersMembershipTier !=3D 'NonMember' && =
currentGroup.RequestingUsersMembershipTier !=3D 'Banned');
                        }
                        if (display) {
                            // Look for any query parameters that are =
already using ?
                            var groupUrlResults =3D =
groupBaseUrl.match(/\?/);
                            if (groupUrlResults !=3D null) {
                                var groupUrl =3D groupBaseUrl + =
"&slGroupKey=3D" + currentGroup.CommunityGroupKey.Key;
                            }
                            else {
                                var groupUrl =3D groupBaseUrl + =
"?slGroupKey=3D" + currentGroup.CommunityGroupKey.Key;
                            }
                                                            if =
(!isFromThisSite(currentGroup.SiteOfOrigin, window.location.host)) {
                                    groupsHtml +=3D "<img =
height=3D\"50\" width=3D\"50\" title=3D\"" + =
SiteLifeProxy.htmlEncode(currentGroup.Title) + "\" src=3D\"" + =
currentGroup.AvatarImageUrl + "\" />";
                                }
                                else {
                                    groupsHtml +=3D "<a href=3D\"" + =
groupUrl + "\"><img height=3D\"50\" width=3D\"50\" title=3D\"" + =
SiteLifeProxy.htmlEncode(currentGroup.Title) + "\" src=3D\"" + =
currentGroup.AvatarImageUrl + "\" /></a>";
                                }
                                                    }
                    }
                    //Pagination for Group List
                    groupsHtml +=3D "<p><ul =
class=3D\"PersonaStyle_GroupListPagination\">";
                   =20
                    if (groupMembershipPage.OnPage > 1)                {
                        groupsHtml +=3D "<li><a href=3D'#PreviousGroup' =
onclick=3D'gSiteLife.PopulateGroupsDiv(\"" + UserId + "\", " + =
(parseInt(groupMembershipPage.OnPage) - 1) + =
");'>&lt;&lt;Previous</a></li>";
                    }
                   =20
                    if =
(groupMembershipPage.NumberOfCommunityGroupMemberships > =
(groupMembershipPage.NumberPerPage * groupMembershipPage.OnPage))        =
        {
                        groupsHtml +=3D "<li><a href=3D'#NextGroup' =
onclick=3D'gSiteLife.PopulateGroupsDiv(\"" + UserId + "\", " + =
(parseInt(groupMembershipPage.OnPage) + 1) + ");'>Next&gt&gt;</a></li>";
                    }
                    groupsHtml +=3D "</p>";
                   =20
                    //End Pagination for Group List           =20
                    groupsHtml +=3D "</ul><div =
class=3D\"PersonaStyle_GroupListClear\"></div>";                  =20
                    groupsHtml +=3D "</div>";                  =20
                    groupsDiv.innerHTML =3D groupsHtml;
                   =20
                    while(groupsContainer.hasChildNodes()) {
                        =
groupsContainer.removeChild(groupsContainer.childNodes[0]);
                    }
                    groupsContainer.appendChild(groupsDiv);
                }  =20
            }
        });
    }
    // fire any other events
    this.FireEvent('persona:home');
}

SiteLifeProxy.prototype.WatchItem =3D =
function(Controller,Method,WatchKey, targetDiv) {
    var url =3D this.__baseUrl + '/'+Controller+'/' + Method + '?' + =
'plckWatchKey=3D' + WatchKey + '&plckElementId=3D' + targetDiv + =
'&plckWatchUrl=3D' + this.EscapeValue(window.location.href);
    this.__Send(url, "AddWatchScript");
    return false;
}
SiteLifeProxy.prototype.PersonaRemoveWatchItem=3D function(UserId, =
WatchKey, Div, View) {
   return this.PersonaSend('PersonaRemoveWatchItem', Div, =
'personaScript', UserId, 'plckWatchView=3D' + View + '&plckWatchKey=3D' =
+ WatchKey);
}
SiteLifeProxy.prototype.PersonaAddFriend=3D function(UserId) {
   return this.PersonaSend('PersonaAddFriend', 'personaHDest', =
'personaScript', UserId);
}
SiteLifeProxy.prototype.PersonaConnectionAddFriend =3D function(UserId) =
{
   return this.PersonaSend('PersonaConnectionAddFriend', 'personaDest', =
'personaScript', UserId, null, 'persona:connections');
}
SiteLifeProxy.prototype.PersonaRemoveFriend =3D function(UserId, Friend, =
Div, View, Expanded, confirmMsg) {
   if(!Expanded) Expanded =3D "false";
   if (confirm(confirmMsg) =3D=3D true) {
    return this.PersonaSend('PersonaRemoveFriend', Div, 'personaScript', =
UserId, 'plckFriendView=3D' + View + '&plckFriend=3D' + Friend + =
'&plckExpanded=3D' + Expanded);
   }
   return false;
}
SiteLifeProxy.prototype.PersonaRemovePendingFriend =3D function(UserId, =
PendingFriend, Div, confirmMsg) {
   if (confirm(confirmMsg) =3D=3D true) {
    return this.PersonaSend('PersonaRemovePendingFriend', Div, =
'personaScript', UserId, 'plckPendingFriend=3D' + PendingFriend);
   }
   return false;
}
SiteLifeProxy.prototype.PersonaAddPendingFriend =3D function(UserId, =
PendingFriend, Div) {
    return this.PersonaSend('PersonaAddPendingFriend', Div, =
'personaScript', UserId, 'plckPendingFriend=3D' + PendingFriend);
}
SiteLifeProxy.prototype.PersonaMessages =3D function(UserId) {
   var AdParams =3D this.GetParameter('plckCurrentPage') ? =
'plckCurrentPage=3D' + this.GetParameter('plckCurrentPage') : "";
   var scrl =3D this.GetParameter('plckScrollToAnchor');  if(scrl){ =
if(AdParams) {AdParams +=3D'&';} AdParams +=3D 'plckScrollToAnchor=3D' + =
scrl;}
   if(this.GetParameter('plckMessageSubmitted')){if(AdParams) {AdParams =
+=3D'&';} AdParams +=3D 'plckMessageSubmitted=3D' + =
this.GetParameter('plckMessageSubmitted');}
   return this.PersonaSend('PersonaMessages', 'personaDest', =
'personaScript', UserId, AdParams, 'persona:messages');
}
SiteLifeProxy.prototype.PersonaComments =3D function(UserId) {
   var AdParams =3D this.GetParameter('plckCurrentPage') ? =
'plckCurrentPage=3D' + this.GetParameter('plckCurrentPage') : "";
   return this.PersonaSend('PersonaComments', 'personaDest', =
'personaScript', UserId, AdParams, 'persona:comments');
}

SiteLifeProxy.prototype.PersonaBlog =3D function(UserId) {
   var AdParams =3D this.GetParameter('plckCurrentPage') ? =
'plckCurrentPage=3D' + this.GetParameter('plckCurrentPage') : "";
   if(AdParams) {AdParams +=3D'&';} AdParams +=3D 'plckBlogId=3D' + =
UserId;
   var url =3D this.__baseUrl + =
'/PersonaBlog/PersonaBlog?plckElementId=3DpersonaDest&plckUserId=3D'+ =
UserId + '&' + AdParams;
   this.__Send(url, 'personaScript', 'persona:blog', arguments);
   return false;
}
SiteLifeProxy.prototype.PersonaProfile =3D function(UserId) {
    return this.PersonaSend('PersonaProfile', 'personaDest', =
'personaScript', UserId, null, 'persona:profile');
}
SiteLifeProxy.prototype.PersonaWatchListPaginate =3D function(UserId, =
pageNum) {=20
    return this.PersonaPaginate('WatchList', pageNum, UserId);
}
SiteLifeProxy.prototype.PersonaFriendsPaginate =3D function(UserId, =
pageNum) {=20
	var AdParam =3D "plckFullFriendsList=3Dtrue";
    return this.PersonaPaginate('Friends', pageNum, UserId, AdParam);
}

SiteLifeProxy.prototype.PersonaFriendsExpand=3D function(UserId) {=20
    var url =3D this.__baseUrl + =
'/Persona/PersonaFriends?plckFullFriendsList=3Dtrue&plckFriendsPageNum=3D=
0&plckElementId=3DPersonaFriendsDest&plckUserId=3D'+ UserId;
    this.__Send(url, 'PersonaFriendsScript');
    return false;
}
SiteLifeProxy.prototype.PersonaFriendsCollapse=3D function(UserId, =
pageNum) {=20
    var url =3D this.__baseUrl + =
'/Persona/PersonaFriends?plckFullFriendsList=3Dfalse&plckFriendsPageNum=3D=
0&plckElementId=3DPersonaFriendsDest&plckUserId=3D'+ UserId;
    this.__Send(url, 'PersonaFriendsScript');
    return false;
}

SiteLifeProxy.prototype.PersonaPendingFriendsPaginate =3D =
function(UserId, pageNum) {=20
    var AdParam =3D "plckPendingFriendsPageNum=3D" + pageNum;
    return this.PersonaPaginate('Friends', 0, UserId,AdParam);
}
SiteLifeProxy.prototype.PersonaMessagesPreviewPaginate =3D =
function(UserId, pageNum) {=20
    return this.PersonaPaginate('MessagesPreview', pageNum, UserId);
}
SiteLifeProxy.prototype.PersonaMessageRemove =3D function(UserId, =
pageNum, MessageKey, confirmMsg) {=20
   if (confirm(confirmMsg) =3D=3D true) {
        return this.PersonaSend('PersonaRemoveMessage', 'personaDest', =
'PersonaMessagesPageScript', UserId, 'plckCurrentPage=3D'+ pageNum + =
'&plckMessageKey=3D'+MessageKey);
   }
   return false;
}
SiteLifeProxy.prototype.PersonaSend =3D function(ApiName, DestDiv, =
ScriptName, UserId, AddParams, eventId){
    var url =3D this.__baseUrl + '/Persona/' + ApiName + =
'?plckElementId=3D' + DestDiv + '&plckUserId=3D'+ UserId;
    if(AddParams) url +=3D '&' + AddParams;
    this.__Send(url, ScriptName, eventId, arguments);
    return false;
}

SiteLifeProxy.prototype.PersonaPaginate =3D function(ApiName, PageNum, =
UserId, AddParams){
    var url =3D this.__baseUrl + '/Persona/Persona' + ApiName + '?plck' =
+ ApiName + 'PageNum=3D' + PageNum + '&plckElementId=3DPersona' + =
ApiName + 'Dest&plckUserId=3D'+ UserId;
    if(AddParams) url +=3D '&' + AddParams;   =20
    this.__Send(url, 'Persona'+ ApiName + 'Script');
    return false;
}

SiteLifeProxy.prototype.PersonaPhotoSend =3D function(ApiName, DestDiv, =
ScriptName, UserId, AddParams, eventId){
    var url =3D this.__baseUrl + '/PersonaPhoto/' + ApiName + =
'?plckElementId=3D' + DestDiv + '&plckUserId=3D'+ UserId;
    if(AddParams) url +=3D '&' + AddParams;
    this.__Send(url, ScriptName, eventId, arguments);
    return false;
}

SiteLifeProxy.prototype.PersonaMostRecent =3D function(UserId, PhotoID, =
DestDiv) {
   return this.PersonaPhotoSend('PersonaMostRecent', DestDiv, =
'personaScript', UserId,'plckPhotoID=3D' + PhotoID);
}

SiteLifeProxy.prototype.PersonaCommunityGroupsPaginate =3D =
function(UserId, PageNum){
	return this.PersonaPaginate('CommunityGroups', PageNum, UserId);
}

SiteLifeProxy.prototype.PersonaCreateGallery =3D function(UserId) {
     return this.PersonaPhotoSend('UserGalleryCreate', =
'personaDestPhoto', 'personaScript', UserId);
}

SiteLifeProxy.prototype.PersonaEditGallery =3D =
function(UserId,GalleryID) {
     return this.PersonaPhotoSend('UserGalleryEdit', 'userGalleryDest', =
'personaScript', UserId,'plckGalleryID=3D' + GalleryID);
}

SiteLifeProxy.prototype.PersonaUploadToUserGallery =3D =
function(GalleryId) {
    var url =3D this.__baseUrl + =
'/Photo/PhotoUpload?plckElementId=3DuserGalleryDest&plckGalleryID=3D'+ =
GalleryId;
    this.__Send(url);
    return false;
}

SiteLifeProxy.prototype.PersonaPhotos =3D function(UserId) {
     return this.PersonaPhotoSend('PersonaPhotos', 'personaDest', =
'personaScript', UserId, null, 'persona:photos');
}
SiteLifeProxy.prototype.PersonaAllPhotos =3D function(UserId) {
     return this.PersonaPhotoSend('PersonaAllPhotos', 'personaDest', =
'personaScript', UserId);
}

SiteLifeProxy.prototype.PersonaGalleryPhoto =3D function(UserId, =
plckFindCommentKey) {
	var findCommentKey =3D gSiteLife.ReadFindCommentKey(findCommentKey, =
"widget:personaGalleryPhoto");
=09
    return this.PersonaPhotoSend('PersonaGalleryPhoto', 'personaDest', =
'personaScript', UserId, 'plckFindCommentKey=3D' + findCommentKey, =
"widget:personaGalleryPhoto");
}
SiteLifeProxy.prototype.PersonaMyRecentPhotos =3D =
function(UserId,ElementId, PageNum) {
     return this.PersonaPhotoSend('PersonaMyRecentPhotos', ElementId, =
'personaScript', UserId,'plckPageNum=3D' + PageNum);
}

SiteLifeProxy.prototype.PersonaGallery =3D =
function(UserId,GalleryId,PageNum) {
     if(!PageNum){
        PageNum =3D gSiteLife.GetParameter("plckPageNum") ? =
gSiteLife.GetParameter("plckPageNum") : 0;
     }
     if(!GalleryId) {
        GalleryId =3D gSiteLife.GetParameter("plckGalleryID");
     }
     return this.PersonaPhotoSend('PersonaGallery', 'personaDest', =
'personaScript', UserId,'plckGalleryID=3D'+ GalleryId + =
'&plckPageNum=3D' + PageNum);
}

SiteLifeProxy.prototype.UserGalleryList =3D function(UserId,ElementId, =
PageNum) {
     return this.PersonaPhotoSend('UserGalleryList', ElementId, =
'personaScript', UserId,'plckPageNum=3D' + PageNum);
}
SiteLifeProxy.prototype.PersonaGallerySubmissions =3D =
function(UserId,ElementId, PageNum){
     return this.PersonaPhotoSend('PersonaGallerySubmissions', =
ElementId, 'personaScript', UserId,'plckPageNum=3D' + PageNum);
}=20

SiteLifeProxy.prototype.PersonaGalleryPhoto =3D function(UserId, =
plckFindCommentKey) {
	var findCommentKey =3D gSiteLife.ReadFindCommentKey(findCommentKey, =
"widget:personaPhoto");
   =20
    var photoid =3D gSiteLife.GetParameter('plckPhotoID');
    return this.PersonaPhotoSend('PersonaGalleryPhoto', =
'personaDest','personaScript', UserId,'&plckPhotoID=3D' +photoid + =
'&plckFindCommentKey=3D' +findCommentKey, "widget:personaPhoto");
}
SiteLifeProxy.prototype.PersonaRecentGalleryPhoto =3D function(UserId) {
    var photoid =3D gSiteLife.GetParameter('plckPhotoID');
    return this.PersonaPhotoSend('PersonaRecentGalleryPhoto', =
'personaDest','personaScript', UserId,'&plckPhotoID=3D' +photoid);
}

SiteLifeProxy.prototype.LoadPersonaGalleryPage =3D =
function(UserId,GalleryID) {
    var params =3D new Object(); params['plckPersonaPage'] =3D =
'PersonaGallery'; params['plckUserId'] =3D UserId;=20
            params['uid'] =3D UserId;
        params['plckGalleryID'] =3D GalleryID;
    this.ReloadPage(params);
    return false;
}
SiteLifeProxy.prototype.LoadPersonaPhotoPage =3D =
function(UserId,PhotoID) {
    var params =3D new Object(); params['plckPersonaPage'] =3D =
'PersonaGalleryPhoto'; params['plckUserId'] =3D UserId;
            params['uid'] =3D UserId;
        params['plckPhotoID'] =3D PhotoID;
    this.ReloadPage(params);
    return false;
}
SiteLifeProxy.prototype.LoadPersonaRecentPhotoPage =3D =
function(UserId,PhotoID) {
    var params =3D new Object(); params['plckPersonaPage'] =3D =
'PersonaRecentGalleryPhoto'; params['plckUserId'] =3D UserId;
            params['uid'] =3D UserId;
        params['plckPhotoID'] =3D PhotoID;
    this.ReloadPage(params);
    return false;
}

var fbHelpDialogTimeout;
SiteLifeProxy.prototype.ShowFacebookHelpDialog =3D function(icon){
	var x =3D 0;
	var y =3D icon.clientHeight/2;

	do {
		x +=3D icon.offsetLeft;
		y +=3D icon.offsetTop;
	}
	while(icon =3D icon.offsetParent);

	var fb_div =3D document.getElementById("Persona_FacebookHelpDialog");
=09
	fb_div.style.position =3D "absolute";
	fb_div.style.display =3D "block";
=09
	// position div to the left of icon.
	var newX =3D x - fb_div.clientWidth;
	var newY =3D y - Math.floor(fb_div.clientHeight/2);
=09
	fb_div.style.left =3D newX + "px";
	fb_div.style.top =3D newY + "px";

	return false;
}

SiteLifeProxy.prototype.HideFacebookHelpDialog =3D function(){
	var fb_div =3D document.getElementById("Persona_FacebookHelpDialog");
	fb_div.style.display =3D "none";
}

SiteLifeProxy.prototype.CopyRssUrlToClipboard =3D function(){=09
	rssUrl =3D document.getElementById("rssUrl");
	copy(rssUrl);
=09
	return false;
}

/* note: doesn't work with flash 10 */
function copy(inElement) {
  if (inElement.createTextRange) {
    var range =3D inElement.createTextRange();
    if (range)
      range.execCommand('Copy');
  } else {
    var flashcopier =3D 'flashcopier';
    if(!document.getElementById(flashcopier)) {
      var divholder =3D document.createElement('div');
      divholder.id =3D flashcopier;
      document.body.appendChild(divholder);
    }
    document.getElementById(flashcopier).innerHTML =3D '';
    var divinfo =3D '<embed src=3D"' + gSiteLife.__baseUrl + =
'/Content/swf/clipboard.swf" =
FlashVars=3D"clipboard=3D'+encodeURIComponent(inElement.value)+'" =
width=3D"0" height=3D"0" =
type=3D"application/x-shockwave-flash"></embed>';
    document.getElementById(flashcopier).innerHTML =3D divinfo;
  }
}

SiteLifeProxy.prototype.UpdateExternalUserId =3D =
function(ExternalSiteName, ExternalSiteUserId) {
	var adParam =3D this.BaseAdParam();
	adParam +=3D "&externalSiteName=3D" + ExternalSiteName;
	adParam +=3D "&externalSiteUserId=3D" + ExternalSiteUserId;
	return this.PersonaSend('UpdateExternalUserId', 'personaHDest', =
'personaScript', adParam);
}




SiteLifeProxy.prototype.PersonaConnections =3D function(UserId){
 =20
   var AdParams =3D "";
   return this.PersonaSend('PersonaConnections', 'personaDest', =
'personaScript', UserId, AdParams, 'persona:connections');
}

SiteLifeProxy.prototype.UpdateTwitterPrefs =3D function(UserId, =
tweetOnPersona, tweetComments) {
    return this.PersonaSend('UpdateTwitterPrefs', 'personaDest', =
'personaScript', UserId, '?tweetMyComments=3D' + tweetComments + =
'&personaTwitterWidget=3D' + tweetOnPersona);
}



=0A=

SiteLifeProxy.prototype.SolicitPhoto =3D function(galleryID) {
	var elementId =3D 'plcksolicit' + galleryID;
	this.WriteDiv(elementId);
    var url =3D this.__baseUrl + '/Photo/SolicitPhoto?plckElementId=3D' =
+ elementId + '&plckGalleryID=3D' +galleryID;
    this.__Send(url);
    return false;
}

SiteLifeProxy.prototype.PhotoUpload =3D function() {
	var elementId =3D 'plcksubmit';
	this.WriteDiv(elementId);
    var galleryID =3D gSiteLife.GetParameter('plckGalleryID');

    var url =3D this.__baseUrl + '/Photo/PhotoUpload?plckElementId=3D' + =
elementId + '&plckGalleryID=3D' +galleryID;
    this.__Send(url);
    return false;
}

SiteLifeProxy.prototype.PublicGallery =3D function() {
    var elementId =3D 'plckgallery';
	this.WriteDiv(elementId);
	var galleryID =3D gSiteLife.GetParameter('plckGalleryID');
    var pageNum =3D gSiteLife.GetParameter('plckPageNum');
=09
    var url =3D this.__baseUrl + '/Photo/PublicGallery?plckElementId=3D' =
+ elementId + '&plckGalleryID=3D' +galleryID + '&plckPageNum=3D' =
+pageNum;
	this.__Send(url);
	return false;
}


SiteLifeProxy.prototype.GalleryPhoto =3D function() {
	var elementId =3D 'plckphoto';
	this.WriteDiv(elementId);
    var photoid =3D gSiteLife.GetParameter('plckPhotoID');
    var findCommentKey =3D gSiteLife.ReadFindCommentKey(null, =
"widget:galleryPhoto");

    var url =3D this.__baseUrl + '/Photo/GalleryPhoto?plckElementId=3D' =
+ elementId + '&plckPhotoID=3D' +photoid + '&plckFindCommentKey=3D' + =
findCommentKey;
	this.__Send(url, null, "widget:galleryPhoto");
	return false;
}

SiteLifeProxy.prototype.PublicGalleries =3D function() {
	var elementId =3D 'plckgalleries';
	this.WriteDiv(elementId);
    var pageNum =3D gSiteLife.GetParameter('plckPageNum') ?  =
gSiteLife.GetParameter('plckPageNum') : "0";

    var url =3D this.__baseUrl + =
'/Photo/PublicGalleries?plckElementId=3D' + elementId + =
'&plckPageNum=3D' + pageNum;
    this.__Send(url);
    return false;
}

SiteLifeProxy.prototype.PhotoRecommend =3D =
function(targetid,recommendDiv,isGallery) {
    var url =3D this.__baseUrl + '/Photo/Recommend?plckElementId=3D' + =
recommendDiv + '&plckTargetid=3D' +targetid + '&plckIsGallery=3D' =
+isGallery ;
    this.__Send(url);
    return false;
}
=0A=
//<script type=3D"text/javascript">

//parentKeyType can be any gSiteLife.KeyType* value, but for including =
this widget on an article page the value is=20
//typically gSiteLife.KeyTypeExternalResource
SiteLifeProxy.prototype.Comments =3D function(parentKeyType, parentKey, =
pageSize, sort, showTabs, tab, parentUrl, parentTitle, refreshPage, =
findCommentKey)
{
	return this.CommentsInternal(parentKeyType, parentKey, pageSize, sort, =
showTabs, tab, parentUrl, parentTitle, false, false, null, refreshPage, =
findCommentKey);
};

SiteLifeProxy.prototype.CommentsInput =3D function(parentKeyType, =
parentKey, redirectToUrl)
{   =20
    return this.CommentsInternal(parentKeyType, parentKey, null, =
"TimeStampDescending", null, null, null, null, true, false, =
redirectToUrl, false, null);
};

SiteLifeProxy.prototype.CommentsOutput =3D function(parentKeyType, =
parentKey, refreshPage, pageSize, sortOrder)
{
    sortOrder =3D sortOrder || "TimeStampDescending";
	return this.CommentsInternal(parentKeyType, parentKey, pageSize, =
sortOrder, null, null, null, null, false, true, null, refreshPage, =
null);
}

SiteLifeProxy.prototype.CommentsRefresh =3D function(parentKeyType, =
parentKey, pageSize, sortOrder)
{
    if (!parentKey || parentKey =3D=3D "") throw "Must pass in value for =
parentKey!";
    return this.CommentsInternal(parentKeyType, parentKey, pageSize, =
sortOrder, null, null, null, null, false, false, null, true, null);
}

SiteLifeProxy.prototype.CommentsInternal =3D function(parentKeyType, =
parentKey, pageSize, sort, showTabs, tab, parentUrl, parentTitle, =
hideView, hideInput, redirectToUrl, refreshPage, findCommentKey)
{
    var divId =3D 'Comments_Container';
    if(this.numCommentsWidgets){ divId +=3D this.numCommentsWidgets++; } =
else { this.numCommentsWidgets =3D 1; }
   =20
    document.write("<div id=3D'" + divId + "'></div>");
   =20
    return this.GetComments(parentKeyType, parentKey, parentUrl, =
parentTitle, 0, pageSize, sort, showTabs, tab, hideView, hideInput, =
redirectToUrl, refreshPage, divId, findCommentKey);
}

SiteLifeProxy.prototype.ReadFindCommentKey =3D =
function(plckFindCommentKey, eventName){
	var findCommentKey =3D plckFindCommentKey || =
gSiteLife.GetParameter("plckFindCommentKey") || "";
    if(findCommentKey =3D=3D "none"){
		findCommentKey =3D "";
    }
   =20
    if(findCommentKey !=3D "" && eventName){
		this.AddEventHandler(eventName, =
function(){gSiteLife.ScrollToComment(findCommentKey)});
    }
   =20
    if(findCommentKey =3D=3D "") {
                                var commentsScrollDiv =3D =
document.getElementById('Comments_OuterContainer');
                                if (commentsScrollDiv) {
                                                =
commentsScrollDiv.scrollIntoView(true);
                                }
    }
   =20
    return findCommentKey;
}

SiteLifeProxy.prototype.GetComments =3D function(parentKeyType, =
parentKey, parentUrl, parentTitle, page, pageSize, sort, showTabs, tab, =
hideView, hideInput, redirectTo, refreshPage, divId, findCommentKey)
{
    parentKeyType =3D parentKeyType || "ExternalResource";
    parentUrl =3D parentUrl || =
gSiteLife.__StripAnchorFromUrl(window.location.href);
    parentUrl =3D gSiteLife.EscapeValue(parentUrl);
    parentKey =3D parentKey || =
gSiteLife.__StripAnchorFromUrl(window.location.href);
    parentTitle =3D parentTitle || =
gSiteLife.EscapeValue(gSiteLife.Trim(document.title));
    page =3D page || gSiteLife.GetParameter('plckCurrentPage') || 0;
    pageSize =3D pageSize || 10;
    sort =3D sort || "TimeStampAscending";
    showTabs =3D showTabs || false;
    tab =3D tab || "MostRecent";
    hideView =3D hideView || false;
    hideInput =3D hideInput || false;
    redirectTo =3DgSiteLife.EscapeValue(redirectTo) || "";
    refreshPage =3D refreshPage || false;
    findCommentKey =3D gSiteLife.ReadFindCommentKey(findCommentKey, =
"widget:comments");
   =20
    var url =3D this.__baseUrl +=20
        '/Comment/GetPage.rails?plckTargetKeyType=3D'+ parentKeyType +=20
        '&plckTargetKey=3D' + escape(parentKey) +=20
        "&plckCurrentPage=3D" + page +=20
        "&plckItemsPerPage=3D" + pageSize +=20
        "&plckSort=3D" + sort +=20
        "&plckElementId=3D" + divId +
        "&plckTargetUrl=3D" + parentUrl +
        "&plckTargetTitle=3D" + parentTitle +
        "&plckHideView=3D" + hideView +
        "&plckHideInput=3D" + hideInput +
        "&plckRefreshPage=3D" + refreshPage +
        "&plckRedirectToUrl=3D" + redirectTo +
        "&plckFindCommentKey=3D" + findCommentKey;

    if (showTabs) {
        url =3D url + "&plckShowTabs=3Dtrue&plckTab=3D" + tab;
    }
    this.__Send(url, null, "widget:comments");
    return false;
};

SiteLifeProxy.prototype.WaitForImages =3D function(callback){
	var allImgs =3D document.images;
=09
}

SiteLifeProxy.prototype.ScrollToComment =3D function(commentKey){
		setTimeout(function(){
		window.location.hash =3D "#" + commentKey;
	}, 300);
}=0A=

SiteLifeProxy.prototype.Blog =3D function(BlogId) {
    this.WriteDiv("blogDest", "Persona_Main");
    var action =3D this.GetParameter("plckBlogPage");
    // If BlogId was not explicitly stated, grab it from the URL =
parameter...
    if(!BlogId){
		BlogId =3D this.GetParameter('plckBlogId');
    }
   =20
       =20
	if(action && action !=3D "Blog" && (typeof this[action] =3D=3D =
'function')){
	 return this[action](BlogId);
	}else{
	   var AdParams =3D this.GetParameter('plckCurrentPage') ? =
'plckCurrentPage=3D' + this.GetParameter('plckCurrentPage') : "";
	   return this.BlogSend('Blog', 'Blog', 'blogDest', 'blogScript', =
BlogId, AdParams);
	}
}
SiteLifeProxy.prototype.LoadBlogPage =3D function(PageName, BlogId) {
    var params =3D new Object(); params['plckBlogPage'] =3D PageName; =
params['plckBlogId'] =3D BlogId;=20
    for(ii=3D2; ii< this.LoadBlogPage.arguments.length; ii+=3D2) { =
params[this.LoadBlogPage.arguments[ii]] =3D =
this.LoadBlogPage.arguments[ii+1];}
    this.ReloadPage(params);
    return false;
}

SiteLifeProxy.prototype.BlogViewEdit =3D function(blogId) {
   return this.BlogSend(null, 'BlogViewEdit', null, null, blogId);
}

SiteLifeProxy.prototype.BlogPostCreate =3D function(blogId) {
   return this.BlogSend(null, 'BlogPostCreate', null, null, blogId, =
'plckRedirectUrl=3D' + this.GetParameter("plckRedirectUrl"));
}

SiteLifeProxy.prototype.BlogPendingComments =3D function(blogId, =
currentPage) {
   if( !currentPage) currentPage =3D 0;
   return this.BlogSend(null, 'BlogPendingComments', null, null, blogId, =
'plckCurrentPage=3D'+currentPage);
}

SiteLifeProxy.prototype.BlogSettings =3D function(blogId) {
   return this.BlogSend(null, 'BlogSettings', null, null, blogId);
}

SiteLifeProxy.prototype.BlogEditPost =3D function(blogId, controller, =
div, script, postId, selection, daysBack) {
	return this.BlogSend(controller, 'BlogPostEdit', div, script, blogId, =
'plckPostId=3D' + postId + '&plckSelection=3D' + selection + =
'&plckDaysBack=3D' + daysBack + '&plckRedirectUrl=3D' + =
this.EscapeValue(window.location.href));
}

SiteLifeProxy.prototype.BlogRemovePost =3D function(blogId, controller, =
div, script, postId, selection, daysBack, confirmMsg) {
  if (confirm(confirmMsg) =3D=3D true) {
    return this.BlogSend(controller, 'BlogRemovePost', div, script, =
blogId, 'plckPostId=3D' + postId + '&plckSelection=3D' + selection + =
'&plckDaysBack=3D' + daysBack );
  }
  return false;
}

SiteLifeProxy.prototype.BlogViewPost =3D function(blogId, postId, =
selection, daysBack) {
    if(!postId ) { postId =3D gSiteLife.GetParameter('plckPostId'); }
    var findCommentKey =3D gSiteLife.ReadFindCommentKey(null, =
"widget:blog");
	return this.BlogSend(null, 'BlogViewPost', null, null, blogId, =
'plckPostId=3D' + postId + '&plckSelection=3D' + selection + =
'&plckDaysBack=3D' + daysBack + '&plckCommentSortOrder=3D' + =
this.GetParameter('plckCommentSortOrder') + '&plckFindCommentKey=3D' + =
findCommentKey);
}

SiteLifeProxy.prototype.BlogViewMonth =3D function(blogId, monthId) {
	if(!monthId ) { monthId =3D gSiteLife.GetParameter('plckMonthId'); }
	var AdParams =3D 'plckMonthId=3D' + monthId;
	AdParams +=3D this.GetParameter('plckCurrentPage') ? =
'&plckCurrentPage=3D' + this.GetParameter('plckCurrentPage') : "";
	return this.BlogSend(null, 'BlogViewMonth', null, null, blogId,  =
AdParams);
}

SiteLifeProxy.prototype.AddBlogWatchItem=3D function(blogId, controller, =
script, Url, WatchKey) {
   return this.BlogSend(controller, 'AddBlogWatch', 'plckBlogWatchDiv', =
script, blogId, 'plckWatchKey=3D' + WatchKey + '&plckWatchUrl=3D' + =
this.EscapeValue(Url));
}
SiteLifeProxy.prototype.RemoveBlogWatchItem=3D function(blogId, =
controller, script, WatchKey) {
   return this.BlogSend(controller, 'RemoveBlogWatch', =
'plckBlogWatchDiv', script, blogId, 'plckWatchKey=3D' + WatchKey);
}

SiteLifeProxy.prototype.BlogViewTag =3D function(blogId, tag) {
	if(!tag ) { tag =3D gSiteLife.GetParameter('plckTag'); }
	var AdParams =3D 'plckTag=3D' + tag;
	AdParams +=3D this.GetParameter('plckCurrentPage') ? =
'&plckCurrentPage=3D' + this.GetParameter('plckCurrentPage') : "";
	return this.BlogSend(null, 'BlogViewTag', null, null, blogId, AdParams =
);
}

SiteLifeProxy.prototype.BlogRefreshViewEditList=3D function(blogId, =
controller, div, script, selection, daysBack) {
	return this.BlogSend(controller, 'BlogRefreshViewEditList', div, =
script, blogId, 'plckSelection=3D' + selection + '&plckDaysBack=3D' + =
daysBack  );
}

SiteLifeProxy.prototype.BlogSend =3D function(controller, apiName, =
destDiv, scriptName, blogId, addParams){
    if(!controller) controller =3D this.GetParameter('plckController') =
|| "Blog";
    if(!destDiv) destDiv =3D this.GetParameter('plckElementId') || =
"blogDest";
    if(!scriptName) scriptName =3D this.GetParameter('plckScript') || =
"blogScript";
    var url =3D this.__baseUrl + '/' + controller + '/' + apiName + =
'?plckElementId=3D' + destDiv + '&plckBlogId=3D' + blogId + '&' + =
addParams;
    this.__Send(url, scriptName, 'widget:blog');
    return false;
}

SiteLifeProxy.prototype.Recommend =3D function(controller, itemId, =
recommendDiv) {
    var url =3D this.__baseUrl + '/' + controller + =
'/Recommend?plckElementId=3D' + recommendDiv + '&plckItemId=3D' +itemId;
    this.__Send(url);
    return false;
}
SiteLifeProxy.prototype.BlogSelectPendingComments =3D function(formId, =
checked) {  =20
    var form =3D document.getElementById(formId);
    for (i=3D0; i<form.elements.length; i++) {
        var input =3D form.elements[i];       =20
        input.checked =3D checked;
    }
}=0A=

SiteLifeProxy.prototype.Forums =3D function(numPerPage, dontWriteDiv) {  =
 =20
	if (!dontWriteDiv)
		this.WriteDiv("forumDest", "Forum_Main");
=09
	var action =3D this.GetParameter("plckForumPage");

	=09
	=09
  var forumId =3D this.GetParameter('plckForumId');       =20
  if (forumId)
  {
    forumId =3D unescape(forumId);
    var i =3D forumId.indexOf('Forum:');
    forumId =3D forumId.substring(i).replace(':', '_');   =20
  }
  else
  {
    var discussionId =3D this.GetParameter('plckDiscussionId');
    if (discussionId)
    {                   =20
	    discussionId =3D unescape(discussionId);
	    var i =3D discussionId.indexOf('Forum:');
	    var j =3D discussionId.indexOf('Discussion:');
	    forumId =3D discussionId.substring(i, j).replace(':', '_');
    }
  }
=09
   =20
	var categoryCurrentPage =3D =
this.GetParameter('plckCategoryCurrentPage');
	if(action && (typeof this[action] =3D=3D 'function') && action !=3D =
'ForumCategories'){
		  this[action]();
	}
	else {   =20
	      =20
	    if( numPerPage =3D=3D null ){
		      numPerPage =3D this.GetParameter('plckNumPerPage');
	    }=20
		  this.ForumCategories(numPerPage, categoryCurrentPage);
	}
}

SiteLifeProxy.prototype.SetupCallbacks =3D function(){
	var adParam =3D "";
    var showFirstUnread =3D this.GetParameter('plckShowFirstUnread');=20
    var findPostKey =3D this.GetParameter('plckFindPostKey');
    if(showFirstUnread !=3D null){
		adParam +=3D "&plckShowFirstUnread=3D" + showFirstUnread;
		this.AddEventHandler("widget:forums", =
function(){gSiteLife.DiscussionScrollToPost()});
    }
    if(findPostKey !=3D null && findPostKey !=3D ""){
		adParam +=3D "&plckFindPostKey=3D" + findPostKey;
		this.AddEventHandler("widget:forums", =
function(){gSiteLife.DiscussionScrollToPost()});
    }
    var showLatestPost =3D this.GetParameter('plckShowLatestPost');=20
    if(showLatestPost !=3D null){
		adParam +=3D "&plckShowLatestPost=3D" + showLatestPost;
		this.AddEventHandler("widget:forums", =
function(){gSiteLife.DiscussionScrollToPost()});
    }
   =20
    this.AddEventHandler("widget:forums", function(){
		gSiteLife.DiscussionScanForUnread();

		// insert poll widget if the discussion is a poll	=09

		var me =3D this;
		var insertPoll =3D function(retryCount) {
			if (retryCount > 10) {
				return;
			}
			if (typeof(retryCount) =3D=3D=3D 'undefined') {
				retryCount =3D 0;
			}
			var pollWidgetDiv =3D =
document.getElementById('Discussion_Poll_Container');
			if (pollWidgetDiv) {
				var discussionKey =3D =
document.getElementById('DiscussionKeyContainer').value;
				slGetDiscussionPollOnKey =3D function() {
					return discussionKey;
				}
				window.slPollWidgetDiv =3D =
document.getElementById('Discussion_Poll');
				var pollInsertionScript =3D document.createElement('script');
				pollInsertionScript.type =3D 'text/javascript';
				pollInsertionScript.src =3D =
'http://sitelife.crainsdetroit.com/ver1.0/Forums/PollParams?plckDiscussio=
nId=3D' + discussionKey;
				=
document.getElementsByTagName('head')[0].appendChild(pollInsertionScript)=
;
			}
			else {
				setTimeout(function() {
					insertPoll(retryCount + 1);
				}, 100);
			}
		}
		insertPoll();

    	});

	// Hack for the anchor on the categories page...
	this.AddEventHandler("widget:forums", function(){
		if(document.location.hash){
			var foo =3D document.location.hash + "";
			document.location.hash =3D foo;
		}
	});
   =20
    return adParam;
}

SiteLifeProxy.prototype.ForumCategories =3D function(numPerPage, =
categoryCurrentPage) {
    var pageNum =3D this.GetParameter('plckCurrentPage'); if(pageNum =
=3D=3D null) pageNum =3D 0;
    var urlPageInfoStr =3D '';
    urlPageInfoStr =3D '&plckNumPerPage=3D' + numPerPage;       =20
    urlPageInfoStr +=3D '&plckCategoryCurrentPage=3D' + =
categoryCurrentPage;
   =20
    var categoryKey =3D this.GetUrlParts('plckCategoryId');
	=20
	  if (categoryKey) {
	      this.ForumCategory(categoryKey);
	  } else {
        return this.ForumSend("ForumCategories", "forumDest", =
"ForumMain", 'plckCurrentPage=3D' + pageNum + urlPageInfoStr);
    }
}
SiteLifeProxy.prototype.Forum =3D function() {
    var forumId =3D this.GetParameter('plckForumId');
    var discussionCreatedSortOrder =3D =
this.GetParameter('plckDiscussionCreatedSortOrder');
    var categoryPageNum =3D =
this.GetParameter('plckCategoryCurrentPage');
    if(categoryPageNum =3D=3D null) { categoryPageNum =3D 0; }
    var discussionPageNum =3D this.GetParameter('plckCurrentPage');
    if (discussionPageNum =3D=3D null) { discussionPageNum =3D 0; }
    var numPerPage =3D this.GetParameter('plckNumPerPage');
    var urlPageInfoStr =3D '';
    if( numPerPage !=3D null ){
        urlPageInfoStr =3D '&plckNumPerPage=3D' + numPerPage;
    }
   return this.ForumSend('Forum', 'forumDest', 'ForumMain', =
'plckForumId=3D' + forumId + '&plckCurrentPage=3D' + discussionPageNum + =
'&plckCategoryCurrentPage=3D' + categoryPageNum + urlPageInfoStr + =
'&plckDiscussionCreatedSortOrder=3D' + discussionCreatedSortOrder);
}
SiteLifeProxy.prototype.ForumDiscussion =3D function() {
    var dId =3D this.GetParameter("plckDiscussionId");
    var adParam =3D "plckDiscussionId=3D" + dId;
    var showLast =3D this.GetParameter("plckShowLastPage"); if(showLast) =
adParam +=3D "&plckShowLastPage=3Dtrue";
    var pageNum =3D this.GetParameter('plckCurrentPage'); if(pageNum =
=3D=3D null) pageNum =3D 0;
	adParam +=3D this.SetupCallbacks();=20
    adParam +=3D "&plckCurrentPage=3D" + pageNum;
    adParam +=3D "&plckCategoryCurrentPage=3D" + =
this.GetParameter('plckCategoryCurrentPage');  =20
   =20
    return this.ForumSend("ForumDiscussion", "forumDest", "ForumMain", =
adParam);
}

SiteLifeProxy.prototype.DiscussionScanForUnread =3D =
function(discussionKey){
	var postDatesContainer =3D =
document.getElementById("PostDateInfoContainer");
	if(!postDatesContainer){
		return;
	}
=09
	this.postDates =3D eval(postDatesContainer.value);
	this.latestPost =3D new =
Date(document.getElementById("LastReadContainer").value);
	this.screenBottom =3D 0;
	if(discussionKey){
		this.discussionKey =3D discussionKey;
	}
	else if (document.getElementById('DiscussionKeyContainer')){
		this.discussionKey =3D =
document.getElementById('DiscussionKeyContainer').value;
	}
=09
	this.checkForReadInterval =3D =
setInterval(function(){gSiteLife.DiscussionCheckForLatestPost();}, =
1000);
}

SiteLifeProxy.prototype.DiscussionScrollToPost =3D function(){
	if(!document.getElementById("Discussion_ScrollToPostKey")){
		return false;
	}
=09
	var postKey =3D =
document.getElementById("Discussion_ScrollToPostKey").value;
	var post =3D document.getElementById(postKey);
=09
	if(!post){
		return false;
	}
=09
	var postTop =3D 0;
	if(post.offsetParent){
		obj =3D post;
		do{
			postTop +=3D obj.offsetTop;
		}
		while(obj =3D obj.offsetParent);
		window.scrollBy(0, postTop);
	}
}

SiteLifeProxy.prototype.IsPostOnScreen =3D function(screenBottom, =
postIndex){
	var postId =3D "readIndicator_" + this.postDates[postIndex].Key;
	var post =3D document.getElementById(postId);
	if(post){
		var postTop =3D 0;
		if(post.offsetParent){
			obj =3D post;
			do{
				postTop +=3D obj.offsetTop;
			}
			while(obj =3D obj.offsetParent);
		}
		var postBottom =3D postTop + post.offsetHeight;
	=09
		if(postBottom < screenBottom){
			return true;
		}
	}
=09
	return false;
}

SiteLifeProxy.prototype.DiscussionCheckForLatestPost =3D function(){
	var screenTop =3D 0;
	if (typeof(window.pageYOffset) !=3D=3D 'undefined') {
		screenTop =3D window.pageYOffset;
	}
	else if (typeof(document.documentElement) !=3D=3D 'undefined' && =
typeof(document.documentElement.scrollTop) !=3D=3D 'undefined' && =
document.documentElement.scrollTop > 0) {
		screenTop =3D document.documentElement.scrollTop;
	}
	else if (typeof(document.body.scrollTop) !=3D=3D 'undefined' && =
document.body.scrollTop > 0) {
		screenTop =3D document.body.scrollTop;
	}
=09
	var screenBottom =3D Math.pow(2,52); /*Supposing our browser can't get =
the height, we mark everything as read.*/
	if(window.innerHeight){
		screenBottom =3D screenTop + window.innerHeight;
	}
	else if(document.documentElement.clientHeight && =
document.documentElement.clientHeight !=3D 0){
		screenBottom =3D screenTop + document.documentElement.clientHeight;
	}
	else if(document.body.clientHeight){
		screenBottom =3D screenTop + document.body.clientHeight;
	}
=09
	/* Only update if we've scrolled down since last poll. */
	if(screenBottom <=3D this.screenBottom){
		return;
	}
=09
	/* Just give up if there are no posts. */
	if(!this.postDates || this.postDates.length <=3D 0){
		clearInterval(this.checkForReadInterval);
		return;
	}
=09
	/* If the last post is already marked read, don't bother polling. */
	if(this.postDates[(this.postDates.length - 1)].Timestamp <=3D =
this.latestPost){
		clearInterval(this.checkForReadInterval);
		return;
	}
=09
	this.screenBottom =3D screenBottom;
=09
	var latestKey =3D null;
=09
	for(i=3D0; i < this.postDates.length; i++){
		if(this.IsPostOnScreen(screenBottom, i)){
			if(this.postDates[i].Timestamp >=3D this.latestPost){
				latestKey =3D this.postDates[i].Key;
				this.latestPost =3D this.postDates[i].Timestamp;
			}
		}
	}

	if(latestKey){
		this.ForumSetLastRead(this.discussionKey, latestKey);
	}
}

SiteLifeProxy.prototype.ForumCreateDiscussion =3D function() {
    var adParam =3D "plckRedirectUrl=3D" + =
this.GetParameter("plckRedirectUrl");
    var fId =3D this.GetParameter("plckForumId"); adParam +=3D =
"&plckForumId=3D" + fId;
    var curView =3D this.GetParameter("plckCurrentView"); if(curView) =
adParam +=3D "&plckCurrentView=3D" + curView;
    var curPage =3D this.GetParameter("plckCurrentPage"); if(curPage) =
adParam +=3D "&plckCurrentPage=3D" + curPage;
    var dId =3D this.GetParameter("plckDiscussionId"); if(dId) adParam =
+=3D "&plckDiscussionId=3D" + dId;
    adParam +=3D "&plckCategoryCurrentPage=3D" + =
this.GetParameter('plckCategoryCurrentPage');   =20
    return this.ForumSend("ForumCreateDiscussion", "forumDest", =
"ForumMain", adParam);
}
SiteLifeProxy.prototype.ForumMain =3D function() {
    return this.ForumSend("ForumMain", "forumDest", "ForumMain");
}
SiteLifeProxy.prototype.ForumCreatePost =3D function() {
    var adParam =3D "plckDiscussionId=3D" + =
this.GetParameter("plckDiscussionId") + "&plckRedirectUrl=3D" + =
this.EscapeValue(window.location.href);
    var PostId =3D this.GetParameter("plckPostId"); if(PostId) adParam =
=3D adParam + "&plckPostId=3D" + PostId;
    var IsReply =3D this.GetParameter("plckIsReply"); if(IsReply) =
adParam =3D adParam + "&plckIsReply=3D" + IsReply;
    var curPage =3D this.GetParameter("plckCurrentPage"); if(curPage) =
adParam =3D adParam + "&plckCurrentPage=3D" + curPage;
    adParam +=3D "&plckCategoryCurrentPage=3D" + =
this.GetParameter("plckCategoryCurrentPage");=20
    return this.ForumSend("ForumCreatePost", "forumDest", "ForumMain", =
adParam);
}
SiteLifeProxy.prototype.ForumEditPost =3D function() {
    var adParam =3D "plckDiscussionId=3D" + =
this.GetParameter("plckDiscussionId") + "&plckRedirectUrl=3D" + =
this.EscapeValue(window.location.href);
    var PostId =3D this.GetParameter("plckPostId"); if(PostId) adParam =
=3D adParam + "&plckPostId=3D" + PostId;
    var CurrPage =3D this.GetParameter("plckCurrentPage"); if(!CurrPage) =
CurrPage=3D"0"; adParam =3D adParam + "&plckCurrentPage=3D" + CurrPage;
    adParam +=3D "&plckCategoryCurrentPage=3D" + =
this.GetParameter('plckCategoryCurrentPage');   =20
    return this.ForumSend("ForumEditPost", "forumDest", "ForumMain", =
adParam);
}
SiteLifeProxy.prototype.ForumEditProfile =3D function() {
    return this.ForumSend("ForumEditProfile", "forumDest", "ForumMain", =
"plckRedirectUrl=3D" + this.EscapeValue(window.location.href));
}
SiteLifeProxy.prototype.ToggleExpand =3D function(imageId, tableId) {
  if (!this.collapsedCategories) {
    var cookie =3D document.cookie && =
document.cookie.match(/forumCatState=3D([^;]+)/);=20
    cookie =3D (cookie ? cookie[1].replace(/^\s+|\s+$/g, '') : []);=20
    this.collapsedCategories =3D (cookie.length ? =
unescape(cookie).split('|') : []);
  }
  var tableElem =3D document.getElementById(tableId), imgElem =3D =
document.getElementById(imageId),
      id =3D tableId.split(':')[1], cats =3D this.collapsedCategories, =
expire;
  if (tableElem.style.display =3D=3D 'none') {
    tableElem.style.display =3D 'block';
    imgElem.src =3D this.__baseUrl + '/Content/images/forums/minus.gif';
    for (var i =3D 0, length =3D cats.length; i < length; i++) {
      if ((cats[i] =3D=3D id) || (cats[i] =3D=3D=3D ''))
        cats.splice(i,1);
    }
  }
  else {
    tableElem.style.display =3D 'none';
    cats.push(id);=20
    imgElem.src =3D this.__baseUrl + '/Content/images/forums/plus.gif';
  }
  this.SetCookie('forumCatState', cats.join('|'));
}

SiteLifeProxy.prototype.ForumSearch =3D function(suffix) {
    var searchText =3D =
document.getElementById('plckSearchText'+suffix).value;
    searchText =3D searchText.replace(/^\s\s*/, '').replace(/\s\s*$/, =
'');
    if (searchText.length =3D=3D 0) {
		    alert("Please enter a search term.");
    } else {
		    searchText =3D FixSearchString(searchText);
		    var searchArea =3D =
document.getElementById('plckSearchArea'+suffix).value;
        this.LoadForumPage("ForumSearchPaginate", "plckSearchText", =
searchText, "plckSearchArea", searchArea, "plckCurrentPage", "0");
    }
    return false;
}
SiteLifeProxy.prototype.ForumSearchKeyPress =3D function(event, suffix) =
{
    if(IsEnter(event)){return this.ForumSearch(suffix);}else{return =
true;}
}
SiteLifeProxy.prototype.ForumSearchPaginate =3D function() {=09
    return this.ForumSend('ForumSearchPaginate', 'forumDest', =
'ForumMain', 'plckSearchArea=3D' + this.GetParameter('plckSearchArea') + =
'&plckSearchText=3D' + this.GetParameter('plckSearchText') + =
'&plckCurrentPage=3D' + this.GetParameter('plckCurrentPage'));
}

SiteLifeProxy.prototype.ForumSpecificForumSearchKeyPress =3D =
function(event, suffix, forumId) {
    if(IsEnter(event)){return this.ForumSpecificForumSearch(suffix, =
forumId);}else{return true;}
}
SiteLifeProxy.prototype.ForumSpecificForumSearch =3D function(suffix, =
forumId) {
    var searchText =3D =
document.getElementById('plckSearchText'+suffix).value;
    searchText =3D searchText.replace(/^\s\s*/, '').replace(/\s\s*$/, =
'');
    if (searchText.length =3D=3D 0) {
		alert("Please enter a search term.");
    } else {
		searchText =3D FixSearchString(searchText);
		this.LoadForumPage("ForumSearchSpecificForumPaginate", =
"plckSearchText", searchText, "plckForumId", forumId, "plckCurrentPage", =
"0");
    }
    return false;
}
SiteLifeProxy.prototype.ForumSearchSpecificForumPaginate =3D =
function(title) {=09
    return this.ForumSend('ForumSearchSpecificForumPaginate', =
'forumDest', 'ForumMain', 'plckForumId=3D' + =
this.GetParameter('plckForumId') + '&plckSearchText=3D' + =
this.GetParameter('plckSearchText') + '&plckCurrentPage=3D' + =
this.GetParameter('plckCurrentPage'));
}

SiteLifeProxy.prototype.LoadForumPage =3D function(PageName, paramName, =
paramVal) {
    var params =3D new Object();=20
    params['plckForumPage'] =3D PageName;
    for(ii=3D1; ii< this.LoadForumPage.arguments.length; ii+=3D2) {=20
        params[this.LoadForumPage.arguments[ii]] =3D =
this.LoadForumPage.arguments[ii+1];
    }
    this.ReloadPage(params);
    return false;
}

SiteLifeProxy.prototype.ForumSend =3D function(ApiName, DestDiv, =
ScriptName, AddParams){
    var url =3D this.__baseUrl + '/Forums/' + ApiName + =
'?plckElementId=3D' + DestDiv;
    if(AddParams) url +=3D '&' + AddParams;
    var plckPostSort =3D this.GetParameter('plckPostSort');
    if (plckPostSort !=3D null){
		  url +=3D "&plckPostSort=3D" + plckPostSort;
	  }
    this.__Send(url, ScriptName, 'widget:forums', arguments);
    return false;
}

SiteLifeProxy.prototype.ForumDiscussionEdit =3D function(discussionId, =
curView, curPage) {
    return this.ForumSend('ForumDiscussionEdit', 'forumDest', =
'ForumMain', 'plckDiscussionId=3D' + discussionId + =
'&plckCurrentView=3D' + curView + '&plckCurrentPage=3D' + curPage + =
'&plckRedirectUrl=3D' + this.EscapeValue(window.location.href));
}

SiteLifeProxy.prototype.ForumPostEdit =3D function(discussionId, postId, =
curView, curPage) {
    return this.ForumSend('ForumEditPost', 'forumDest', 'ForumMain', =
'plckDiscussionId=3D' + discussionId + '&plckPostId=3D' + postId + =
'&plckCurrentView=3D' + curView + '&plckCurrentPage=3D' + curPage + =
'&plckRedirectUrl=3D' + this.EscapeValue(window.location.href));
}

SiteLifeProxy.prototype.ForumDiscussionToggleIsSticky =3D =
function(discussionId, curView, curPage) {
  var plckDiscussionCreatedSortOrder =3D =
this.GetParameter('plckDiscussionCreatedSortOrder');
  if (plckDiscussionCreatedSortOrder !=3D null) {
    return this.ForumSend('ForumDiscussionToggleIsSticky', 'forumDest', =
'ForumMain', 'plckDiscussionId=3D' + discussionId + '&plckCurView=3D' + =
curView + '&plckCurrentPage=3D' + curPage + =
'&plckDiscussionCreatedSortOrder=3D' + plckDiscussionCreatedSortOrder);
  }
	return this.ForumSend('ForumDiscussionToggleIsSticky', 'forumDest', =
'ForumMain', 'plckDiscussionId=3D' + discussionId + '&plckCurView=3D' + =
curView + '&plckCurrentPage=3D' + curPage);
}

SiteLifeProxy.prototype.ForumDiscussionToggleIsClosed =3D =
function(discussionId, curView, curPage) {
    var plckDiscussionCreatedSortOrder =3D =
this.GetParameter('plckDiscussionCreatedSortOrder');
    if (plckDiscussionCreatedSortOrder !=3D null) {
      return this.ForumSend('ForumDiscussionToggleIsClosed', =
'forumDest', 'ForumMain', 'plckDiscussionId=3D' + discussionId + =
'&plckCurView=3D' + curView + '&plckCurrentPage=3D' + curPage + =
'&plckDiscussionCreatedSortOrder=3D' + plckDiscussionCreatedSortOrder);
    }
    return this.ForumSend('ForumDiscussionToggleIsClosed', 'forumDest', =
'ForumMain', 'plckDiscussionId=3D' + discussionId + '&plckCurView=3D' + =
curView + '&plckCurrentPage=3D' + curPage );
}

SiteLifeProxy.prototype.ForumDiscussionUpdateExcludeFromDiscoveryFlag =
=3D function(discussionId, curView, curPage, excludeFromDiscovery) {
    var plckDiscussionCreatedSortOrder =3D =
this.GetParameter('plckDiscussionCreatedSortOrder');
    if (plckDiscussionCreatedSortOrder !=3D null) {
      return =
this.ForumSend('ForumDiscussionUpdateExcludeFromDiscoveryFlag', =
'forumDest', 'ForumMain', 'plckDiscussionId=3D' + discussionId + =
'&plckCurView=3D' + curView + '&plckCurrentPage=3D' + curPage + =
'&plckExcludeFromDiscovery=3D' + excludeFromDiscovery + =
'&plckDiscussionCreatedSortOrder=3D' + plckDiscussionCreatedSortOrder);
    }
    return =
this.ForumSend('ForumDiscussionUpdateExcludeFromDiscoveryFlag', =
'forumDest', 'ForumMain', 'plckDiscussionId=3D' + discussionId + =
'&plckCurView=3D' + curView + '&plckCurrentPage=3D' + curPage + =
'&plckExcludeFromDiscovery=3D' + excludeFromDiscovery);
}


SiteLifeProxy.prototype.ForumDiscussionDelete =3D function(discussionId, =
curPage, confirmMsg) {
  var plckDiscussionCreatedSortOrder =3D =
this.GetParameter('plckDiscussionCreatedSortOrder');
  if (confirm(confirmMsg) =3D=3D true) {
    if (plckDiscussionCreatedSortOrder !=3D null) {
      return this.ForumSend('ForumDiscussionDelete', 'forumDest', =
'ForumMain', 'plckDiscussionId=3D' + discussionId + =
'&plckCurrentPage=3D' + curPage + '&plckDiscussionCreatedSortOrder=3D' + =
plckDiscussionCreatedSortOrder);
    }
    return this.ForumSend('ForumDiscussionDelete', 'forumDest', =
'ForumMain', 'plckDiscussionId=3D' + discussionId + =
'&plckCurrentPage=3D' + curPage );
  }
  else {
	return false;
  }
}

SiteLifeProxy.prototype.MoveDiscussion =3D function(discussionKey, =
toForum, curView, curPage) {
    return this.ForumSend('MoveDiscussion', 'forumDest', 'ForumMain', =
'discussionKey=3D' + discussionKey + '&toForum=3D' + toForum + =
'&plckCurView=3D' + curView + '&plckCurrentPage=3D' + curPage );
}

SiteLifeProxy.prototype.ForumEdit =3D function(forumId, curPage) {
    return this.ForumSend('ForumEdit', 'forumDest', 'ForumMain', =
'plckForumId=3D' + forumId + '&plckCurrentPage=3D' + curPage  );
}

SiteLifeProxy.prototype.ForumToggleIsClosed =3D function(forumId, =
curPage) {
    return this.ForumSend('ForumToggleIsClosed', 'forumDest', =
'ForumMain', 'plckForumId=3D' + forumId + '&plckCurrentPage=3D' + =
curPage  );
}

SiteLifeProxy.prototype.ForumDelete =3D function(forumId, confirmMsg) {
  if (confirm(confirmMsg) =3D=3D true) {
    return this.ForumSend('ForumDelete', 'forumDest', 'ForumMain', =
'plckForumId=3D' + forumId );
  }
  else {
	return false;
  }
}

SiteLifeProxy.prototype.ForumPostDelete =3D function(postId, curPage, =
confirmMsg) {
  if (confirm(confirmMsg) =3D=3D true) {
    return this.ForumSend('ForumPostDelete', 'forumDest', 'ForumMain', =
'plckPostId=3D' + postId + '&plckCurPage=3D' + curPage);
  }
  else {
	return false;
  }
}

SiteLifeProxy.prototype.ForumBlockUser =3D function(postId, userId, =
value, curPage) {
    return this.ForumSend('ForumBlockUser', 'forumDest', 'ForumMain', =
'plckPostId=3D' + postId + '&plckUserId=3D' + userId + '&plckValue=3D' + =
value + '&plckCurPage=3D' + curPage);
}

SiteLifeProxy.prototype.ForumMyDiscussionsPaginate =3D function(pageNum) =
{
    return this.ForumSend('ForumMyDiscussionsPaginate', =
'ForumMyDiscussionsDiv', 'ForumMain', 'plckMyDiscussionsPage=3D' + =
pageNum);
}

SiteLifeProxy.prototype.ForumImage =3D function() {
    var adParam =3D "plckRedirectUrl=3D" + =
this.GetParameter("plckRedirectUrl");
    var pId =3D this.GetParameter("plckPhotoId"); adParam +=3D =
"&plckPhotoId=3D" + pId;
    return this.ForumSend('ForumImage', 'forumDest', 'ForumMain', =
adParam);
}

SiteLifeProxy.prototype.BaseAdParam =3D function () {
    var adParam =3D "plckRedirectUrl=3D" + =
this.EscapeValue(window.location.href);
    var fId =3D this.GetParameter("plckForumId"); adParam +=3D =
"&plckForumId=3D" + fId;
    var curView =3D this.GetParameter("plckCurrentView"); if(curView) =
adParam +=3D "&plckCurrentView=3D" + curView;
    var curPage =3D this.GetParameter("plckCurrentPage"); if(curPage) =
adParam +=3D "&plckCurrentPage=3D" + curPage;
    return adParam;
}

SiteLifeProxy.prototype.ForumJoinGroup =3D function() {
    var adParam =3D this.BaseAdParam();
    var dId =3D this.GetParameter("plckDiscussionId"); if(dId) adParam =
+=3D "&plckDiscussionId=3D" + dId;
    return this.ForumSend("ForumJoinGroup", "forumDest", "ForumMain", =
adParam);
}

SiteLifeProxy.prototype.ForumLeaveGroup =3D function() {
    var adParam =3D this.BaseAdParam();
    var dId =3D this.GetParameter("plckDiscussionId"); if(dId) adParam =
+=3D "&plckDiscussionId=3D" + dId;
    return this.ForumSend("ForumLeaveGroup", "forumDest", "ForumMain", =
adParam);
}

SiteLifeProxy.prototype.ForumGroupMemberList =3D function() {
    var adParam =3D this.BaseAdParam();
    return this.ForumSend("ForumGroupMemberList", "forumDest", =
"ForumMain", adParam);
}

SiteLifeProxy.prototype.ForumInviteUser =3D function() {
    var adParam =3D this.BaseAdParam();
    return this.ForumSend("ForumInviteUser", "forumDest", "ForumMain", =
adParam);
}

SiteLifeProxy.prototype.ForumGroupConfirm =3D function() {
    var adParam =3D this.BaseAdParam();
    var confirmType =3D this.GetParameter("plckConfirmType"); if =
(confirmType) adParam +=3D "&plckConfirmType=3D" + confirmType;
    return this.ForumSend("ForumGroupConfirm", "forumDest", "ForumMain", =
adParam);
}

SiteLifeProxy.prototype.ForumSendInviteToUser =3D function(user, mail) {
    var adParam =3D this.BaseAdParam()
		,username =3D user || this.GetParameter("plckUsername")
	    ,email =3D mail || this.GetParameter("plckUserEmail");
	if (username) adParam +=3D "&plckUsername=3D" + username;
    if (email) adParam +=3D "&plckUserEmail" + email;
    return this.ForumSend("ForumSendInviteToUser", "forumDest", =
"ForumMain", adParam);
}

SiteLifeProxy.prototype.ForumAddEnemy =3D function(enemyKey) {
    var adParam =3D this.BaseAdParam();
    adParam +=3D "&enemyKey=3D" + enemyKey;
    var dId =3D this.GetParameter("plckDiscussionId"); if(dId) adParam =
+=3D "&plckDiscussionId=3D" + dId;
    return this.ForumSend("ForumAddEnemy", "forumDest", "ForumMain", =
adParam);
}

SiteLifeProxy.prototype.ForumRemoveEnemy =3D function(enemyKey) {
    var adParam =3D this.BaseAdParam();
    adParam +=3D "&enemyKey=3D" + enemyKey;
    var dId =3D this.GetParameter("plckDiscussionId"); if(dId) adParam =
+=3D "&plckDiscussionId=3D" + dId;
    return this.ForumSend("ForumRemoveEnemy", "forumDest", "ForumMain", =
adParam);
}

function slGetElementsByClassName(classname, node)  {
    if(!node) node =3D document.getElementsByTagName("body")[0];
    var a =3D [];
    var re =3D new RegExp('\\b' + classname + '\\b');
    var els =3D node.getElementsByTagName("*");
    for(var i=3D0,j=3Dels.length; i<j; i++)
        if(re.test(els[i].className))a.push(els[i]);
    return a;
}

	function hideAllPostsFromUser(userKey){
	  var posts =3D =
slGetElementsByClassName("postVisibilityContainer_"+userKey, document);
	  var hiddenMessages =3D =
slGetElementsByClassName("postHiddenMessage_"+userKey, document);
	 =20
	  for(i=3D0; i < posts.length; i++){
	    posts[i].style.display =3D "none";
	    hiddenMessages[i].style.display =3D "block";
	  }
	 =20
	  gSiteLife.ForumAddEnemy(userKey);
	}
=09
	function showAllPostsFromUser(userKey){
	  var posts =3D =
slGetElementsByClassName("postVisibilityContainer_"+userKey, document);
	  var hiddenMessages =3D =
slGetElementsByClassName("postHiddenMessage_"+userKey, document);
	  	 =20
	  for(i=3D0; i < posts.length; i++){
	    posts[i].style.display =3D "block";
	    hiddenMessages[i].style.display =3D "none";
	  }
	 =20
	  gSiteLife.ForumRemoveEnemy(userKey);
	}
=09
SiteLifeProxy.prototype.ForumChangeSort =3D function(sortParamName, =
sortDirection) {
		var currentUrl =3D document.location.href;
		var newUrl;
		// replace the sort param in the url, if found
		var re =3D new RegExp("([?|&])" + sortParamName + "=3D.*?(&|$)","i");
		if (currentUrl.match(re)) {
			newUrl =3D currentUrl.replace(re, '$1' + sortParamName + "=3D" + =
sortDirection + '$2');
		}
		else {
			if(currentUrl.indexOf('?') >=3D 0){
				newUrl =3D currentUrl + '&' + sortParamName + "=3D" + sortDirection;
			}
			else{
				newUrl =3D currentUrl + '?' + sortParamName + "=3D" + sortDirection;
			}
		}
		document.location.href =3D newUrl;
}

SiteLifeProxy.prototype.ForumSetLastRead =3D function(discussionKey, =
postKey) {
    var adParam =3D this.BaseAdParam();
    adParam +=3D "&discussionKey=3D" + discussionKey;
    if(postKey){
		adParam +=3D "&postKey=3D" + postKey;
	}
    var ret =3D this.ForumSend("ForumSetLastRead", "forumDest", =
"ForumMain", adParam);
   =20
    if(!postKey){
		setTimeout("location.reload();", 10);
    }
   =20
    return ret;
}=20

SiteLifeProxy.prototype.ForumSetAllRead =3D function(forumKey) {
    var adParam =3D this.BaseAdParam();
    adParam +=3D "&forumKey=3D" + forumKey;
    var ret =3D this.ForumSend("ForumSetAllRead", "forumDest", =
"ForumMain", adParam);
	setTimeout("location.reload();", 10);
    return ret;
}=20

SiteLifeProxy.prototype.CategorySetAllRead =3D function(categoryKey) {
    var adParam =3D this.BaseAdParam();
    adParam +=3D "&categoryKey=3D" + categoryKey;
    var ret =3D this.ForumSend("CategorySetAllRead", "forumDest", =
"ForumMain", adParam);
	setTimeout("location.reload();", 10);
    return ret;
}=20

SiteLifeProxy.prototype.ForumDiscussionSubscribe =3D =
function(discussionKey, targetDiv) {
    var url =3D this.__baseUrl + '/Forums/ForumDiscussionSubscribe?' + =
'plckDiscussionId=3D' + discussionKey + '&plckElementId=3D' + targetDiv;
    this.__Send(url, "ForumDiscussionSubscribe");
    return false;
}

SiteLifeProxy.prototype.ForumDiscussionUnSubscribe =3D =
function(discussionKey, targetDiv) {
    var url =3D this.__baseUrl + '/Forums/ForumDiscussionUnSubscribe?' + =
'plckDiscussionId=3D' + discussionKey + '&plckElementId=3D' + targetDiv;
    this.__Send(url, "ForumDiscussionUnSubscribe");
    return false;
}

SiteLifeProxy.prototype.ForumCategory =3D function(categoryKey) {
    this.WriteDiv("forumDest", "Forum_Main");
    var categoryId;
    if (typeof(categoryKey) =3D=3D "undefined") {
        categoryId =3D this.GetParameter('plckCategoryId');
    }
    else {
        categoryId =3D escape(categoryKey);
    }
   =20
    return this.ForumSend('ForumCategory', 'forumDest', 'ForumMain', =
'plckCategoryId=3D' + categoryId);
   =20
}

SiteLifeProxy.prototype.GetUrlParts =3D function(name) {
    name =3D name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
    var regexS =3D "[\\?&]"+name+"=3D([^&#]*)";
    var regex =3D new RegExp( regexS );
    var results =3D regex.exec( window.location.href );
    if( results =3D=3D null ) {=20
        return "";=20
    }
    else {
        return results[1];
    }
}=0A=

SiteLifeProxy.prototype.Recommend =3D function(keyType, targetKey, =
parentUrl) {
    keyType =3D keyType || "ExternalResource";
    targetKey =3D targetKey || =
gSiteLife.__StripAnchorFromUrl(window.location.href);
    parentUrl =3D parentUrl || window.location.href;
    targetKey =3D targetKey;
    var divId =3D "Recommend" + new Date().getTime();
    this.WriteDiv(divId, "Recommend");
    var url =3D this.__baseUrl +=20
        '/Recommend/Recommend?plckElementId=3D' + divId +=20
        '&plckTargetKey=3D' + gSiteLife.EscapeValue(targetKey) +=20
        '&plckTargetKeyType=3D' + keyType +
        '&plckTargetUrl=3D' + gSiteLife.EscapeValue(parentUrl);
    this.__Send(url);
    return false;  =20
}

SiteLifeProxy.prototype.PostRecommendation =3D function(keyType, =
targetKey, recommendDiv, parentTitle, parentUrl) {
    parentUrl =3D parentUrl || window.location.href;
    var url =3D this.__baseUrl +=20
        '/Recommend/PostRecommendation?plckElementId=3D' + recommendDiv =
+=20
        '&plckTargetKey=3D' + gSiteLife.EscapeValue(targetKey) +=20
        '&plckTargetKeyType=3D' + keyType +
        '&plckTargetUrl=3D' + gSiteLife.EscapeValue(parentUrl);
    if(parentTitle) url +=3D '&plckParentTitle=3D' + =
gSiteLife.EscapeValue(parentTitle);
   =20
    this.__Send(url);
    return false;
}
=0A=

SiteLifeProxy.prototype.RateItem =3D function (itemId, itemType, rating, =
targetDiv, parentTitle, parentUrl) {
    var url =3D this.__baseUrl + '/Rating/Rate?plckElementId=3D' + =
targetDiv +=20
        '&plckTargetKey=3D' + gSiteLife.EscapeValue(itemId) +=20
        '&plckTargetKeyType=3D' + itemType +=20
        '&plckRating=3D' + rating +
        '&plckTargetUrl=3D' + gSiteLife.EscapeValue(parentUrl);
        if(parentTitle) url +=3D '&plckParentTitle=3D' + parentTitle;
    this.__Send(url);
    return false;
}

SiteLifeProxy.prototype.Rating =3D function(itemType, itemId, parentUrl) =
{
    itemType =3D itemType || "ExternalResource";
    itemId =3D itemId || =
gSiteLife.__StripAnchorFromUrl(window.location.href);
    parentUrl =3D parentUrl || window.location.href;
    var divId =3D itemId + "_plckRateDiv_" + new Date().getTime() + =
Math.floor(Math.random()*1000);
    this.WriteDiv(divId, "Rating");
    var url =3D this.__baseUrl + '/Rating/GetRating?plckElementId=3D' + =
divId +
        '&plckTargetKey=3D' + gSiteLife.EscapeValue(itemId) +=20
        '&plckTargetKeyType=3D' + itemType +
        '&plckTargetUrl=3D' + gSiteLife.EscapeValue(parentUrl);
    this.__Send(url);
    return false;  =20
}

SiteLifeProxy.prototype.RatingClickStar =3D function (index, targetKey, =
targetKeyType, targetDiv, parentTitle, parentUrl) {
    gSiteLife.RateItem(targetKey, targetKeyType, index, targetDiv, =
parentTitle, parentUrl);
   =20
}

SiteLifeProxy.prototype.RatingFillStar =3D function(index, targetKey, =
lbl) {
    var stars =3D document.getElementsByName(targetKey+"Stars");
    var label =3D document.getElementById(targetKey + "Rating-label");
    var selectedIndex =3D =
parseInt(document.getElementById(targetKey+"Rating-value").value);
   =20
    if (index < 0 && selectedIndex >=3D 0) index =3D selectedIndex;
    for(i=3D1; i <=3D stars.length; i++) {
        if (index > 0 && i <=3D index) {
            stars[i-1].src =3D this.__baseUrl + =
"/Content/images/icons/fullstar.gif";
        }else {
            stars[i-1].src =3D this.__baseUrl + =
"/Content/images/icons/emptystar.gif";
        }
    }
    label.innerHTML =3D lbl;
}
=0A=
SiteLifeProxy.prototype.Review =3D function(parentKeyType, parentKey, =
reviewedTitle, reviewCategory, pageSize, sort, currentPage) {
   =20
    var divId =3D "Reviews_Container";
    this.WriteDiv(divId);
    return this.GetReviews(parentKeyType, parentKey, reviewedTitle, =
reviewCategory, pageSize, sort, currentPage);
}

SiteLifeProxy.prototype.ReviewClickStar =3D function (index, targetKey) =
{
    document.getElementById(targetKey+"Rating-value").value =3D index;
}

SiteLifeProxy.prototype.GetReviews =3D function(parentKeyType, =
parentKey, reviewedTitle, reviewCategory, pageSize, sort, currentPage) {
    parentKeyType =3D parentKeyType || "ExternalResource";
    parentKey =3D gSiteLife.EscapeValue(parentKey) || =
gSiteLife.EscapeValue(gSiteLife.__StripAnchorFromUrl(window.location.href=
));
    reviewedTitle =3D gSiteLife.EscapeValue(reviewedTitle) || =
gSiteLife.EscapeValue(document.title);
    reviewCategory =3D reviewCategory || "Uncategorized";
    pageSize =3D pageSize || 10;
    sort =3D sort || "TimeStampAscending";
    currentPage =3D currentPage || 0;
    var url =3D this.__baseUrl + =
'/Review/Reviews?plckElementId=3DReviews_Container' +
        '&plckTargetKey=3D' + parentKey +=20
        '&plckTargetKeyType=3D' + parentKeyType +
        '&plckReviewedTitle=3D' + reviewedTitle +
        '&plckReviewCategory=3D' + reviewCategory +
        '&plckSort=3D' + sort +=20
        '&plckParentUrl=3D' + =
gSiteLife.EscapeValue(gSiteLife.__StripAnchorFromUrl(window.location.href=
)) +=20
        '&plckParentTitle=3D' + gSiteLife.EscapeValue(document.title) +
        '&plckCurrentPage=3D' + currentPage +
        '&plckPageSize=3D' + pageSize;
    this.__Send(url);
    return false;  =20
}
=0A=
SiteLifeProxy.prototype.SummaryArticlesMostCommented =3D function(count) =
{
 return this.SummaryPanel("SummaryArticlesMostCommented", count);=20
}=20
SiteLifeProxy.prototype.SummaryArticlesMostRecommended =3D =
function(count) {
 return this.SummaryPanel("SummaryArticlesMostRecommended", count);=20
}=20
SiteLifeProxy.prototype.SummaryPhotosRecentPhotosByTag =3D =
function(count, tagFilter, filterBySiteOfOrigin) {
 return this.SummaryPanel("SummaryPhotosRecentPhotosByTag", count, =
tagFilter, filterBySiteOfOrigin);=20
}=20
SiteLifeProxy.prototype.SummaryPhotosRecentUserPhotos =3D =
function(count, tagFilter, filterBySiteOfOrigin) {
 return this.SummaryPanel("SummaryPhotosRecentUserPhotos", count, =
tagFilter, filterBySiteOfOrigin);
}=20
SiteLifeProxy.prototype.SummaryPhotosRecentPhotos =3D function(count, =
tagFilter, filterBySiteOfOrigin) {
 return this.SummaryPanel("SummaryPhotosRecentPhotos", count, tagFilter, =
filterBySiteOfOrigin);=20
}=20
SiteLifeProxy.prototype.SummaryPhotosMostRecommendedPhotos =3D =
function(count, filterBySiteOfOrigin) {
 return this.SummaryPanel("SummaryPhotosMostRecommendedPhotos", count, =
"", filterBySiteOfOrigin);=20
}=20
SiteLifeProxy.prototype.SummaryPhotosMostRecommendedUserPhotos =3D =
function(count, filterBySiteOfOrigin) {
 return this.SummaryPanel("SummaryPhotosMostRecommendedUserPhotos", =
count, "", filterBySiteOfOrigin);=20
}=20
SiteLifeProxy.prototype.SummaryPhotosMostRecommendedGalleries =3D =
function(count) {
 return this.SummaryPanel("SummaryPhotosMostRecommendedGalleries", =
count);=20
}=20
SiteLifeProxy.prototype.SummaryForumsRecentDiscussions =3D =
function(count, filterBySiteOfOrigin, parentIds) {
    var divId=3D "Summary_Container" + this.SID;
    if(this.numSummaryWidgets){ divId +=3D this.numSummaryWidgets++; } =
else { this.numSummaryWidgets =3D 1; }
    this.WriteDiv(divId, divId);
    var methodName =3D "SummaryForumsRecentDiscussions";
    var tagFilter =3D "";
    return this.SummarySend(methodName, divId, divId + "Script", =
"plckCount", count, "plckTagFilter", tagFilter, =
"plckFilterBySiteOfOrigin", filterBySiteOfOrigin, "plckParentIds", =
parentIds);
}=20
SiteLifeProxy.prototype.SummaryBlogsRecent =3D function(count, =
tagFilter) {
    return this.SummaryPanel("SummaryBlogsRecent", count, tagFilter);
}
SiteLifeProxy.prototype.SummaryBlogsRecentPostsByTag =3D function(count, =
tagFilter, filterBySiteOfOrigin) {
 return this.SummaryPanel("SummaryBlogsRecentPostsByTag", count, =
tagFilter, filterBySiteOfOrigin);=20
}=20
SiteLifeProxy.prototype.SummaryBlogsRecentPosts =3D function(count, =
tagFilter, filterBySiteOfOrigin) {
 return this.SummaryPanel("SummaryBlogsRecentPosts", count, tagFilter, =
filterBySiteOfOrigin);=20
}=20
SiteLifeProxy.prototype.SummaryBlogsMostRecommendedPosts =3D =
function(count, tagFilter, filterBySiteOfOrigin) {
    return this.SummaryPanel("SummaryBlogsMostRecommendedPosts", count, =
tagFilter, filterBySiteOfOrigin);
}
SiteLifeProxy.prototype.SummaryPersonaProfileRecent =3D function(count) =
{
    return this.SummaryPanel("SummaryPersonaProfileRecent", count);
}
SiteLifeProxy.prototype.SummaryPanel =3D function(methodName, count, =
tagFilter, filterBySiteOfOrigin) {
    var divId=3D "Summary_Container" + this.SID;
    if(this.numSummaryWidgets){ divId +=3D this.numSummaryWidgets++; } =
else { this.numSummaryWidgets =3D 1; }
    this.WriteDiv(divId, divId);
    return this.SummarySend(methodName, divId, divId + "Script", =
"plckCount", count, "plckTagFilter", tagFilter, =
"plckFilterBySiteOfOrigin", filterBySiteOfOrigin);
}
SiteLifeProxy.prototype.SummarySend =3D function(ApiName, DestDiv, =
ScriptName) {
    var url =3D this.__baseUrl + '/Summary/' + ApiName + =
'?plckElementId=3D' + DestDiv;
    for(ii=3D3; ii< this.SummarySend.arguments.length; ii+=3D2) { =
if(this.SummarySend.arguments[ii+1]) { url +=3D "&" + =
this.SummarySend.arguments[ii] + "=3D" + =
this.SummarySend.arguments[ii+1];} }
    this.__Send(url, ScriptName);
    return false;
}
=0A=



var gSiteLife =3D new =
SiteLifeProxy("http://sitelife.crainsdetroit.com/ver1.0");
gSiteLife.apiKey =3D "${APIKey}";
gSiteLife.SID =3D "sitelife.crainsdetroit.com";



    // We need to return true here as our default behavior allowing =
normal link navigation
    gSiteLife.AddEventHandler('ExternalResourceLink', function() {return =
true;});

if(gSiteLife.GetParameter('plckPersonaPage') && =
gSiteLife.GetParameter('plckPersonaPage').indexOf('PersonaBlog') =3D=3D =
0) {
document.write("<link href=3D" + =
"'http://sitelife.crainsdetroit.com/ver1.0/blog/BlogRss?plckBlogId=3D" + =
gSiteLife.GetParameter('uid') + "' title=3D'" + =
gSiteLife.GetParameter('uid') + " Blog'" + "rel=3D'alternate' =
type=3D'application/rss+xml' />"); }

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: multipart/alternative;
	boundary="----=_NextPart_001_002D_01CAAB22.69C757B0"


------=_NextPart_001_002D_01CAAB22.69C757B0
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/article/20100211/FREE/100219973

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" =
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<HTML xmlns=3D"http://www.w3.org/1999/xhtml"><HEAD><TITLE>Nearly 700 =
jobs added in Macomb County in 2009 - Detroit News and Information - =
Crain's Detroit Business</TITLE><LINK=20
rel=3Dcanonical=20
href=3D"http://www.crainsdetroit.com/article/20100211/FREE/100219973"><LI=
NK=20
title=3D"CrainsDetroit.com Breaking News" rel=3Dalternate =
type=3Dapplication/rss+xml=20
href=3D"/section/RSS01?MIME=3DXML"><LINK rel=3D"shortcut icon"=20
href=3D"http://www.crainsdetroit.com/Assets/images/favicon.ico"=20
mce_href=3D"http://crainsdetroit.com/favicon.ico">
<META name=3Ddescription=20
content=3D"Daily news and features from crainsdetroit.com and from the =
weekly newspaper Crain's Detroit Business. RSS feeds for breaking news =
and the Detroit automotive, technology, health care, manufacturing, =
sports, real estate, nonprofit and government sectors&#13;&#10;">
<META name=3Dverify-v1 =
content=3DqPvWKmNahUcs8XBgUi+fy3A5YH6uzhhairJpQFCqXMs=3D>
<META content=3D"text/html; charset=3Diso-8859-1" =
http-equiv=3DContent-Type>
<SCRIPT language=3DJavaScript>
<!--
//configuration
OAS_url =3D 'http://oascentral.crainsdetroit.com/RealMedia/ads/';
//OAS_url =3D 'http://oas-central.realmedia.com/RealMedia/ads/';
//;
OAS_sitepage =3D 'www.detroitbusiness.com/free/news/100219973';
// listpos
// currcategory: FREE
// if printer version:
// if article:
OAS_listpos =3D =
'Top,Middle,TopLeft,x01,x02,x03,x05,Bottom,Position3,Position4,Frame1';
OAS_query =3D '';
OAS_target =3D '_blank';
//end of configuration
OAS_version =3D 10;
//OAS_rn =3D '001234567890'; OAS_rns =3D '1234567890';
//OAS_rn =3D new String (Math.random()); OAS_rns =3D OAS_rn.substring =
(2, 11);
OAS_rns =3D '5620892959';
function OAS_RICH(pos) {
  document.write('<A HREF=3D"' + OAS_url + 'click_nx.ads/' + =
OAS_sitepage + '/1' + OAS_rns + '@' + OAS_listpos + '!' + pos + '?' + =
OAS_query + '" TARGET=3D' + OAS_target + '>');
  document.write('<IMG SRC=3D"' + OAS_url + 'adstream_nx.ads/' + =
OAS_sitepage + '/1' + OAS_rns + '@' + OAS_listpos + '!' + pos + '?' + '" =
BORDER=3D0></A>');
}
//-->
</SCRIPT>

<SCRIPT language=3DJavaScript1.1>
<!--
OAS_version =3D 11;
if (navigator.userAgent.indexOf('Mozilla/3') !=3D -1 || =
navigator.userAgent.indexOf('Mozilla/4.0 WebTV') !=3D -1)
  OAS_version =3D 10;
if (OAS_version >=3D 11)
  document.write('<SCR' + 'IPT LANGUAGE=3DJavaScript1.1 SRC=3D"' + =
OAS_url + 'adstream_mjx.ads/' + OAS_sitepage + '/1' + OAS_rns + '@' + =
OAS_listpos + '?' + '"><\/SCRIPT>');
//-->
</SCRIPT>

<SCRIPT language=3DJavaScript>
<!--
document.write('');
//-->
</SCRIPT>
<!------ OAS SETUP end ------>
<SCRIPT type=3Dtext/javascript=20
src=3D"http://www.crainsdetroit.com/Assets/pluck/SiteLifeGlobal.js?ver=3D=
20090911"></SCRIPT>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://www.crainsdetroit.com/Assets/pluck/pluckLib.js?ver=3D200909=
11"></SCRIPT>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://www.crainsdetroit.com/Assets/dm/nyxMain.js?ver=3D20090911">=
</SCRIPT>

<SCRIPT language=3Djavascript>
function openNewWindow(URLtoOpen, windowName, windowFeatures) {
newWindow=3Dwindow.open(URLtoOpen, windowName, windowFeatures); =
}</SCRIPT>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://www.crainsdetroit.com/Assets/js/add-event.js"></SCRIPT>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://www.crainsdetroit.com/Assets/js/popup.js"></SCRIPT>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://www.crainsdetroit.com/Assets/js/addprintlink.js"></SCRIPT>

<SCRIPT language=3DJavaScript1.2=20
src=3D"http://www.crainsdetroit.com/includes/fontsizer.js"></SCRIPT>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://www.crainsdetroit.com/js/cci.js?ver=3D20100119"></SCRIPT>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://www.crainsdetroit.com/js/cci-setup.js?ver=3D20100119"></SCR=
IPT>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://www.crainsdetroit.com/js/cci-lib.js?ver=3D20100119"></SCRIP=
T>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://www.crainsdetroit.com/js/jquery-1.3.2.min.js"></SCRIPT>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://www.crainsdetroit.com/js/jquery.jcarousel.pack.js"></SCRIPT=
>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://www.crainsdetroit.com/js/cci-lib-jq.js?ver=3D20100119"></SC=
RIPT>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://www.crainsdetroit.com/section/FREE?template=3DpluckJS&amp;m=
ime=3Djavascript&amp;ver=3D20100119"></SCRIPT>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://www.crainsdetroit.com/js/cci-lib-pluck.js?ver=3D20100119"><=
/SCRIPT>
<LINK rel=3Dstylesheet type=3Dtext/css=20
href=3D"http://www.crainsdetroit.com/includes/tabber.css" =
media=3Dscreen><LINK=20
rel=3Dstylesheet =
href=3D"http://www.crainsdetroit.com/includes/gen.css"><LINK=20
rel=3Dstylesheet =
href=3D"http://www.crainsdetroit.com/includes/navigation.css"><LINK=20
title=3DMainCSS rel=3Dstylesheet type=3Dtext/css=20
href=3D"http://www.crainsdetroit.com/includes/s.css"><LINK =
title=3DMedstyle=20
rel=3D"alternate stylesheet" type=3Dtext/css=20
href=3D"http://www.crainsdetroit.com/includes/m.css"><LINK =
title=3DLgestyle=20
rel=3D"alternate stylesheet" type=3Dtext/css=20
href=3D"http://www.crainsdetroit.com/includes/l.css"><LINK =
rel=3Dstylesheet=20
type=3Dtext/css =
href=3D"http://www.crainsdetroit.com/includes/interstitial.css"><!--[if =
IE]>
<STYLE type=3Dtext/css media=3Dscreen>BODY {
	FONT-SIZE: 100%; BEHAVIOR: url(/includes/csshover.htc)
}
#menu UL LI {
	WIDTH: 100%; FLOAT: left
}
#menu UL LI A {
	HEIGHT: 1%
}
#menu A {
	FONT: bold 11px/16px arial, helvetica, sans-serif
}
#menu H2 {
	FONT: bold 11px/16px arial, helvetica, sans-serif
}
#menu_2 UL LI {
	WIDTH: 100%; FLOAT: left
}
#menu_2 UL LI A {
	HEIGHT: 1%
}
#menu_2 A {
	FONT: bold 11px/16px arial, helvetica, sans-serif
}
#menu_2 H2 {
	FONT: bold 11px/16px arial, helvetica, sans-serif
}
</STYLE>
<![endif]-->
<META name=3DGENERATOR content=3D"MSHTML 8.00.6001.18854"></HEAD>
<BODY><!-- BEGIN WEBSIDESTORY CODE v8.0.0 (11up) --><!-- COPYRIGHT =
1997-2003 WEBSIDESTORY, INC. ALL RIGHTS RESERVED. U.S.PATENT No. =
6,393,479 B1. Privacy notice at: http://websidestory.com/privacy --><!-- =
prepared for crainsdetroit.com  -->
<SCRIPT language=3Djavascript>
var _hbEC=3D0,_hbE=3Dnew Array;function =
_hbEvent(a,b){b=3D_hbE[_hbEC++]=3Dnew Object();b._N=3Da;b._C=3D0;return =
b;}
var =
hbx=3D_hbEvent("pv");hbx.vpc=3D"HBX0100u";hbx.gn=3D"ehg-crain.hitbox.com"=
;
hbx.acct=3D"DM53030379WD83EN3";
hbx.mlc=3D"www.detroitbusiness.com/free";
hbx.pn=3D"nearly-700-jobs-added-in-macomb-county-in-2009 (100219973)";
hbx.pndef=3D"title";
hbx.ctdef=3D"full";
hbx.lt=3D"none";
hbx.dlf=3D"!.cms,.js";
hbx.dft=3D"y";
hbx.elf=3D"n";
hbx.seg=3D"";
hbx.cmpn=3D"DBCMP";
hbx.gpn=3D"DBGP";
</SCRIPT>

<SCRIPT language=3Djavascript1.1 defer=20
src=3D"http://crainsdetroit.com/includes/hbx.js"></SCRIPT>
<!--END WEBSIDESTORY CODE-->
<TABLE width=3D960 bgColor=3D#ffffff align=3Dcenter>
  <TBODY>
  <TR>
    <TD id=3Dtop_ad height=3D100 vAlign=3Dtop colSpan=3D3>
      <DIV id=3Dtoprow-left><SPAN id=3DUserNav>Text Size: <A=20
      href=3D"javascript:setActiveStyleSheet('MainCSS')">S</A> <A=20
      href=3D"javascript:setActiveStyleSheet('Medstyle')">M</A> <A=20
      =
href=3D"javascript:setActiveStyleSheet('Lgestyle')">L</A></SPAN></DIV>
      <DIV id=3Dtoprow-center>
      <SCRIPT language=3DJavaScript>OAS_RICH('Top');</SCRIPT>
      </DIV></TD></TR>
  <TR vAlign=3Dbottom align=3Dmiddle>
    <TD height=3D80 width=3D180>
      <SCRIPT language=3DJavaScript1.1=20
      =
src=3D"http://oas-central.realmedia.com/RealMedia/ads/adstream_jx.cgi/www=
.detroitbusiness.com/index/34159961307@Position4"></SCRIPT>
    </TD>
    <TD width=3D600><A href=3D"http://www.crainsdetroit.com/"><IMG =
border=3D0=20
      alt=3D"Detroit News: Crain's Detroit Business"=20
      =
src=3D"http://www.crainsdetroit.com/Assets/gif/CDBlogo.gif"></A><BR>
      <H1=20
      style=3D"MARGIN: 0px; FONT-FAMILY: arial; COLOR: #cc6633; =
FONT-SIZE: 12px; FONT-WEIGHT: bold">Detroit=20
      and Southeast Michigan's premier local business news and =
information Web=20
      site</H1></TD>
    <TD width=3D180><A =
href=3D"http://www.crainsdetroit.com/section/crainsemails"=20
      target=3Dblank alt=3D"Click here to register"><IMG border=3D0=20
      alt=3D"Crain's FREE E-newsletters - Click here to register"=20
      =
src=3D"http://www.crainsdetroit.com/assets/ad/freenewslett170x70.gif"></A=
>=20
    </TD></TR>
  <TR>
    <TD colSpan=3D3><!--start DROP MENU-->
      <DIV id=3Dnavigation><SPAN class=3Dpreload1></SPAN><SPAN=20
class=3Dpreload2></SPAN>
      <UL class=3Dmenu2>
        <LI class=3Dtop><A id=3Dhome class=3Dtop_link=20
        =
href=3D"http://www.crainsdetroit.com/"><SPAN>Home</SPAN></A></LI>
        <LI class=3Dtop><A id=3Dnews class=3Dtop_link=20
        href=3D"http://www.crainsdetroit.com/section/breaking"><SPAN=20
        class=3Ddown>News</SPAN><!--[if gte IE =
7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

        <UL class=3Dsub>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/breaking">All Latest=20
          News</A></LI>
          <LI><A class=3Dfly=20
          href=3D"http://www.crainsdetroit.com/section/bol08">News by =
Industry<!--[if gte IE 7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

          <UL>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/advertising">Advertising/Mar=
keting</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/arts">Arts/Entertainment</A>=
</LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/auto">Automotive</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/finance">Banking/Finance</A>=
</LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/biotech">Biotech</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/casinos">Casinos/Gambling</A=
></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/development">Economic=20
            Development</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/economy">Economy</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/educate">Education</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/energy">Energy/Utilities</A>=
</LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/environment">Environmental</=
A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/government">Government</A></=
LI>
            <LI><A =
href=3D"http://www.crainsdetroit.com/section/health">Health=20
            Care/Health Care Extra</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/hospitality">Hospitality/Hot=
els</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/international">International=
</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/labor">Labor/Workforce</A></=
LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/legal">Law/Legal</A></LI>
            <LI><A =
href=3D"http://www.crainsdetroit.com/section/stocks">Local=20
            Stocks</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/media">Media</A></LI>
            <LI><A =
href=3D"http://www.crainsdetroit.com/section/mergers">Mergers=20
            &amp; Aquisitions</A></LI>
            <LI><A =
href=3D"http://www.crainsdetroit.com/section/minority">Minority=20
            Business</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/manufacturing">Nonauto=20
            Manufacturing</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/nonprofit">Nonprofits/Philan=
thropy</A></LI>
            <LI><A =
href=3D"http://www.crainsdetroit.com/section/realestate">Real=20
            Estate</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/retail">Retail</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/food">Restaurants/Food</A></=
LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/services">Services</A></LI>
            <LI><A =
href=3D"http://www.crainsdetroit.com/section/smalltalk">Small=20
            Business</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/sports">Sports</A></LI>
            <LI><A =
href=3D"http://www.crainsdetroit.com/section/state">State=20
            News</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/technology">Technology</A></=
LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/tourism">Tourism</A></LI>
            <LI><A=20
            =
href=3D"http://www.crainsdetroit.com/section/transit">Transportation</A><=
/LI></UL><!--[if lte IE 6]></td></tr></table></a><![endif]--></LI>
          <LI><A class=3Dfly=20
          href=3D"http://www.crainsdetroit.com/section/geo01">News by =
County<!--[if gte IE 7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

          <UL>
            <LI><A =
href=3D"http://www.crainsdetroit.com/section/geo01">Washtenaw=20
            and Livingston</A></LI></UL><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/c02">Second=20
          Stage</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/c03">Crain's=20
          Michigan Business</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/summit">Health Care=20
          Leadership Summit</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/gmbankruptcy">GM=20
          Bankruptcy</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/bestcrain">Best of=20
          Crain's</A></LI>
          <LI><A=20
          =
href=3D"http://www.prnewswire.com/cgi-bin/st_display.pl?Account=3DMI&amp;=
Template=3Dcrain.menu"=20
          target=3D_blank>PR Newswire</A></LI>
          <LI><A =
href=3D"http://www.businesswire.com/portal/site/crainsdetroit/"=20
          target=3D_blank>Business Wire</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/marketwire"=20
          target=3D_blank>Market Wire</A></LI></UL><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI>
        <LI class=3Dtop><A id=3Dtoc class=3Dtop_link=20
        href=3D"http://www.crainsdetroit.com/section/toc"><SPAN =
class=3Ddown>This=20
        Week's Issue</SPAN><!--[if gte IE =
7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

        <UL class=3Dsub>
          <LI><A href=3D"http://www.crainsdetroit.com/section/toc">This =
Week's=20
          Issue</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/focus">Focus</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/toca">Weekly Issue=20
          PDFs</A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/holidayedition"=20
          target=3D_blank>Holiday Digital Editions</A></LI></UL><!--[if =
lte IE 6]></td></tr></table></a><![endif]--></LI>
        <LI class=3Dtop><A id=3Dlists class=3Dtop_link=20
        href=3D"http://crainsdetroit.datajoe.com/data"><SPAN=20
        class=3Ddown>Lists</SPAN><!--[if gte IE =
7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

        <UL class=3Dsub>
          <LI><A href=3D"http://crainsdetroit.datajoe.com/data">Online =
Data=20
          Center</A></LI>
          <LI><A class=3Dfly=20
          =
href=3D"https://home.crainsdetroit.com/clickshare/nxtAuth.do?nxtid=3D/cra=
indetroitbusiness/20091228">2010=20
          Book of Lists Digital Edition<!--[if gte IE =
7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

          <UL>
            <LI><A=20
            =
href=3D"https://home.crainsdetroit.com/clickshare/nxtAuth.do?nxtid=3D/cra=
indetroitbusiness/20091228"=20
            target=3D_blank>For subscribers</A></LI>
            <LI><A=20
            =
href=3D"https://sec.crain.com/CD/QuickOrder.aspx?PromotionCode=3DWXCDWWBN=
">For=20
            non-subscribers</A></LI></UL><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/weblist">Interactive=20
          Web Lists</A></LI></UL><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI>
        <LI class=3Dtop><A id=3Dspecial class=3Dtop_link=20
        href=3D"http://www.crainsdetroit.com/"><SPAN class=3Ddown>Web=20
Features</SPAN><!--[if gte IE 7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

        <UL class=3Dsub>
          <LI><A href=3D"http://www.crainsdetroit.com/tenthings">10 =
things to do=20
          this weekend</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/bestcrain">Best of=20
          Crain's</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/bright">Bright=20
          Side</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/coolplaces09">Cool=20
          Places to Work 2009</A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/dmih">Detroit Make =
it=20
          Here</A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/futuremich">Future =
of=20
          Michigan</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/health">Health Care=20
          Extra</A></LI>
          <LI><A=20
          =
href=3D"http://www.crainsdetroit.com/section/mackinac2009">Mackinac=20
          Policy Conference 2009</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/wishlist">Nonprofit=20
          Wish List</A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/outlook">Outlook=20
          2010</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/yourstory">Tell Us=20
          Your Story</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/livingD09">The D's=20
          Next Decade</A></LI>
          <LI><A=20
          =
href=3D"http://www.crainsdetroit.com/section/womentowatch09">Women to=20
          Watch 2009</A></LI></UL><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI>
        <LI class=3Dtop><A id=3Dpeople class=3Dtop_link=20
        href=3D"http://www.crainsdetroit.com/section/people"><SPAN=20
        class=3Ddown>People</SPAN><!--[if gte IE =
7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

        <UL class=3Dsub>
          <LI><A href=3D"http://www.crainsdetroit.com/nominate"><FONT=20
          color=3D#cc3300><B>Call for Nominations =
for</B></FONT></A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/nominate"><FONT=20
          color=3D#cc3300><B>Crain's Award Programs</B></FONT></A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/twenties">20 in =
their=20
          20s</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/forty2009">40 Under=20
          40</A></LI>
          <LI><A=20
          =
href=3D"http://www.crainsdetroit.com/section/automation09">Automation=20
          Alley Awards</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/CFO2009">CFO Awards=20
          2009</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/healthcare09">Health=20
          Care Heroes 2009</A></LI>
          <LI><A=20
          =
href=3D"http://www.crainsdetroit.com/section/newsmakers09">Newsmaker of=20
          the Year</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/peoplenews">People=20
          in the News</A></LI>
          <LI><A=20
          =
href=3D"http://www.crainsdetroit.com/section/powerlawyers08">Power=20
          Lawyers</A></LI>
          <LI><A=20
          =
href=3D"http://www.crainsdetroit.com/section/powersellers2009">Power=20
          Sellers</A></LI>
          <LI><A=20
          =
href=3D"http://www.crainsdetroit.com/section/womentowatch09">Women to=20
          Watch</A></LI></UL><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI>
        <LI class=3Dtop><A id=3Dcolumns class=3Dtop_link=20
        =
href=3D"http://www.crainsdetroit.com/section/blogs?template=3Dnewsroom"><=
SPAN=20
        class=3Ddown>Columns/Blogs</SPAN><!--[if gte IE =
7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

        <UL class=3Dsub>
          <LI><A=20
          =
href=3D"http://www.crainsdetroit.com/section/blogs?template=3Dnewsroom">L=
atest=20
          Crain's Blogs</A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/lane">Amy Lane's =
Capitol=20
          Briefings Blog</A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/chapelle">Andy =
Chapelle's=20
          Ann Arbor Blog</A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/shea">Bill Shea's =
Media=20
          Blog</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/capitol">Capitol=20
          Briefings print column</A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/halcom">Chad =
Halcom's Legal=20
          Blog</A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/duggan">Dan =
Duggan's Real=20
          Estate Blog</A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/greene">Jay =
Greene's Health=20
          Care Blog</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/jeffrey">Jeffrey=20
          Gitomer's Sales Moves</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/kcrain">Keith=20
          Crain</A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/kramer">Mary =
Kramer's=20
          Blog</A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/kaffer">Nancy =
Kaffer's City=20
          of Detroit Blog</A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/skid">Nathan =
Skid's=20
          Restaurant Blog</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/voices">Other=20
          Voices</A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/beene">Ryan =
Beene's Auto=20
          Supplier Blog</A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/welch">Sherri =
Begin Welch's=20
          Nonprofit Blog</A></LI>
          <LI><A=20
          =
href=3D"http://www.crainsdetroit.com/section/smallbizsolutions">Small=20
          Biz Solutions</A></LI>
          <LI><A href=3D"http://www.crainsdetroit.com/henderson">Tom =
Henderson's=20
          Finance Blog</A></LI></UL><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI>
        <LI class=3Dtop><A id=3Devents class=3Dtop_link=20
        href=3D"http://www.crainsdetroit.com/section/events"><SPAN=20
        class=3Ddown>Detroit Events</SPAN><!--[if gte IE =
7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

        <UL class=3Dsub>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/events">Local Events=20
          Calendar</A></LI>
          <LI><A=20
          =
href=3D"http://www.crainsdetroit.com/section/eventsadd?category=3DEVENTSA=
DD">Submit=20
          Your Events</A></LI>
          <LI><A=20
          =
href=3D"http://www.crainsdetroit.com/section/crainsevents">Upcoming=20
          Crain's Events</A></LI></UL><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI>
        <LI class=3Dtop><A id=3Dmultimedia class=3Dtop_link=20
        =
href=3D"http://www.crainsdetroit.com/section/multimedia"><SPAN>Multimedia=
</SPAN></A></LI>
        <LI class=3Dtop><A id=3Djobs class=3Dtop_link=20
        href=3D"http://www.crainsdetroit.com/section/careerworks"><SPAN=20
        class=3Ddown>Detroit Jobs</SPAN><!--[if gte IE =
7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

        <UL class=3Dsub>
          <LI><A =
href=3D"http://www.crainsdetroit.com/section/careerworks">Career=20
          Works</A></LI>
          <LI><A href=3D"http://jobs.crainsdetroit.com/" =
target=3D_blank>Detroit Job=20
          Board</A></LI>
          <LI><A =
href=3D"http://www.crainsdetroit.com/nonprofitsjobs">Nonprofit=20
          Job Board</A></LI></UL><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI></UL></DIV><!--END DROP =
MENU-->
      <DIV id=3Dsubnav>
      <DIV class=3Dsubmenu><SPAN id=3DcdbLoginMsg></SPAN>| <A=20
      href=3D"https://home.crainsdetroit.com/clickshare/myhome.do"=20
      target=3D_blank>Free E-Mail Signup</A> | <A =
href=3D"https://sec.crain.com/CD/"=20
      target=3D_blank>Subscriber Service</A> | <A=20
      =
href=3D"http://www.crainsdetroit.com/section/mobilefront">Mobile</A> | =
<A=20
      href=3D"http://www.crainsdetroit.com/section/CONTACT">Contacts</A> =
| <A=20
      href=3D"http://www.crainsdetroit.com/advertise">Advertise</A> | <A =

      =
href=3D"http://www.crainsdetroit.com/section/classifieds">Classifieds</A>=
</DIV></DIV></TD></TR></TBODY></TABLE>
<TABLE border=3D0 width=3D960 bgColor=3D#ffffff align=3Dcenter>
  <TBODY>
  <TR>
    <TD>
      <TABLE border=3D0 width=3D950 bgColor=3D#ffffff align=3Dcenter>
        <TBODY>
        <TR vAlign=3Dtop><!-- BEGIN LEFT SIDE NAVIGATION -->
          <TD style=3D"PADDING-RIGHT: 3px; BORDER-RIGHT: #999999 1px =
solid"=20
          width=3D165>
            <TABLE border=3D0 cellSpacing=3D0 cellPadding=3D0 =
width=3D"100%"=20
            align=3Dcenter>
              <TBODY>
              <TR>
                <TD>
                  <FORM=20
                  style=3D"PADDING-BOTTOM: 0px; MARGIN: 0px; =
PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px"=20
                  method=3Dpost =
action=3D/apps/pbcs.dll/search?Category=3DSEARCH><SPAN=20
                  class=3Dsmall>SITE SEARCH</SPAN><INPUT value=3DSTATIC =
type=3Dhidden=20
                  name=3DExcludeCategories> <INPUT=20
                  =
value=3DSUB;SUB01;AWARDS;FREE;REG;GIVERS;SMALLTALK;VIDEO;HEALTH;multi;geo=
01=20
                  type=3Dhidden name=3DSearchCategory> <INPUT value=3D0 =
type=3Dhidden=20
                  name=3Dnoblankcheck> <INPUT value=3D20070518,20100211 =
type=3Dhidden=20
                  name=3Ddaterange> <INPUT class=3Die maxLength=3D50 =
size=3D18 type=3Dtext=20
                  name=3Dcrit>&nbsp;<INPUT value=3DGO alt=3DSearch=20
                  =
src=3D"http://www.crainsdetroit.com/graphics/icon_search.gif"=20
                  type=3Dimage> <SPAN id=3DUserNav><A=20
                  =
href=3D"http://www.crainsdetroit.com/section/search">ADVANCED=20
                  SEARCH</A></SPAN> </FORM><SPAN id=3DUserNav>SEARCH =
SPONSORED=20
                  BY:</SPAN><BR>
                  <SCRIPT =
language=3DJavaScript>OAS_RICH('Position3');</SCRIPT>
                </TD></TR>
              <TR>
                <TD=20
                style=3D"PADDING-BOTTOM: 2px; PADDING-LEFT: 2px; =
PADDING-RIGHT: 2px; PADDING-TOP: 2px"=20
                align=3Dmiddle><A=20
                  =
href=3D"http://www.crainsdetroit.com/section/nominate"><IMG=20
                  border=3D0 alt=3D"Crain's Detroit Business - Call for =
nominations"=20
                  =
src=3D"http://www.crainsdetroit.com/assets/ad/nominate.gif"></A></TD></TR=
>
              <TR>
                <TD>
                  <DIV style=3D"Z-INDEX: 1" id=3Dmenu_2>
                  <UL>
                    <LI style=3D"BACKGROUND-COLOR: transparent"><A=20
                    href=3D"http://crainsdetroit.com/section/TOC"><IMG =
border=3D1=20
                    alt=3D"Visit our current issue index"=20
                    =
src=3D"http://www.crainsdetroit.com/apps/pbcsi.dll/storyimage/CD/20100207=
/SUB01/302079957/AR-302079957.jpg?ref=3DAR&amp;MaxW=3D155&amp;border=3D0&=
amp;q=3D90"></A></LI>
                    <LI><A style=3D"TEXT-DECORATION: none"=20
                    =
href=3D"http://www.crainsdetroit.com/section/toc">This Week's=20
                    Issue</A></LI>
                    <LI><A style=3D"TEXT-DECORATION: none"=20
                    =
href=3D"http://www.crainsdetroit.com/newsstand">Newsstand=20
                    Locations</A></LI></UL>
                  <UL>
                    <LI>
                    <H2>New <I>Crain's</I> Features</H2>
                    <UL>
                      <LI><A=20
                      =
href=3D"http://www.crainsdetroit.com/section/c03"><I>Crain's</I>=20
                      Michigan Business</A></LI>
                      <LI><A =
href=3D"http://www.crainsdetroit.com/section/c02"=20
                      target=3D_blank>Second =
Stage</A></LI></UL></LI></UL>
                  <UL>
                    <LI>
                    <H2>Advertise With Us</H2>
                    <UL>
                      <LI><A=20
                      =
href=3D"http://www.crainsdetroit.com/advertise">Advertising=20
                      Center</A></LI></UL></LI></UL>
                  <UL>
                    <LI>
                    <H2>Follow <EM>Crain</EM>'s On</H2>
                    <UL>
                      <LI><A title=3D"Follow us on Facebook"=20
                      =
href=3D"http://www.facebook.com/group.php?gid=3D4851862183"=20
                      target=3D_blank><IMG border=3D0 alt=3D"Follow us =
on Facebook"=20
                      =
src=3D"http://www.crainsdetroit.com/assets/gif/bt-facebook.gif"></A></LI>=

                      <LI><A title=3D"Follow us on Twitter"=20
                      href=3D"http://twitter.com/crainsdetroit" =
target=3D_blank><IMG=20
                      border=3D0 alt=3D"Follow us on Twitter"=20
                      =
src=3D"http://www.crainsdetroit.com/assets/gif/bt-twitter.gif"></A></LI>
                      <LI><A title=3D"Follow us with RSS Feeds"=20
                      =
href=3D"http://www.crainsdetroit.com/section/RSS"><IMG=20
                      border=3D0 alt=3D"Follow us with RSS Feeds"=20
                      =
src=3D"http://www.crainsdetroit.com/assets/gif/bt-rss.gif"></A></LI>
                      <LI><A title=3D"Follow us with your mobile phone"=20
                      =
href=3D"http://www.crainsdetroit.com/section/mobilefront"><IMG=20
                      border=3D0 alt=3D"Follow us with your mobile =
phone"=20
                      =
src=3D"http://www.crainsdetroit.com/assets/gif/bt-mobile.gif"></A></LI></=
UL></LI></UL>
                  <UL>
                    <LI>
                    <H2>Contact <I>Crain's</I></H2>
                    <UL>
                      <LI><A=20
                      =
href=3D"http://www.crainsdetroit.com/section/contact">Newsroom=20
                      contacts</A></LI>
                      <LI><A=20
                      =
href=3D"http://www.crainsdetroit.com/files/newsincrains.pdf"=20
                      target=3D_blank>Get news in <I>Crain's</I> =
(PDF)</A> </LI>
                      <LI><A =
href=3D"http://www.crainsdetroit.com/editcalendar"=20
                      target=3D_blank>Editorial calendar (PDF)</A></LI>
                      <LI><A=20
                      =
href=3D"http://www.crainsdetroit.com/section/QA">Frequently=20
                      asked questions</A></LI></UL></LI></UL>
                  <UL>
                    <LI>
                    <H2>Other <I>Crain's</I> Sites</H2>
                    <UL>
                      <LI><A href=3D"http://www.detroitmakeithere.com/"=20
                      target=3D_blank>Detroit Make it Here</A></LI>
                      <LI><A href=3D"http://www.chicagobusiness.com/"=20
                      target=3D_blank><I>Crain's</I> Chicago =
Business</A></LI>
                      <LI><A href=3D"http://www.crainscleveland.com/"=20
                      target=3D_blank><I>Crain's</I> Cleveland =
Business</A></LI>
                      <LI><A href=3D"http://www.newyorkbusiness.com/"=20
                      target=3D_blank><I>Crain's</I> New York =
Business</A></LI>
                      <LI><A href=3D"http://www.autonews.com/"=20
                      target=3D_blank>Automotive News</A></LI>
                      <LI><A href=3D"http://www.adage.com/"=20
                      target=3D_blank>Advertising Age</A></LI>
                      <LI><A href=3D"http://www.crain.com/" =
target=3D_blank>Crain=20
                      Communications =
Inc.</A></LI></UL></LI></UL></DIV><BR>
                  <DIV align=3Dcenter>
                  <SCRIPT =
language=3DJavaScript>OAS_RICH('TopLeft');</SCRIPT>
                  </DIV></TD></TR></TBODY></TABLE></TD><!-- END LEFT =
SIDE NAVIGATION -->
          <TD vAlign=3Dtop>
            <TABLE border=3D0 cellSpacing=3D0 cellPadding=3D0 =
width=3D"100%"=20
            align=3Dcenter>
              <TBODY>
              <TR>
                <TD class=3Dcontentpadding vAlign=3Dtop>
                  <TABLE cellSpacing=3D0 cellPadding=3D0 width=3D"100%"=20
                  bgColor=3D#ffffff>
                    <TBODY>
                    <TR>
                      <TD colSpan=3D2><BR clear=3Dall></TD></TR>
                    <TR>
                      <TD style=3D"LINE-HEIGHT: 1.1em" class=3Dgray =
width=3D"45%"=20
                      align=3Dleft><SMALL>POSTED: 11:08 a.m., Feb. 11,=20
                        2010<BR>LAST MODIFIED: 11:09 a.m., Feb. 11,=20
                      2010</SMALL></TD>
                      <TD=20
                      style=3D"BORDER-BOTTOM: #efefef 1px solid; =
BORDER-LEFT: #efefef 1px solid; PADDING-BOTTOM: 2px; PADDING-LEFT: 3px; =
PADDING-RIGHT: 3px; BORDER-TOP: #efefef 1px solid; BORDER-RIGHT: #efefef =
1px solid; PADDING-TOP: 3px"=20
                      width=3D"55%" align=3Dright>
                        <DIV class=3Darticle_tools><SPAN =
class=3Darticle_tools_item>
                        <SCRIPT language=3DJavaScript>
      gSiteLife.Recommend("ExternalResource", "100219973", globalSiteUrl =
+ "/article/201002111108/FREE/100219973");
  </SCRIPT>
                        </SPAN><SPAN class=3Darticle_tools-item><A=20
                        =
href=3D"http://www.crainsdetroit.com/article/20100211/FREE/100219973#cdbC=
omments"><SPAN=20
                        =
id=3DcdbArticleComments>Comment</SPAN></A></SPAN> <SPAN=20
                        class=3Darticle_tools_item><A=20
                        =
href=3D"http://www.crainsdetroit.com/apps/pbcs.dll/art_tips?Site=3DCD&amp=
;Date=3D20100211&amp;Category=3DFREE&amp;ArtNo=3D100219973&amp;Ref=3DAR">=
<IMG=20
                        border=3D0=20
                        =
src=3D"http://www.crainsdetroit.com/Assets/gif/icon_email.gif">=20
                        Email</A></SPAN> <SPAN =
class=3Darticle_tools_item><A=20
                        =
href=3D"http://www.crainsdetroit.com/apps/pbcs.dll/article?AID=3D/2010021=
1/FREE/100219973&amp;template=3Dprintart"=20
                        target=3D_blank><IMG border=3D0=20
                        =
src=3D"http://www.crainsdetroit.com/Assets/gif/icon_print.gif">=20
                        Print</A>
                        <SCRIPT =
language=3DJavaScript>OAS_RICH('Frame1');</SCRIPT>
                         </SPAN></DIV></TD></TR>
                    <TR>
                      <TD vAlign=3Dtop colSpan=3D2><BR>
                        <H2 class=3Dlarge><B>Nearly 700 jobs added in =
Macomb=20
                        County in 2009</B></H2>
                        <DIV>By <A =
href=3D"mailto:chalcom@crain.com">Chad=20
                        Halcom</A></DIV></TD></TR>
                    <TR>
                      <TD vAlign=3Dtop colSpan=3D2>
                        <TABLE style=3D"MARGIN-LEFT: 5px" =
cellSpacing=3D0=20
                        cellPadding=3D0 width=3D300 align=3Dright>
                          <TBODY>
                          <TR>
                            <TD vAlign=3Dtop>
                              <DIV id=3Drating>
                              <SCRIPT language=3DJavaScript>
      gSiteLife.Rating("ExternalResource", "100219973", globalSiteUrl + =
"/article/201002111108/FREE/100219973");
  </SCRIPT>
                              </DIV>
                              <DIV =
class=3Dbox-advertisement>Advertisement<BR>
                              <SCRIPT>window.OAS_RICH('Middle')</SCRIPT>
                              </DIV></TD></TR></TBODY></TABLE><BR>At =
least 38=20
                        businesses made a combined commitment to invest =
$74.7=20
                        million and add 680 new jobs to Macomb County in =
2009,=20
                        according to data released Wednesday by the =
county=20
                        Planning and Economic Development Department.=20
                        <BR><BR>The 2009 economic impact report, =
furnished by=20
                        the department to the county commission=92s =
Planning and=20
                        Economic Development Committee on Wednesday, =
includes at=20
                        least 250 new jobs from companies with =
incentives=20
                        approved by the <B>Michigan Economic Growth=20
                        Authority</B>, and 15 companies that became part =
of=20
                        state-designated Tool and Die Recovery Zones.=20
                        <BR><BR>Exclusive of the zones, which waive =
certain=20
                        taxes to help small tool and die shops stay in =
business,=20
                        a total of 23 businesses invested $73.6 million =
in=20
                        Macomb to add 678 jobs and retain 934 existing =
jobs.=20
                        <BR><BR>The attraction and expansion deals range =
widely=20
                        in scale, from aerospace industry supplier =
<B>Global=20
                        Tooling Systems Inc.</B> investing $17.2 million =
to=20
                        relocate from Utica to larger space in Macomb =
Township,=20
                        adding up to 184 jobs, down to <B>Achatz =
Handmade Pie=20
                        Co.,</B> to invest $300,000 and retain five jobs =
at an=20
                        Armada Township location. <BR><BR>Macomb County =
Planning=20
                        and Economic Development Director Stephen Cassin =
said=20
                        the year-end report was completed Wednesday for =
the=20
                        committee, which will submit it in turn to the =
full=20
                        county board for review. <BR><BR>He has said =
previously=20
                        his department is targeting five key growth =
sectors in=20
                        its =93Imagine Macomb=94 Targeted Industries =
Initiative=20
                        aimed at business development: aerospace, =
medical=20
                        devices, defense and homeland security, =
alternative=20
                        energy and advanced manufacturing. <BR><BR>Those =
growth=20
                        industries accounted for 24 of the 38 business=20
                        attraction or expansion deals, and more than 560 =
of the=20
                        new jobs. All other 2009 business deals either =
were=20
                        automotive or were not classified by a specific=20
                        industry. <BR><BR>Other economic development =
deals in=20
                        the report include: <BR><BR>=95 <B>Dynamic =
Control=20
                        Inc.</B>, makers of material handling systems =
for the=20
                        defense industry, to invest $14 million and 100 =
new jobs=20
                        in Chesterfield Township. <BR><BR>=95 <B>ProWeld =
Inc.</B>,=20
                        makers of in-plant and returnable shipping =
containers,=20
                        which relocated in December from the Port Huron=20
                        Industrial Park into a former Lionel Trains =
building in=20
                        Chesterfield Township, for an investment of $2.3 =
million=20
                        and 100 new county jobs. <BR><BR>=95 <B>Models =
&amp; Tools=20
                        Inc.</B>, investing $3.1 million to relocate in =
March=20
                        from Troy to Shelby Township and add 57 new =
jobs, with=20
                        the aid of state tax incentives approved by =
MEGA. The=20
                        company now has at least 100 employees, up from =
about=20
                        80-85 before the relocation. <BR><BR>=95 =
<B>Visioneering=20
                        Inc</B>., the Fraser-based tooling and fixtures=20
                        manufacturer for the aerospace industry, to =
invest $3.5=20
                        million and add up to 50 new jobs. Company CEO =
Marc=20
                        Strandquist previously told <I>Crain=92s</I> the =
company=20
                        had grown from 93 to 105 employees during =
fourth-quarter=20
                        2009. <BR><BR>=95 United Machining Inc=95 ., =
makers of=20
                        automotive specialty tools, to invest $7.3 =
million and=20
                        add up to 28 new jobs to its current 58 jobs in =
an=20
                        automotive-related expansion in Sterling =
Heights.=20
                        <BR><BR>=95 <B>Gentz Industries L.L.C.</B>, =
suppliers of=20
                        containment cases that house certain engine =
components=20
                        in commercial jet aircraft, investing $2.4 =
million and=20
                        adding up to 26 jobs to its current 289 in=20
                        aerospace-related growth in Warren. <BR><BR>=95 =
<B>DM=20
                        Fabricating Inc</B>., makers of welded =
components for=20
                        the automotive and defense industries, investing =
$2.2=20
                        million and adding up to 30 new jobs in Sterling =

                        Heights. The company has reported previously it =
was=20
                        looking to expand in or near its local=20
                        headquarters.<BR><BR>
                        <DIV id=3DcdbComments>
                        <SCRIPT>
	//comments
	gSiteLife.Comments("ExternalResource", "100219973", 20, =
"TimeStampDescending");
	//updateArticleAction
	new =
NYX.ieSafeExecution(doUpdateArticle).execute("100219973",globalSiteUrl + =
"/article/201002111108/FREE/100219973","Nearly 700 jobs added in Macomb =
County in 2009");
	</SCRIPT>
                        <NOSCRIPT><LINK rel=3Dstylesheet=20
                        =
href=3D"http://sitelife.crainsdetroit.com/ver1.0/SiteLifeCss?sid=3Dsiteli=
fe.crainsdetroit.com"><LINK=20
                        rel=3Dstylesheet=20
                        =
href=3D"http://www.crainsdetroit.com/includes/sitelife.css"><SPAN>
                        <DIV style=3D"DISPLAY: none" =
id=3DReportAbuse_Menu=20
                        class=3DReportAbuse_Container><INPUT =
id=3DReportAbuse_Url=20
                        type=3Dhidden> <INPUT id=3DReportAbuse_Command =
type=3Dhidden>=20
                        <DIV class=3DReportAbuse_SectionHead><SPAN=20
                        style=3D"FLOAT: left">Report item as: =
(required)</SPAN> <A=20
                        =
onclick=3D"document.getElementById('ReportAbuse_Menu').style.display=3D'n=
one';return false;"=20
                        =
href=3D"http://www.crainsdetroit.com/article/20100211/FREE/100219973#none=
">X</A>=20
                        </DIV>
                        <DIV class=3DReportAbuse_Interior><SELECT=20
                        id=3DReportAbuse_Reason> <OPTION selected=20
                          value=3D"Obscenity or =
vulgarity">Obscenity/vulgarity</OPTION>=20
                          <OPTION value=3D"Hate speech">Hate =
speech</OPTION>=20
                          <OPTION value=3D"Personal attack">Personal=20
                          attack</OPTION> <OPTION=20
                          value=3D"Advertising or =
Spam">Advertising/Spam</OPTION>=20
                          <OPTION=20
                          value=3D"Copyright or =
Plagiarism">Copyright/Plagiarism</OPTION>=20
                          <OPTION value=3DOther>Other</OPTION></SELECT> =
</DIV>
                        <DIV class=3DReportAbuse_SectionHead>Comment: =
(optional)=20
                        </DIV>
                        <DIV class=3DReportAbuse_Comment><TEXTAREA =
id=3DReportAbuse_CommentText onkeyup=3D"return =
LimitLength(this,500);"></TEXTAREA>=20
<INPUT onclick=3D"ReportAbuse(); return false;" value=3DReport =
type=3Dbutton>=20
                        </DIV></DIV><!-- plckSort is too generic. =
Replaced with plckCommentSortOrder. Leaving plckSort for backwards =
compatibility -->
                        <DIV class=3DSitelife_PluckLogo><A=20
                        href=3D"http://www.pluck.com/" =
target=3D_blank><IMG=20
                        style=3D"BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; =
BORDER-TOP: 0px; BORDER-RIGHT: 0px"=20
                        =
src=3D"http://sitelife.crainsdetroit.com/ver1.0/Content/images/poweredbyp=
luck.gif?sid=3Dsitelife.crainsdetroit.com"></A>=20
                        </DIV></SPAN>
                        <DIV id=3DComments_OuterContainer=20
class=3DComments_Container>
                        <TABLE class=3DComments_Table cellSpacing=3D0 =
cellPadding=3D0><!--start loop--></TABLE></DIV><!-- pbs:getcontent =
url=3D"http://sitelife.crainsdetroit.com/ver1.0/RestApi?Version=3D1.0&Ope=
ration=3DCommentsOutput&PageTitle=3DCrain%27s%20Detroit%20Business&Refres=
hPage=3Dtrue&NumItems=3D20&Sort=3DTimeStampDescending&UniqueId=3D10021997=
3&PageUrl=3Dhttp%3A%2F%2Fwww.crainsdetroit.com%2Fapps%2Fpbcs.dll%2Farticl=
e%3FAID%3D%2F20100211%2FFREE%2F100219973" =
--></NOSCRIPT></DIV></TD></TR></TBODY></TABLE><BR>
                  <DIV class=3Dcdb_newshead>You may also like</DIV>
                  <DIV class=3Dheadline><BR>
                  <UL>
                    <LI><A=20
                    =
href=3D"http://www.crainsdetroit.com/article/20100211/FREE/100219973"><B>=
Nearly=20
                    700 jobs added in Macomb County in =
2009</B></A><BR><SPAN=20
                    class=3Dcdb_body></SPAN></LI>
                    <LI><A=20
                    =
href=3D"http://www.crainsdetroit.com/article/20100211/FREE/100219975"><B>=
Detroit=20
                    radio personality Dick Purtan =
retiring</B></A><BR><SPAN=20
                    class=3Dcdb_body></SPAN></LI>
                    <LI><A=20
                    =
href=3D"http://www.crainsdetroit.com/article/20100211/EMAIL01/302119999">=
<B>10=20
                    Things to Do in Detroit This =
Weekend</B></A><BR><SPAN=20
                    class=3Dcdb_body></SPAN></LI>
                    <LI><A=20
                    =
href=3D"http://www.crainsdetroit.com/article/20100210/FREE/100219979"><B>=
Stephen=20
                    Kirk to receive Engineering Society of Detroit's =
Gold=20
                    Award</B></A><BR><SPAN class=3Dcdb_body></SPAN></LI>
                    <LI><A=20
                    =
href=3D"http://www.crainsdetroit.com/article/20100210/FREE/100219976"><B>=
DMC,=20
                    Wayne State sign contracts for teaching, clinical =
services=20
                    and residency programs</B></A><BR><SPAN=20
                    class=3Dcdb_body></SPAN></LI>
                    <LI><A=20
                    =
href=3D"http://www.crainsdetroit.com/article/20100210/FREE/100219978"><B>=
Cleveland=20
                    conference to focus on plastics in medical devices=20
                    </B></A><BR><SPAN class=3Dcdb_body></SPAN></LI>
                    <LI><A=20
                    =
href=3D"http://www.crainsdetroit.com/section/breaking"><B>Breaking=20
                    Detroit News</B></A></LI></UL></DIV></TD><!-- BEGIN =
FOOTER --><!--BEGIN GOOGLE ANALYTICS CODE-->
                <SCRIPT type=3Dtext/javascript=20
                src=3D"http://www.google-analytics.com/urchin.js">
</SCRIPT>

                <SCRIPT type=3Dtext/javascript>
_uacct =3D "UA-2717831-1";
urchinTracker();
</SCRIPT>
<!--END GOOGLE ANALYTICS CODE-->
                <TD style=3D"BORDER-LEFT: #999999 1px solid; =
PADDING-LEFT: 3px"=20
                vAlign=3Dtop width=3D190 align=3Dright><!-- BEGIN RIGHT =
COLUMN -->
                  <TABLE border=3D0 cellSpacing=3D0 cellPadding=3D0 =
width=3D"100%">
                    <TBODY>
                    <TR>
                      <TD align=3Dmiddle>
                        <DIV class=3Dtdborder>
                        <H2 class=3Dcdb_newshead>Most Read</H2>
                        <DIV class=3Dmostread>
                        <UL>
                          <LI>
                          <H3><A=20
                          =
href=3D"http://www.crainsdetroit.com/article/20100210/GEO01/100219981">Fo=
rmer=20
                          Butzel attorneys open China consulting =
practice in Ann=20
                          Arbor</A></H3></LI>
                          <LI>
                          <H3><A=20
                          =
href=3D"http://www.crainsdetroit.com/article/20100210/FREE/100219993">Ben=
jamin=20
                          Carter named CFO of Trinity =
Health</A></H3></LI>
                          <LI>
                          <H3><A=20
                          =
href=3D"http://www.crainsdetroit.com/article/20100210/FREE/100219994">Den=
ise=20
                          Ilitch says she won't run for Michigan=20
                          governor</A></H3></LI>
                          <LI>
                          <H3><A=20
                          =
href=3D"http://www.crainsdetroit.com/article/20100210/FREE/100219997">Det=
roit-area=20
                          workshop focuses on urban =
agriculture</A></H3></LI>
                          <LI>
                          <H3><A=20
                          =
href=3D"http://www.crainsdetroit.com/article/20100210/FREE/100219983">Cra=
in's=20
                          Newsmakers of the Year Dave Bing, Robert Bobb =
see=20
                          brighter future for schools,=20
                        city</A></H3></LI></UL></DIV>
                        <H2 style=3D"MARGIN-BOTTOM: 3px"=20
                        class=3Dcdb_newshead>Crain's Events</H2><A=20
                        =
href=3D"http://www.crainsdetroit.com/section/crainsevents"=20
                        target=3Dblank><IMG border=3D0 hspace=3D10=20
                        alt=3D"Crain's Events"=20
                        =
src=3D"http://www.crainsdetroit.com/assets/ad/crainsevents.gif"></A>=20
                        </DIV>
                        <DIV>
                        <SCRIPT =
language=3DJavaScript>OAS_RICH('x01');</SCRIPT>
                        <BR><BR>
                        <SCRIPT =
language=3DJavaScript>OAS_RICH('x02');</SCRIPT>
                        <BR><BR>
                        <SCRIPT =
language=3DJavaScript>OAS_RICH('x03');</SCRIPT>
                        <BR><BR><!-- BEGIN BEST LAWYERS iFRAME -->
                        <DIV><IFRAME height=3D200=20
                        =
src=3D"http://sitelife.crainsdetroit.com/ver1.0/Comment/CommentsFrame?sid=
=3Dsitelife.crainsdetroit.com&amp;plckTargetTitle=3DNearly+700+jobs+added=
+in+Macomb+County+in+2009+-+Detroit+News+and+Information+-+Crain's+Detroi=
t+Business&amp;plckTargetUrl=3Dhttp%3a%2f%2fwww.crainsdetroit.com%2fartic=
le%2f20100211%2fFREE%2f100219973&amp;plckTargetKey=3D100219973&amp;plckTa=
rgetKeyType=3DExternalResource&amp;plckRedirectToUrl=3D"=20
                        frameBorder=3Dno width=3D180 name=3D"Best =
Lawyers Search Box"=20
                        scrolling=3Dno align=3Dcenter>
</IFRAME></DIV>
                        <DIV=20
                        style=3D"BORDER-BOTTOM: #ccc 1px solid; =
TEXT-ALIGN: center; BORDER-LEFT: #ccc 1px solid; PADDING-BOTTOM: 5px; =
MARGIN: 1px; PADDING-LEFT: 5px; WIDTH: 180px; PADDING-RIGHT: 5px; =
FONT-FAMILY: verdana; FONT-SIZE: 9px; BORDER-TOP: #ccc 1px solid; =
BORDER-RIGHT: #ccc 1px solid; PADDING-TOP: 5px">Best=20
                        Lawyers sponsored by:
                        <SCRIPT =
language=3DJavaScript>OAS_RICH('x05');</SCRIPT>
                        </DIV></DIV></TD></TR></TBODY></TABLE><!-- END =
BEST LAWYERS iFRAME --><!-- END RIGHT COLUMN =
--></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></TD></TR></TBODY>=
</TABLE></TD></TR></TABLE>
<TABLE border=3D0 cellSpacing=3D0 cellPadding=3D0 width=3D960 =
bgColor=3D#ffffff=20
align=3Dcenter>
  <TBODY>
  <TR>
    <TD align=3Dmiddle>
      <HR>

      <SCRIPT language=3DJavaScript>OAS_RICH('Bottom');</SCRIPT>
      <BR><BR><SPAN id=3DUserNav><A =
href=3D"http://www.crainsdetroit.com/">Home</A>=20
      | <A =
href=3D"http://www.crainsdetroit.com/advertise">Advertising</A> | <A=20
      =
href=3D"http://www.crainsdetroit.com/section/classifieds">Classifieds</A>=
 |=20
      <A href=3D"http://www.crainsdetroit.com/aboutus">About Us</A> | <A =

      href=3D"http://www.crainsdetroit.com/section/Breaking">Latest =
News</A> | <A=20
      href=3D"https://sec.crain.com/CD/" target=3D_blank>Subscribe</A> | =
<A=20
      href=3D"http://www.crainsdetroit.com/section/Contact">Contact=20
Crain's</A><BR>
      <SCRIPT language=3DJavaScript>
<!--
    today =3D new Date();
    y0 =3D today.getFullYear();
	document.write('&copy; ' + y0 + ' <a href=3D"http://www.crain.com" =
target=3D"_blank">Crain Communications Inc.</a>');
//-->
</SCRIPT>
      <BR>Use of editorial content without permission is strictly =
prohibited.=20
      All rights Reserved<BR><A=20
      href=3D"http://www.crainsdetroit.com/privacy">Privacy =
Statement</A> | <A=20
      href=3D"http://www.crainsdetroit.com/disclaimer">Disclaimer</A> =
</SPAN><!-- END FOOTER --><!-- FORESEE STUFF -->
      <SCRIPT language=3DJavaScript=20
      =
src=3D"http://www.crainsdetroit.com/javascripts/triggerParams.js"></SCRIP=
T>

      <SCRIPT language=3DJavaScript=20
      =
src=3D"http://www.crainsdetroit.com/javascripts/stdLauncher.js"></SCRIPT>=

    </TD></TR></TBODY></TABLE><!--
At Build:
20100211 11:10:47
HostName: S260608AT1VW261<br>
Time used: 5375 ms  Build(47 ms)<br>
Initializing : 31ms<br>
<b>Starting first parse</b><br>
.Build 0: 297 ms (Misc:1)<br>
.Build 3: 672 ms (Article:1)<br>
.Parsing macro siteNavigation<br>
..Build 9: 94 ms (Content:2)<br>
..Build 9: 2000 ms (Content:4)<br>
.Completed macro siteNavigation<br>
.Build 9: 2781 ms (Content:10)<br>
. NewsList: 516ms<br>
.Build 15: 516 ms (TVGuide:1)<br>
.Build 17: 390 ms (Nabolaget:1)<br>


At Runtime:
20100211 13:57:45
HostName: S260608AT1VW222<br>
Time used: 422 ms<br>
Initializing : 15ms<br>
<b>Starting first parse</b><br>
.Parsing macro restComments<br>
..Build 0: 203 ms (Misc:1)<br>
.Completed macro restComments<br>
.Build 9: 375 ms (Content:5)<br>

--><!--Welcomemat-->
<DIV style=3D"DISPLAY: none" id=3Dinter>
<DIV class=3Dbar>
<P class=3Dtitle>Going to the content you requested in <SPAN=20
id=3DsecondHolder></SPAN>. <SMALL><A class=3Dinter_hide=20
href=3D"http://www.crainsdetroit.com/article/20100211/FREE/100219973#">Sk=
ip=20
Advertisement =BB</A></SMALL></P></DIV><BR class=3Dclearfloats>
<DIV id=3Dcci-interstitial-ad-container></DIV></DIV>
<SCRIPT>
(function(){
	CCI.util.countSessionViews();
	var welcomeMat =3D new CCI.util.safeLoad(CCI.interstitial.showIt);
	=
welcomeMat.execute({container:"cci-interstitial-ad-container",floaterName=
:"welcomeMat"});
=09
})();
</SCRIPT>

<SCRIPT>
new NYX.ieSafeExecution(checkPluckLogin).execute();
</SCRIPT>
</BODY></HTML>

------=_NextPart_001_002D_01CAAB22.69C757B0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://sitelife.crainsdetroit.com/ver1.0/Comment/CommentsFrame?sid=sitelife.crainsdetroit.com&plckTargetTitle=Nearly+700+jobs+added+in+Macomb+County+in+2009+-+Detroit+News+and+Information+-+Crain's+Detroit+Business&plckTargetUrl=http%3a%2f%2fwww.crainsdetroit.com%2farticle%2f20100211%2fFREE%2f100219973&plckTargetKey=100219973&plckTargetKeyType=ExternalResource&plckRedirectToUrl=

=EF=BB=BF<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" =
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<HTML xmlns=3D"http://www.w3.org/1999/xhtml"><HEAD>
<META content=3D"text/html; charset=3Dutf-8" http-equiv=3DContent-Type>
<SCRIPT language=3Djavascript>
    document.domain =3D "crainsdetroit.com";
    </SCRIPT>

<SCRIPT language=3Djavascript type=3Dtext/javascript=20
src=3D"http://sitelife.crainsdetroit.com/ver1.0/SiteLifeProxy?sid=3Dsitel=
ife.crainsdetroit.com"></SCRIPT>

<META name=3DGENERATOR content=3D"MSHTML 8.00.6001.18854"></HEAD>
<BODY class=3DComments_Body>
<DIV id=3DCommentsContainer class=3DComments_Container>
<SCRIPT language=3Djavascript>
            function formSubmit(formObj) {
                                    =
document.getElementById('plckRedirectToUrl').value=3DgSiteLife.__StripAnc=
horFromUrl(window.parent.window.location.href);
                               =20
                // early exit on empty comment body
                if =
(formObj.elements.namedItem('comment.Body').value.trim() =3D=3D '') {
                    document.getElementById("CommentError").innerHTML =
=3D "* Please provide a comment.";
                    return false;
                }
               =20
                                    =
formObj.elements.namedItem('comment.ParentTitle').value=3D 'Nearly 700 =
jobs added in Macomb County in 2009 - Detroit News and Information - =
Crain\'s Detroit Business';=20
                            }
        </SCRIPT>

<FORM style=3D"DISPLAY: inline" onsubmit=3D"return formSubmit(this)" =
method=3Dpost=20
action=3Dhttp://sitelife.crainsdetroit.com/ver1.0/Comment/CreateComment.r=
ails?sid=3Dsitelife.crainsdetroit.com>
<DIV id=3DSiteLife_Login class=3DSiteLife_Login>You must be logged in to =
leave a=20
comment. <A=20
onclick=3D"window.parent.window.location.href =3D =
'https://home.crainsdetroit.com/clickshare/pluckAuth.do?CSTargetURL=3D' =
+ encodeURIComponent(window.parent.window.location.href); return false;" =

href=3D"http://sitelife.crainsdetroit.com/ver1.0/Comment/CommentsFrame?si=
d=3Dsitelife.crainsdetroit.com&amp;plckTargetTitle=3DNearly+700+jobs+adde=
d+in+Macomb+County+in+2009+-+Detroit+News+and+Information+-+Crain's+Detro=
it+Business&amp;plckTargetUrl=3Dhttp%3a%2f%2fwww.crainsdetroit.com%2farti=
cle%2f20100211%2fFREE%2f100219973&amp;plckTargetKey=3D100219973&amp;plckT=
argetKeyType=3DExternalResource&amp;plckRedirectToUrl=3D#">Login</A>&nbsp=
;|&nbsp;<A=20
onclick=3D"window.parent.window.location.href =3D =
'https://home.crainsdetroit.com/clickshare/pluckAuth.do?CSTargetURL=3D' =
+ gSiteLife.EscapeValue(window.parent.window.location.href); return =
false;"=20
href=3D"http://sitelife.crainsdetroit.com/ver1.0/Comment/CommentsFrame?si=
d=3Dsitelife.crainsdetroit.com&amp;plckTargetTitle=3DNearly+700+jobs+adde=
d+in+Macomb+County+in+2009+-+Detroit+News+and+Information+-+Crain's+Detro=
it+Business&amp;plckTargetUrl=3Dhttp%3a%2f%2fwww.crainsdetroit.com%2farti=
cle%2f20100211%2fFREE%2f100219973&amp;plckTargetKey=3D100219973&amp;plckT=
argetKeyType=3DExternalResource&amp;plckRedirectToUrl=3D#">Register</A></=
DIV>
<DIV class=3DComments_AddTextarea><TEXTAREA disabled onkeyup=3D"return =
LimitLength(this,2147483647);" name=3Dcomment.Body></TEXTAREA>=20
</DIV>
<DIV class=3DComments_Submit><INPUT=20
value=3D"Nearly 700 jobs added in Macomb County in 2009 - Detroit News =
and Information - Crain's Detroit Business"=20
type=3Dhidden name=3Dcomment.ParentTitle> <INPUT=20
value=3Dhttp://www.crainsdetroit.com/article/20100211/FREE/100219973 =
type=3Dhidden=20
name=3Dcomment.Url> <INPUT disabled value=3DSubmit type=3Dsubmit =
onafterclick=3D"this.disabled=3Dtrue;">=20
<INPUT value=3DTimeStampDescending type=3Dhidden name=3DplckSort> <INPUT =

value=3D100219973 type=3Dhidden name=3DplckTargetKey> <INPUT value=3D10 =
type=3Dhidden=20
name=3DplckItemsPerPage> <INPUT value=3D-1 type=3Dhidden =
name=3DplckCurrentPage> <INPUT=20
value=3DExternalResource type=3Dhidden name=3DplckTargetKeyType> <INPUT=20
id=3DplckRedirectToUrl type=3Dhidden name=3DplckRedirectToUrl> =
</DIV></FORM>
<SCRIPT language=3Djavascript type=3Dtext/javascript>
            setTimeout(function(){autofitIframe('commentsiframe');}, =
100);
        </SCRIPT>
</DIV></BODY></HTML>

------=_NextPart_001_002D_01CAAB22.69C757B0--

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/Assets/pluck/SiteLifeGlobal.js?ver=20090911

/***********************************************
*** Global configurations for Pluck SiteLife ***
************************************************/

var SITELIFE_ENABLED =3D true;
//var SITELIFE_HOST =3D "sitelife.detroitmakeithere.com";
//SITELIFE_HOST =3D "sitelifestage2.cdstage.sv.publicus.com";
SITELIFE_HOST =3D "sitelife.crainsdetroit.com";
CLICKSHARE_BASE_URL =3D "https://home.crainsdetroit.com/clickshare";

// Proxy URLs
var siteLifeProxyUrl =3D "http://" + SITELIFE_HOST + =
"/ver1.0/SiteLifeProxy?sid=3D" + SITELIFE_HOST;
var directProxyUrl =3D "http://" + SITELIFE_HOST + =
"/ver1.0/Direct/DirectProxy?sid=3D" + SITELIFE_HOST;

// DAAPI Process URL
// The name of this variable may be different for your implementation of =
DAAPI
var serverUrl =3D "http://" + SITELIFE_HOST + =
"/ver1.0/Direct/Process?sid=3D" + SITELIFE_HOST;

// Domain trust
document.domain =3D "crainsdetroit.com";

// Misc settings
var globalSiteUrl =3D "http://www.crainsdetroit.com";

/***********************
*** Include SiteLife ***
************************/

if (SITELIFE_ENABLED =3D=3D true) {
	// for DAAPI:
    document.write("<scr" + "ipt type=3D\"text/javascript\" src=3D\"" + =
directProxyUrl + "\"></sc" + "ript>\n");=20
   =20
    // for widgets:
    document.write("<scr" + "ipt type=3D\"text/javascript\" src=3D\"" + =
siteLifeProxyUrl + "\"></sc" + "ript>\n");
} else {
	// if SITELIFE IS TURNED OFF, SUPPRESS ANY JAVASCRIPT ERRORS
	function handleErrors(msg) {
		//alert(msg)
		return true;
	};
	window.onerror =3D handleErrors;
}
------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/Assets/pluck/pluckLib.js?ver=20090911

function checkCSLogin(name,param) {

		var nameEQ =3D name + "=3D";
		var ca =3D document.cookie.split(';');
		for(var i=3D0;i < ca.length;i++)
		{
			var c =3D ca[i];
			while (c.charAt(0)=3D=3D' ')
				c =3D c.substring(1,c.length);
			if (c.indexOf(nameEQ) =3D=3D 0)
				var cookieString =3D c.substring(nameEQ.length,c.length);
		}
if (cookieString && param =3D=3D "nameFirst") {
myfirst =3D cookieString.replace(/(.*)(nameFirst:(\w*))(.*)/,"$3");
return myfirst;
} else if (cookieString && param =3D=3D "userId") {
myuserid =3D cookieString.replace(/(.*)(userId:(\d*))(.*)/,"$3");
return myuserid;
}
	else {
	return false;
}
};

function checkPluckLogin() {
	var requestBatch =3D new RequestBatch();
	requestBatch.AddToRequest(new UserKey());
	requestBatch.BeginRequest(serverUrl, checkLoginCb);
};

function checkLoginCb(responseBatch) {
	//console.dir(responseBatch);
	user =3D responseBatch.Responses[0].User;
	if (user.DisplayName =3D=3D "anonymous" || user.ExtendedProfile["f"] =
=3D=3D "") {
	var csFirstName =3D checkCSLogin("CSDemos","nameFirst");
	if (csFirstName) {
		loginMsgHtml =3D "Welcome " + csFirstName + "! <a =
href=3D'"+CLICKSHARE_BASE_URL+"/pluckAuth.do?CSTargetURL=3D"+globalSiteUr=
l+"/section/profile'><strong>JOIN THE NEW COMMUNITY!</strong></a> | <a =
href=3D'"+CLICKSHARE_BASE_URL+"/logout.do?CSTargetURL=3D"+location.href+"=
'><strong>LOG OUT</strong></a>";
	} else {
		loginMsgHtml =3D '<span style=3D"color:#cc3300;">Not logged in to =
community.</span> <a =
href=3D"'+CLICKSHARE_BASE_URL+'/pluckAuth.do?CSTargetURL=3D'+location.hre=
f+'"><strong>LOG IN</strong></a> or <a =
href=3D"'+CLICKSHARE_BASE_URL+'/pluckAuth.do?CSTargetURL=3D'+location.hre=
f+'"><strong>REGISTER</strong></a>';
	}
} else {
		var loginMsgHtml =3D "Welcome " + user.DisplayName + "! <a =
href=3D'/section/profile?uid=3D" + user.UserKey.Key + =
"&plckPersonaPage=3DPersonaProfile'><strong>PROFILE</strong></a> | <a =
href=3D'"+CLICKSHARE_BASE_URL+"/myhome.do?CSTargetURL=3D"+location.href+"=
'><strong>ACCOUNT</strong></a> | <a =
href=3D'"+CLICKSHARE_BASE_URL+"/logout.do?CSTargetURL=3D"+location.href+"=
'><strong>LOG OUT</strong></a>";
	}
	if (document.getElementById("cdbLoginMsg")) {
	document.getElementById("cdbLoginMsg").innerHTML =3D loginMsgHtml;
	}
};

function doStaffBlog() {
	var template =3D gSiteLife.GetParameter("template");
	if (template) {
		if (document.getElementById("blogDest")) {
		var blogLinkArr =3D =
document.getElementById("blogDest").getElementsByTagName("a");
		//console.dir(blogLinkArr);
		/*
		for (i=3D0;i<blogLinkArr.length;i++) {
			var linkHref =3D blogLinkArr[i].href;
			if (linkHref.indexOf("uid=3D") > -1) {
				staffUid =3D linkHref.replace(/(.*)(uid\x3d)(\d*)(.*)/,"$3");
				console.log("staffUid: " + staffUid);
				break;
			}
		}
		*/
		for (j=3D0;j<blogLinkArr.length;j++) {
			var oldLinkHref =3D blogLinkArr[j].href;
			newLinkHref =3D =
oldLinkHref.replace(/(.*)(\&plckBlogPage\x3d.*)(\&)(.*)/,"/section/blogs?=
template=3D"+template+"&plckController=3DBlog&plckScript=3DblogScript&plc=
kElementId=3DblogDest$2");
			blogLinkArr[j].href =3D newLinkHref;
			}
		}
	}
};

function doUpdateArticle(articleID, articleUrl, articleTitle) {
		// set article variables
		var articleKey =3D new ArticleKey(articleID);
		var pageUrl =3D articleUrl;
		var pageTitle =3D articleTitle;
		var slSection =3D "";
		var slCategories =3D "";
		/*
		var slSection =3D new Section("section");
		var slCategories =3D new Array();
		slCategories[0] =3D new Category("category1");
		slCategories[1] =3D new Category("category2");
		*/
	=09
		    function forceUpdateArticle() {
	        var forceUpdateBatch =3D new RequestBatch();
            var updateAction =3D new UpdateArticleAction(articleKey, =
pageUrl, pageTitle, slSection, slCategories);
            forceUpdateBatch.AddToRequest(updateAction);
            forceUpdateBatch.BeginRequest(serverUrl, =
forceUpdateCallback);
         };
       =20
        function forceUpdateCallback(responseBatch) {
	       // console.dir(responseBatch);
	        if (responseBatch.Messages[0].Message =3D=3D "ok") {
		        alert("Article updated in Sitelife...\n\nTitle: =
"+pageTitle+"\n\nURL: "+pageUrl+"\n\nSection: "+slSection);} else {
				alert("Error: " + responseBatch.Messages[0].Message);
				}
        };
       =20
        if (location.href.indexOf("updatepluck=3D1") > -1) {
		forceUpdateArticle();
		} else {
	=09
		// send off the request for current user and the article
        function articleRequest() {
         	var requestBatch =3D new RequestBatch();
            requestBatch.AddToRequest(articleKey);
            requestBatch.BeginRequest(serverUrl, doArticle);
        };
       =20
        function doArticle(responseBatch) {
	   // console.dir(responseBatch);
	    if (responseBatch.Responses[0]) {
		    if (document.getElementById('cdbArticleComments')) {
	    var articleInfo =3D responseBatch.Responses[0].Article;
	   =20
	    var articleCommentsHtml =3D "<img =
src=3D'/assets/gif/icon_comment.gif' border=3D'0'> ";
        if (articleInfo.Comments.NumberOfComments =3D=3D "0") {
        	articleCommentsHtml +=3D "Comment";
        	} else if (articleInfo.Comments.NumberOfComments =3D=3D "1") {
        	articleCommentsHtml +=3D "1 comment";
            } else {
            articleCommentsHtml +=3D =
articleInfo.Comments.NumberOfComments + " comments";
            }
        var cdbArticleComments =3D =
document.getElementById('cdbArticleComments');
		cdbArticleComments.innerHTML =3D articleCommentsHtml;
		}
	=09
        } else {
            var updateArticleBatch =3D new RequestBatch();
            var updateAction =3D new UpdateArticleAction(articleKey, =
pageUrl, pageTitle, slSection, slCategories);
            updateArticleBatch.AddToRequest(updateAction);
            updateArticleBatch.BeginRequest(serverUrl, =
autoUpdateArticleCallback);
            }
        };
       =20
        function autoUpdateArticleCallback (responseBatch) {
	       // console.dir(responseBatch);
	        // do nothing
        };
      =09
        articleRequest();
       =20
  }=09
};
------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/Assets/dm/nyxMain.js?ver=20090911

/**
 * @fileOverview
 * Nyx is not just the goddess of the night, she's also a mini-library =
of DAAPI reference gadgets.
 *=20
 * This file includes scripts used throughout Nyx; defines:
 * <li>(if needed) console -- a safety wrapper for Firebug-type logging =
calls</li>
 *=20
 * Everything (except console) is namespaced into the global object NYX.
 *=20
 * @author Glen Ford (glenford [at] yahoo.com)
 * @namespace NYX
 */

//create the wrapper object for the namespace (with version number and =
other key defaults)
var NYX =3D {
	version: "0.4"
}

/* goof-proof calls to the console -- IMMEDIATE EXECUTION HERE
 * Defines a console object (with "empty" methods) as needed; allows =
code in any browser to
 * call Firebug console methods without error. Doesn't overwrite =
existing console so as to not
 * interfere with Safari's console. The Firebug methods array should be =
maintained in sync with
 * the actual Firebug console.
 *=20
 * TODO: this could be enhanced to make dir do something meaningful in =
the Safari console
 */
NYX.fixConsole =3D function() {
	if (typeof window.console !=3D "object") window.console =3D {};
	if (window.console.isNyxxed) {/*already fixed*/}
	else {
		var firebugMethods =3D =
["log","debug","info","warn","error","assert","dir","dirxml",
			=
"trace","group","groupEnd","time","timeEnd","profile","profileEnd","count=
"];
		for (var methodIdx =3D 0; methodIdx < firebugMethods.length; =
methodIdx++) {
			var methodName =3D firebugMethods[methodIdx];
			if (typeof window.console[methodName] !=3D "function") =
window.console[methodName] =3D function(){};
		}
	}
	//add our tracking flag
	window.console.isNyxxed =3D true;
}
NYX.fixConsole();


//now let's report the version (totally optional)
//console.info("Nyx library loaded, version " + NYX.version);



//the cache is a hash for object instances to store "globals" without =
affecting the window namespace
NYX.cache =3D {}




/* this apparently fixes the horrid IE Operation Aborted error pretty =
simply;
 * based on a trick by Diego Perini -- =
http://javascript.nwbox.com/IEContentLoaded/
 * (it's an object instance in order to handle objects parameters sent =
to the action function)
 */

NYX.ieSafeExecution =3D function() {
	//store this in a closure, in case we do asynchronous operation
	var This =3D this;
=09
	//a setting
	this.timeoutLength =3D 200;	//millis
=09
	//the first argument must be the function to call; any remaining =
arguments get passed to that function
	if (typeof arguments[0] !=3D "function") {
		throw("First parameter to NYX.ieSafeExecution is required and must be =
a function");
	} else {
		this.functionToCall =3D arguments[0];
	}
=09
	this.execute =3D function() {
		//on the first call, we need to cache the arguments
		if (typeof This.arguments =3D=3D "undefined") This.arguments =3D =
arguments;
	=09
		if ( typeof document.all =3D=3D "object" && (document.readyState !=3D =
"loaded" && document.readyState !=3D "complete") ) {
			//document.title +=3D "[IE]"; //for visual debugging
			//if (typeof console =3D=3D "object") console.log("in the IE block");
			try {
				//document.title +=3D "^trying^"; //for visual debugging
				document.documentElement.doScroll("left");
				This.functionToCall.apply(This.functionToCall, This.arguments);
			} catch(error) {
				setTimeout(This.execute, This.timeoutLength);
			}
		} else {
			//if (typeof console =3D=3D "object") console.log("executing =
immediately");
			This.functionToCall.apply(This.functionToCall, This.arguments);
		}
	}
}

//NYX utilities
NYX.util =3D {}

NYX.util.makePuid =3D function(optExtraDigits, optBase) {
	/* returns a string based on the current time and a pseudorandom number =
that is=20
	 * _probably_ unique... not quite a GUID, but pretty secure
	 * pass a larger number for optExtraDigits for more security
	 * optBase controls how the number gets converted -- a higher number =
results in a smaller string
	 */
	var timeSeed, rnd, puid;
	if (typeof optExtraDigits !=3D "number") optExtraDigits =3D 5;
	if (typeof optBase !=3D "number") optBase =3D 32;
	timeSeed =3D ( new Date().valueOf() ) - Date.parse("1/1/2008");
	rnd =3D Math.random().toString().substr(2, optExtraDigits); //expects =
Math.random to return x.YYY...
	puid =3D parseInt(timeSeed + "" + rnd).toString(optBase);
=09
	return puid;
}

NYX.util.querystring =3D {
	/**
	 * @return {String} the value of the specified querystring parameter;
	 * 					null if the variable isn't defined
	 * @param {String} name				Name of the QS variable
	 */
	get: function(name) {
		var key =3D name + "=3D";
		var nameValuePairs =3D =
document.location.search.substring(1).split("&");
		for (var pairIdx =3D 0; pairIdx < nameValuePairs.length; pairIdx++) {
			if ( nameValuePairs[pairIdx].indexOf(key) =3D=3D 0 ) {
				return nameValuePairs[pairIdx].substring(key.length);
			}
		}
		return null;
	}
	,
	/**
	 * Sets or adds the specified querystring parameter. Returns the =
querystring with a=20
	 * leading "?" even if it didn't have one before.
	 *=20
	 * <p><i>Notes:</i>
	 * 	If the parameter exists, it <b>must</b> have the trailing equals =
sign, even if the value is empty.
	 * 	Names are case sensitive.
	 * </p>
	 *=20
	 * @return {String} <code>location.search</code> or the optional =
querystring argument
	 * 					with the given parameter set to the value passed.
	 * @param {String} name				Name of the QS variable
	 * @param {String} value			Value to set
	 * @param {String} [optExistingQS]	QS to use (defaults to =
location.search)
	 */
	set: function(name, value, optExistingQS) {
		//get the qs to work with=20
		if (typeof optExistingQS !=3D "string") {
			var qs =3D location.search;
		} else {
			var qs =3D optExistingQS;
		}
		var theReturn =3D qs;
	=09
		if (typeof value =3D=3D "undefined") value =3D "";
	=09
		//escape the name-value pair
		var nvp =3D encodeURI(name + "=3D" + value);
	=09
		if (qs =3D=3D "") {
			theReturn =3D nvp;
		} else if ( !NYX.util.string.contains(qs, name) ) {
			theReturn =3D qs + "&" + nvp;
		} else {
			//use a regex to replace the variable
			var regex =3D new RegExp("(" + name + "=3D[^&^]*)", "gi");
		=09
			//this test also loads the global RegExp object
			if ( qs.match(regex) !=3D null ) {
				theReturn =3D qs.replace(RegExp.lastMatch, nvp);
			}
		}
	=09
		if ( !NYX.util.string.startsWith(theReturn, "?") ) theReturn =3D "?" + =
theReturn;
		return theReturn;
	}
}

NYX.util.obj =3D {
	/**=20
	 * Mimics the Java <code>extends</code> keyword.
	 * Copies all members (properties and methods) from the parent into the =
target.
	 * <p>In addition to inheritance, it's useful for copying "parameter =
bags" (JSON objects) into an instance.</p>
	 * <p>To override members, change them after the <code>extendObj</code> =
call.</p>
	 * @param {Object} targetClass	The child class to modify.
	 * @param {Object} parentClass	The class to extend from.
	 */
	extend: function(targetClass, parentClass) {
		for (var member in parentClass) {
			targetClass[member] =3D parentClass[member];
		}
		return targetClass;
	}
}

NYX.util.array =3D {
	contains: function(theArray, match) {
		if (theArray.length) {
			for (var idx =3D 0; idx < theArray.length; idx++) {
				if (theArray[idx] =3D=3D match) {
					return true;
				}
			}
		}
		return false;	//if we get here, there's no match
	}
}

NYX.util.string =3D {
	/**
	 * Checks source for presence of match. Source is converted to a string =
as needed,
	 * but that doesn't guarantee this will work for arrays. The caller =
must manipulate arrays as needed
	 * if using this function to check for an element.
	 *=20
	 * @return {Boolean} true if the string contains match
	 *=20
	 * @param {String} source	string to search through
	 * @param {String} match	string to search for
	 * @param {Boolean} [optIgnoreCase]	if true, case is ignored
	 */
	contains: function(source, match, optIgnoreCase) {
		if (optIgnoreCase) {
			source =3D source.toLowerCase();
			match  =3D match.toLowerCase();
		}
		return (source.indexOf(match) > -1);
	}
	,
	/**
	 * @return {String} this string with all occurrences of the substring =
replaced
	 * @param {String} source	string to search through
	 * @param {String} match		The sub-string to kill
	 * @param {String} replacement=09
	 */
	replaceAll: function(source, match, replacement) {
		while ( this.contains(source, match) ) {
			source =3D source.replace(match, replacement);
		}
		return source;
	}
	,
	/**
	 * @return {String} A 0-length string for nulls/undefined argument; =
else the argument as a string.
	 */
	ensure: function(arg) {
		//converts arg to a string even if it is null, etc.
		if (typeof arg =3D=3D "string") return arg;
		if (arg =3D=3D null || typeof arg =3D=3D "undefined") return "";
		return arg.toString();
	}
	,
	/** Replaces leading and trailing whitespace. */
	trim: function(stringToTrim) {
		stringToTrim =3D this.ensure(stringToTrim);
		return stringToTrim.replace(/(^\s+|\s+$)/g, "");
	}
	,
	/** @return {Boolean} true if the string passed is 0-length or only =
whitespace */
	isBlank: function(source) {
		return (this.trim(source) =3D=3D "");
	}
	,
	/**=20
	 * @return {Boolean} true if the string starts with the fragment passed =
(case-sensitive)
	 * @param {String} source	string to search through
	 * @param {String} match	Fragment to look for
	 * @param {Boolean} [optIgnoreCase]	if true, case is ignored
	 */
	startsWith: function(source, match, optIgnoreCase) {
		return ( source.substring(0, match.length) =3D=3D match );
	}
	,
	/**=20
	 * @return {Boolean} true if the string ends with the fragment passed =
(case-sensitive)
	 * @param {String} source	string to search through
	 * @param {String} match	Fragment to look for
	 * @param {Boolean} [optIgnoreCase]	if true, case is ignored
	 */
	endsWith: function(source, match, optIgnoreCase) {
		if (optIgnoreCase) {
			source =3D source.toLowerCase();
			match  =3D match.toLowerCase();
		}
		return ( source.substring(source.length - match.length) =3D=3D match =
);
	}
}

//constructors
NYX.TemplateTool =3D { //ABSTRACT superclass!
	getElem: function(idSuffix) {
		return document.getElementById(this.idRoot + "_" + idSuffix);
	}
	,
	getIndexedElem: function(idSuffix, index) {
		return document.getElementById(this.idRoot + "_" + idSuffix + "_" + =
index);
	}
	,
	flattenDaapiItem: function(daapiItem) {
		var flatData =3D {};
		for (var child in daapiItem) {
			if (daapiItem[child] =3D=3D null) {
				flatData[child] =3D null;
			} else if (typeof daapiItem[child] !=3D "object") {
				//scalar value
				flatData[child] =3D daapiItem[child];
			} else {
				//non-scalar, so recurse
				if (typeof daapiItem[child].join =3D=3D "function" && typeof =
daapiItem[child].length =3D=3D "number") {
					//we're going to assume it's an array and just assign it
					flatData[child] =3D daapiItem[child];
				} else {
					//we have an object, so recurse one level and set members that =
haven't already been set
					for (var grandchild in daapiItem[child]) {
						if (typeof flatData[grandchild] =3D=3D "undefined") =
flatData[grandchild] =3D daapiItem[child][grandchild];
					}
				}
			}
		}
		return flatData;
	}
	,
	processTemplate: function(dataObj, template) {
		//finds template variables in the template passed and replaces them =
*if* the dataObj has a matching defined member
	=09
		var regex, template, matches, matchIdx, theMatch, varName;
		regex =3D /\@Nyx\.[^\@]+\@/g;
	=09
		var matches =3D template.match(regex);
		if (matches !=3D null) {
			for (matchIdx =3D 0; matchIdx < matches.length; matchIdx++) {
				theMatch =3D matches[matchIdx];
			=09
				//varName =3D theMatch.substring( theMatch.indexOf(".") + 1 , =
theMatch.lastIndexOf("@") );
				varName =3D theMatch.substring(5, theMatch.length - 1);
			=09
				if (typeof dataObj[varName] !=3D "undefined") {
					template =3D NYX.util.string.replaceAll(template, theMatch, =
dataObj[varName]);
				}
			}
		}
	=09
		return template;
	}
}

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/Assets/js/add-event.js

function addEvent(elm, evType, fn, =
useCapture){if(elm.addEventListener){elm.addEventListener(evType, fn, =
useCapture);return true;}else if (elm.attachEvent){var r =3D =
elm.attachEvent('on' + evType, fn);return r;}else{elm['on' + evType] =3D =
fn;}}
------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/Assets/js/popup.js

var newWindow =3D null;

function closeWin(){
	if (newWindow !=3D null){
		if(!newWindow.closed)
			newWindow.close();
	}
}

function popUpWin(url, type, strWidth, strHeight){
=09
	closeWin();
	=09
	type =3D type.toLowerCase();
=09
	if (type =3D=3D "fullscreen"){
		strWidth =3D screen.availWidth;
		strHeight =3D screen.availHeight;
	}
	var tools=3D"";
	if (type =3D=3D "standard") tools =3D =
"resizable,toolbar=3Dyes,location=3Dyes,scrollbars=3Dyes,menubar=3Dyes,wi=
dth=3D"+strWidth+",height=3D"+strHeight+",top=3D0,left=3D0";
	if (type =3D=3D "console" || type =3D=3D "fullscreen") tools =3D =
"resizable,toolbar=3Dno,location=3Dno,scrollbars=3Dno,width=3D"+strWidth+=
",height=3D"+strHeight+",left=3D0,top=3D0";
	newWindow =3D window.open(url, 'newWin', tools);
	newWindow.focus();
}

function doPopUp(e)
{
//set defaults - if nothing in rel attrib, these will be used
var t =3D "standard";
var w =3D "780";
var h =3D "580";
//look for parameters
attribs =3D this.rel.split(" ");
if (attribs[1]!=3Dnull) {t =3D attribs[1];}
if (attribs[2]!=3Dnull) {w =3D attribs[2];}
if (attribs[3]!=3Dnull) {h =3D attribs[3];}
//call the popup script
popUpWin(this.href,t,w,h);
//cancel the default link action if pop-up activated
if (window.event)=20
	{
	window.event.returnValue =3D false;
	window.event.cancelBubble =3D true;
	}=20
else if (e)=20
	{
	e.stopPropagation();
	e.preventDefault();
	}
}

function findPopUps()
{
var popups =3D document.getElementsByTagName("a");
for (i=3D0;i<popups.length;i++)
	{
	if (popups[i].rel.indexOf("popup")!=3D-1)
		{
		// attach popup behaviour
		popups[i].onclick =3D doPopUp;
		// add popup indicator
		if (popups[i].rel.indexOf("noicon")=3D=3D-1)
			{
			popups[i].style.backgroundImage =3D "url(pop-up.gif)";
			popups[i].style.backgroundPosition =3D "0 center";
			popups[i].style.backgroundRepeat =3D "no-repeat";
			popups[i].style.paddingLeft =3D "15px";
			}
		// add info to title attribute to alert fact that it's a pop-up window
		popups[i].title =3D popups[i].title + "";
		}
	}
}

addEvent(window, 'load', findPopUps, false);

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/Assets/js/addprintlink.js

/*
addPrintLink function by Roger Johansson, www.456bereastreet.com
*/
var addPrintLink =3D {
	init:function(sTargetEl,sLinkText) {
		if (!document.getElementById || !document.createTextNode) {return;} // =
Check for DOM support
		if (!document.getElementById(sTargetEl)) {return;} // Check that the =
target element actually exists
		if (!window.print) {return;} // Check that the browser supports =
window.print
		var oTarget =3D document.getElementById(sTargetEl);
		var oLink =3D document.createElement('a');
		oLink.id =3D 'print-link'; // Give the link an id to allow styling
		oLink.href =3D '#'; // Make the link focusable for keyboard users
		oLink.appendChild(document.createTextNode(sLinkText));
		oLink.onclick =3D function() {window.print(); return false;} // Return =
false prevents the browser from following the link and jumping to the =
top of the page after printing
		oTarget.appendChild(oLink);
	},
/*
addEvent function included here for portability. Replace with your own =
addEvent function if you use one.
*/
/* addEvent function from =
http://www.quirksmode.org/blog/archives/2005/10/_and_the_winner_1.html =
*/
	addEvent:function(obj, type, fn) {
		if (obj.addEventListener)
			obj.addEventListener(type, fn, false);
		else if (obj.attachEvent) {
			obj["e"+type+fn] =3D fn;
			obj[type+fn] =3D function() {obj["e"+type+fn](window.event);}
			obj.attachEvent("on"+type, obj[type+fn]);
		}
	}
};
addPrintLink.addEvent(window, 'load', =
function(){addPrintLink.init('miw2007DetailsContainer','Print this =
profile');});
------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: 7bit
Content-Location: http://www.crainsdetroit.com/includes/fontsizer.js

function setActiveStyleSheet(title) {
var i, a, main;
for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
if(a.getAttribute("rel").indexOf("style") != -1
&& a.getAttribute("title")) {
a.disabled = true;
if(a.getAttribute("title") == title) a.disabled = false;
}}}
------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: 7bit
Content-Location: http://www.crainsdetroit.com/js/cci.js?ver=20100119

CCI = {};
------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/js/cci-setup.js?ver=20100119

CCI["siteConfig"]	=3D	{
	clickshareBaseUrl:	"https://home.businessinsurance.com/clickshare",
	kickAppsProxyUrl:	"/section/kickapps-proxy",
	interstitial:	{
        //1. Set the variable to 1 for OFF and 0 for ON
        hideInter: 0,
        //2. set the number of seconds before timeout to hide the =
interstitial
        interTimeout: 15,
        //3. set the number of days before the cookie should expire
        interDays: 1,
        // set the name for the cookie
        interCookieName: "interstitial",
        //4. set the URL where the floater content lives
        interURL: "/section/inter"
		}
	}
------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/js/cci-lib.js?ver=20100119

CCI.LIB_VERSION =3D {
	Version: "0.2",
	Updated: "June 29, 2009",
	Author: "Crain Communications Inc"
}

CCI.util =3D {
		"safeLoad"			:	function() {
			// safely execute a function after the DOM is ready
			// Listens for when the scrollbar is ready to be used
		=09
			//store this in a closure, in case we do asynchronous operation
			var This =3D this;
			this.timeoutLength =3D 200;	//millis
		=09
			// the first argument must be the function to call;=20
			// any remaining arguments get passed to that function
		=09
			if (typeof arguments[0] !=3D "function") {
				throw("First parameter to CCI.util.safeLoad is required and must be =
a function");
				} else {
					this.functionToCall =3D arguments[0];
					//console.dir(this);
					}
		=09
			this.execute =3D function() {
				//on the first call, we need to cache the arguments
				if (typeof This.arguments =3D=3D "undefined") {
          This.arguments =3D arguments;
          }
				if ( typeof document.all =3D=3D "object" && (document.readyState =
!=3D "loaded" && document.readyState !=3D "complete") ) {
					try {
						document.documentElement.doScroll("left");
						This.functionToCall.apply(This.functionToCall, This.arguments);
					} catch(error) {
						setTimeout(This.execute, This.timeoutLength);
					}
				} else {
					This.functionToCall.apply(This.functionToCall, This.arguments);
					}
				};
		},
	=09
		"truncateString": function (str, limit) {
			var bits, i;
			bits =3D str.split('');
			if (bits.length > limit) {
				for (i =3D bits.length - 1; i > -1; --i) {
					if (i > limit) {
						bits.length =3D i;
					}
					else if (' ' =3D=3D=3D bits[i]) {
						bits.length =3D i;
						break;
					}
				}
				bits.push('...');
			}
			return bits.join('');
		},
	=09
		"getParam"	:	function(name) {
		  name =3D name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
		  var regexS =3D "[\\?&]"+name+"=3D([^&#]*)";
		  var regex =3D new RegExp( regexS );
		  var results =3D regex.exec( window.location.href );
		  if( results =3D=3D null )
		    return "";
		  else
		    return results[1];
		},
	=09
		"removeFromArray": function(arr,el) {
		//	console.dir(arr);
			for(i=3D0;i<arr.length;i++){
			if(el=3D=3Darr[i]) arr.splice(i, 1);
			}
		//	console.dir(arr);
		},
	=09
		"UUID"	:	(function() {
		/*
		Thanks http://www.broofa.com/Tools/Math.uuid.js
		*
	  	Copyright (c) 2008, Robert Kieffer
		All rights reserved.
=09
		Redistribution and use in source and binary forms, with or without =
modification, are permitted provided that the following conditions are =
met:
=09
	    * Redistributions of source code must retain the above copyright =
notice, this list of conditions and the following disclaimer.
	    * Redistributions in binary form must reproduce the above copyright =
notice, this list of conditions and the following disclaimer in the =
documentation and/or other materials provided with the distribution.
	    * Neither the name of Robert Kieffer nor the names of its =
contributors may be used to endorse or promote products derived from =
this software without specific prior written permission.
=09
		THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS =
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT =
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A =
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER =
OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, =
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, =
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR =
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF =
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING =
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS =
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
		*/
  		var CHARS =3D =
'0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split(''=
);=20
		return function (len, radix) {
	    var chars =3D CHARS, uuid =3D [], rnd =3D Math.random;
	    radix =3D radix || chars.length;
=09
	    if (len) {
	      // Compact form
	      for (var i =3D 0; i < len; i++) {
          uuid[i] =3D chars[0 | rnd()*radix];
          }
	    } else {
	      // rfc4122, version 4 form
	      var r;
=09
	      // rfc4122 requires these characters
	      uuid[8] =3D uuid[13] =3D uuid[18] =3D uuid[23] =3D '-';
	      uuid[14] =3D '4';
=09
	      // Fill in random data.  At i=3D=3D19 set the high bits of clock =
sequence as
	      // per rfc4122, sec. 4.1.5
	      for (var j =3D 0; j < 36; j++) {
	        if (!uuid[j]) {
	          r =3D 0 | rnd()*16;
	          uuid[j] =3D chars[(j =3D=3D 19) ? (r & 0x3) | 0x8 : r & 0xf];
	        }
	      }
	    }
=09
	    return uuid.join('');
	  		};
		})(),

		"getElementsByClassName"	:	function(bag) {
				bag =3D bag || {};
				if(bag.container =3D=3D=3D undefined) {
          bag.container =3D document;
          }
				var theContainer =3D bag.container;
				if (theContainer.getElementsByClassName) {
				// newer browsers have native support for getElementsByClassName
				return theContainer.getElementsByClassName(bag.classname);
				} else {
				var classElements =3D [];
        			var els =3D theContainer.getElementsByTagName("*");
        			var elsLen =3D els.length;
        			var pattern =3D new =
RegExp("(^|\\s)"+bag.classname+"(\\s|$)");
        			for (i =3D 0, j =3D 0; i < elsLen; i++) {
                		if ( pattern.test(els[i].className) ) {
                        classElements[j] =3D els[i];
                        j++;
                		}
        			}
        		return classElements;
				}
			},
	=09
		"inArray" : function (arr, value,caseSensitive) {
			var i;
			for (i=3D0; i < arr.length; i++) {
			// use =3D=3D=3D to check for Matches. ie., identical (=3D=3D=3D),
			if(caseSensitive){ //performs match even the string is case sensitive
			if (arr[i].toLowerCase() =3D=3D value.toLowerCase()) {
			return true;
			}
		}else{
			if (arr[i] =3D=3D value) {
			return true;
				}
			}
		}
		return false;
		},
	=09
		"clearInnerHTML":	function(a) {
			b =3D a.cloneNode(false);
			a.parentNode.insertBefore(b,a);
			a.parentNode.removeChild(a);
		},
	=09
		"copyPasteElement"	:	function(bag) {
			// copy the innerHTML of a specified element
			// into other elements
		=09
			bag =3D bag || {};
		=09
			var insertArr =3D new =
CCI.util.getElementsByClassName({classname:bag.insertClass});
			for (i=3D0;i<insertArr.length;i++) {
				//alert(insertArr[i].innerHTML);
				=
//console.dir(document.getElementById(insertArr[i].attributes["rel"].valu=
e));
				newContent =3D =
document.getElementById(insertArr[i].attributes["rel"].value).firstChild.=
cloneNode(true);
				CCI.util.clearInnerHTML(insertArr[i]);
				//alert(insertArr[i].innerHTML);
				insertArr[i].appendChild(newContent);
				//alert(insertArr[i].innerHTML);
			}
		},
	=09
		"doSort"	:	function(bag) {
			bag =3D bag || {};
      var tags =3D bag.tagsArr, tagsParent =3D bag.tagsParent, =
tagAlphaArr =3D [], sorted =3D 0, sortOrder =3D bag.sortOrder, sortBy =
=3D bag.sortBy, hideDuringSort =3D bag.hideDuringSort, loaderMessageID =
=3D bag.loaderMessageID;
		=09
     =20
     =20
			for (j=3D0;j<tags.length;j++) {
				if (tags[j].childNodes.length > 0 && tags[j].value !=3D=3D =
undefined) {
					tagAlphaArr.push(tags[j]);
					}
				}
		=09
		//	console.dir(tagAlphaArr);
		=09
			if (sortBy =3D=3D "id") {
				sorted =3D 1;
				tagAlphaArr.sort(function(c, d) {

  				return c.id =3D=3D d.id? 0: (c.id > d.id ? 1 : -1);
				});
				if (sortOrder =3D=3D "desc") {
					tagAlphaArr.reverse(function(c, d) {
			=09
  				return c.id =3D=3D d.id? 0: (c.id > d.id ? 1 : -1);
				});
				}
			} else {
		=09
		=09
			if (tagAlphaArr[0].childNodes[0].data) {
				sorted =3D 1;
				tagAlphaArr.sort(function(c, d) {
				//	console.log(c.childNodes[0].data + " | " + =
d.childNodes[0].data);z
  				return c.childNodes[0].data =3D=3D d.childNodes[0].data? 0: =
(c.childNodes[0].data > d.childNodes[0].data ? 1 : -1);
				});
				if (sortOrder =3D=3D "desc") {
					tagAlphaArr.reverse(function(c, d) {
				//	console.log(c.childNodes[0].data + " | " + d.childNodes[0].data);
  				return c.childNodes[0].data =3D=3D d.childNodes[0].data? 0: =
(c.childNodes[0].data > d.childNodes[0].data ? 1 : -1);
				});
			}
			} else if (tagAlphaArr[0].childNodes[0].innerHTML) {
				sorted =3D 1;
				tagAlphaArr.sort(function(c, d) {
				//	console.log(c.childNodes[0].innerHTML + " | " + =
d.childNodes[0].innerHTML);
  				return c.childNodes[0].innerHTML =3D=3D d.childNodes[0].innerHTML? =
0: (c.childNodes[0].innerHTML > d.childNodes[0].innerHTML ? 1 : -1);
				});
				if (sortOrder =3D=3D "desc") {
				tagAlphaArr.reverse(function(c, d) {
				//	console.log(c.childNodes[0].innerHTML + " | " + =
d.childNodes[0].innerHTML);
  				return c.childNodes[0].innerHTML =3D=3D d.childNodes[0].innerHTML? =
0: (c.childNodes[0].innerHTML > d.childNodes[0].innerHTML ? 1 : -1);
				});
					}
				}
			}
		=09
			if (sorted) {		=09
				for (x =3D 0; x < tagAlphaArr.length; ++x) {
  					tagsParent.appendChild(tagAlphaArr[x]);
					}
					if (hideDuringSort) {
						document.getElementById(loaderMessageID).style.display =3D "none";
						tagsParent.style.visibility =3D "visible";
						}
				}		=09
				else {
					 if (hideDuringSort) {
						document.getElementById(loaderMessageID).style.display =3D "none";
						tagsParent.style.visibility =3D "visible";
						}
						return false; }
	=09
			},
		=09
		"relativeDates"	:	function(bag) {
			/*
			** Transform dates in YYYYMMDDHHNNSS format to relative "x ago"
			*/
			bag =3D bag || {};
			classname =3D bag.classname;
		=09
			transformDate =3D function(longDate) {
			var d =3D Date.parse(longDate);
			var now =3D new Date();
			var timeSince =3D now.getTime() - d;
			var inSeconds =3D timeSince / 1000;
			var inMinutes =3D timeSince / 1000 / 60;
			var inHours =3D timeSince / 1000 / 60 / 60;
			var inDays =3D timeSince / 1000 / 60 / 60 / 24;
			var inWeeks =3D timeSince / 1000 / 60 / 60 / 24 / 7;
			var inMonths =3D timeSince / 1000 / 60 / 60 / 24 / 7 / 4;
			var inYears =3D timeSince / 1000 / 60 / 60 / 24 / 365;
			var relativeDate =3D 0;
			if(Math.round(inMinutes) < 1){
			relativeDate =3D "less than 1 minute ago";
			}
		=09
			// in minutes
			else if(Math.round(inMinutes) =3D=3D 1){
			relativeDate =3D "1 minute ago";
			}
			else if(inHours < 1.01){
			relativeDate =3D Math.round(inMinutes) + " minutes ago";
			}
		=09
			// in hours
			else if(Math.round(inHours) =3D=3D 1){
			relativeDate =3D "1 hour ago";
			}
			else if(inDays < 1.01 && Math.round(inHours) !=3D=3D 24){
			relativeDate =3D Math.round(inHours) + " hours ago";
			}
		=09
			// in days
			else if(Math.round(inDays) =3D=3D 1 || Math.round(inHours) =3D=3D =
24){
			relativeDate =3D "1 day ago";
			}
			else if(inYears < 1.01 && Math.round(inDays) < 61){
			relativeDate =3D Math.round(inDays) + " days ago";
			}

			// output the relative date
			return relativeDate;
			};
		=09
			// get the datetime in YYYYMMDDHHNNSS format from elements
			var dateArr =3D =
CCI.util.getElementsByClassName({classname:classname});
			//console.dir(dateArr);
			for (i=3D0;i<dateArr.length;i++) {
				var postDate =3D dateArr[i].attributes["rel"].value;
				postDate =3D transformDate(postDate);
				if (postDate) {
				dateArr[i].innerHTML =3D postDate;
				}
			}
		=09
		},
		=09
		"removeAllElements"	:	function(oEle) {
			if ( oEle.hasChildNodes() ) { while ( oEle.childNodes.length >=3D 1 ) =
{ oEle.removeChild( oEle.firstChild );
			} }=20
		},
	=09
		"doTextSizer"	:	function(bag) {
			// get elements on a page and change the font size
			// used by createTextSizerControls
			bag =3D bag || {};
			var min=3Dbag.min, max=3Dbag.max, tag=3Dbag.tag, =
direction=3Dbag.direction, defaultSize=3Dbag.defaultSize;
   				var tagArr =3D document.getElementsByTagName(tag);
   					for(i=3D0;i<tagArr.length;i++) {
      				if(tagArr[i].style.fontSize) {
         			var s =3D =
parseInt(tagArr[i].style.fontSize.replace("px",""));
      				} else {
         			  s =3D defaultSize;
      				}
      				if(direction =3D=3D "up" && s!=3Dmax) {
         			s +=3D 1;
      				} else if (direction =3D=3D "down" && s!=3Dmin) {
	      				s -=3D 1;
      				}
      				tagArr[i].style.fontSize =3D s+"px";
   					}
		},
	=09
		"doPopUps"	:	function(bag) {
			bag =3D bag || {};
			var popupClass =3D bag.popupClass;
			var popupArr =3D =
CCI.util.getElementsByClassName({classname:popupClass});
			for (i=3D0;i<popupArr.length;i++) {
				popupArr[i].onclick =3D function() {
					if (this.href !=3D=3D undefined) {
					dimRegEx =3D /(\d+)x(\d+)/;
					popupHref =3D this.href;
					if (this.attributes["rel"] !=3D=3D undefined) {
					popupWidth =3D this.attributes["rel"].value.replace(dimRegEx,"$1");
					popupHeight =3D =
this.attributes["rel"].value.replace(dimRegEx,"$2");
					popupDimensions =3D "width=3D"+popupWidth+",height=3D"+popupHeight;
					} else {
						popupDimensions =3D "width=3D600,height=3D400";
						}
					if (this.attributes["title"] !=3D=3D undefined) {
					popupTitle =3D this.attributes["title"].value;
					} else {
						popupTitle =3D "Business Insurance";
						}
				=09
					window.open(popupHref,popupTitle,popupDimensions);
					}
					return false;
				};
			}
		},
	=09
		"createTextSizerControls"	:	function(bag) {
			// create textSizer links and insert them into container element(s)
			bag =3D bag || {};
			bag.defaultSize =3D bag.defaultSize || 12;
			bag.tag =3D bag.tag || "p";
			bag.smallerText =3D bag.smallerText || "[&nbsp;-&nbsp;]";
			bag.largerText =3D bag.largerText || "[&nbsp;+&nbsp;]";
			bag.tag =3D bag.tag || "p";
			bag.label =3D bag.label || "Text size: ";
			var containerClassName =3D bag.containerClassName, tag=3Dbag.tag, min =
=3D bag.min, max =3D bag.max, largerText =3D bag.largerText, smallerText =
=3D bag.smallerText, label =3D bag.label, defaultSize =3D =
bag.defaultSize;
			var elArr =3D =
CCI.util.getElementsByClassName({classname:containerClassName});
			var sizerUp =3D document.createElement("a");
			sizerUp.setAttribute("class",containerClassName + "Up");
			sizerUp.href =3D "#";
			sizerUp.onclick =3D function() {
				=
CCI.util.doTextSizer({direction:"up",max:max,tag:tag,defaultSize:defaultS=
ize});
				return false;
			};
			sizerUp.innerHTML =3D largerText;
			var sizerDown =3D document.createElement("a");
			sizerDown.setAttribute("class",containerClassName + "Down");
			sizerDown.href =3D "#";
			sizerDown.onclick =3D function() {
				=
CCI.util.doTextSizer({direction:"down",min:min,tag:tag,defaultSize:defaul=
tSize});
				return false;
			};
			sizerDown.innerHTML =3D smallerText;
			for (i=3D0;i<elArr.length;i++) {
				elArr[i].innerHTML =3D '<span =
class=3D"'+containerClassName+'Label">' + label + "</span>";
				elArr[i].appendChild(sizerDown);
				elArr[i].appendChild(sizerUp);
				}
		},
	=09
	 "clearOnFocus"	:	function(bag)	{
	  	// clear any value or innerHTML of an element onFocus
			bag =3D bag || {};
			var clearThisClass =3D bag.classname, oriVal =3D 0, oriInnerHTML =3D =
0;
			elementArr =3D =
CCI.util.getElementsByClassName({classname:clearThisClass});
		=09
			for (i=3D0;i<elementArr.length;i++) {
				var theEl =3D elementArr[i];
				if (theEl.value) {=20
          oriVal =3D theEl.value;=20
          }
				if (theEl.innerHTML) {=20
          oriInnerHTML =3D theEl.innerHTML;=20
          }
				theEl.onfocus =3D function() {
					This =3D this;
					if (oriVal) {
            This.value =3D "";
            }
					if (oriInnerHTML) {
            This.innerHTML =3D "";
            }
					};
				}
		},
	=09
    "addElement" :  function(a) {
		  // a.newElementInnerHTML =3D new element's innerHTML
		  // a.parentNode =3D parent node to add the new element to
		  // a.newElementTag =3D new element tag to create
		  // a.newAttributes =3D element attributes to be applied to new =
element
		  // a.elementBefore =3D element to insert new element before under =
parentNode
      // a.newAttributes[ATTRIBUTES] =3D array of attributes for new =
element
		  // a.newAttributes[className] =3D workaround for setting =
class(reserved word)
		 =20
      var newHTML =3D 0, parentNode =3D 0, newElement =3D 0, =
elementBefore =3D 0;
      newElement =3D document.createElement(a.newElementTag);=20
     =20
      if(typeof a.elementBefore =3D=3D "object") {
        elementBefore =3D a.elementBefore;
      }
      else if(typeof a.elementBefore =3D=3D "string") {
        elementBefore =3D document.getElementById(a.elementBefore);
      }		 =20
     =20
      if(typeof a.parentNode =3D=3D "object" ) {
        parentNode =3D a.parentNode;
      }
      else if(typeof a.parentNode =3D=3D "string") {
        parentNode =3D document.getElementById(a.parentNode);
      }
		=09
    =20
      if(a.newAttributes) {
        for (var ATTRIBUTE in a.newAttributes) {
         if (ATTRIBUTE =3D=3D "className") {
           newElement.setAttribute("class", a.newAttributes[ATTRIBUTE]);
         }
			   newElement.setAttribute(ATTRIBUTE, a.newAttributes[ATTRIBUTE]);
		    }
		  }
		 =20
		  newElement.innerHTML =3D a.newElementInnerHTML;
			parentNode.style.clear =3D "both";
		=09
      if(elementBefore) {
        parentNode.insertBefore(newElement, elementBefore);
      }
      else {
        parentNode.insertBefore(newElement);
      }
     =20
			return newElement;
    },
     =20
  "createCookie" : function(bag) {
    bag =3D bag || {};
    var date, expires;
    if (bag.days) {
      date =3D new Date();
      date.setTime(date.getTime()+(bag.days*24*60*60*1000));
      expires =3D "; expires=3D"+date.toGMTString();
    }
    else {
      expires =3D "";
      }
    document.cookie =3D bag.name+"=3D"+bag.value+expires+"; path=3D/";
    },
   =20
  "readCookie" : function(bag) {
    bag =3D bag || {};
    var nameEQ, ca, c;
    nameEQ =3D bag.name + "=3D";
    ca =3D document.cookie.split(';');
    for(var i=3D0;i < ca.length;i++) {
      c =3D ca[i];
      while (c.charAt(0)=3D=3D' ') {
        c =3D c.substring(1,c.length);
        }
      if (c.indexOf(nameEQ) =3D=3D=3D 0) {
        return c.substring(nameEQ.length,c.length);
        }
      }
    return null;
    },
   =20
   "testForCookies" : function() {
	   var tmpcookie =3D new Date();
	   chkcookie =3D (tmpcookie.getTime() + '');
	   document.cookie =3D "chkcookie=3D" + chkcookie + "; path=3D/";
	   if (document.cookie.indexOf(chkcookie,0) < 0) {
	     return false;
		  } else {
        return true; 	=09
		    }
	   },
	"countSessionViews"	: function() {
		cookiesOn =3D CCI.util.testForCookies();
		if (cookiesOn) {
			var counter =3D CCI.util.readCookie({ name:"cciCounter"});
			if (counter) {
				counterval =3D (Math.abs(counter)+1);
			} else {
				counterval =3D 1;
			}
			CCI.util.createCookie({ name:"cciCounter", value: counterval, days: =
0});
		}
	},
	"getCSCookie": function(bag) {
		bag =3D bag || {};
		demos =3D bag.demos || null;
		cookieName =3D bag.cookieName || "CSDemos";
		this.Cookie =3D null;
		this.cookiesOn =3D CCI.util.testForCookies();
		if (this.cookiesOn)=20
		{
			csDemosCookie =3D CCI.util.readCookie({name:cookieName}) || 0;
			if (csDemosCookie)
			{
				csDemosCookie =3D csDemosCookie.replace(/\"/g,"");
				csDemosSplit =3D csDemosCookie.split("|");
				this.Cookie =3D {};
			=09
				for (i=3D0;i<csDemosSplit.length;i++) {
					demo =3D csDemosSplit[i].split(":");
					demoName =3D demo[0];
					demoVal =3D demo[1];
				if (demos) {
					if (CCI.util.inArray(demos,demoName)) {
					this.Cookie[demoName] =3D demoVal;
					}
				} else {
					this.Cookie[demoName] =3D demoVal;
					}
				}
			}
		}
		return this;
	}	=09
	};

CCI.util.ajax =3D {
=09
		"callback"	:	function(a) {
			a.handler =3D a.handler || 0;
			if (a.handler) {
				a.handler.apply(a.handler, [a.text]);
			}
		},
	=09
	 	"post"	:	function(bag) {
		 bag =3D bag || {};
		 bag.url =3D bag.url || "";
		 bag.params =3D bag.params || "";
		 bag.handler =3D bag.handler || 0;
		 var request =3D 0;

		=20
		=20
		=20
      	if (window.XMLHttpRequest) { // Mozilla, Safari,...
         request =3D new XMLHttpRequest();
      		} else if (window.ActiveXObject) { // IE
         		try {
            		request =3D new ActiveXObject("Msxml2.XMLHTTP");
         			} catch (e) {
            			try {
               				request =3D new ActiveXObject("Microsoft.XMLHTTP");
            				} catch (e) {}
         				}
      				}
      if (!request) {
         //console.log('Cannot create XMLHTTP instance');
         return false;
      }
     =20
     =20
     =20
      request.onreadystatechange =3D function() {
	     =20
	     =20
	       if (this.readyState =3D=3D 4 && this.status =3D=3D 200) {
		       =
CCI.util.ajax.callback({handler:bag.handler,text:this.responseText});
			}
      	};
     =20
      request.open('POST', bag.url, true);
      request.setRequestHeader("Content-type", =
"application/x-www-form-urlencoded");
      request.setRequestHeader("Content-length", bag.params.length);
      request.setRequestHeader("Connection", "close");
      request.send(bag.params);
   },
  =20
	 	"get"	:	function(bag) {
		 bag =3D bag || {};
		 bag.url =3D bag.url || "";
		 bag.params =3D bag.params || "";
		 bag.handler =3D bag.handler || 0;
		 var request =3D 0;
	=20
		=20
      	if (window.XMLHttpRequest) { // Mozilla, Safari,...
         request =3D new XMLHttpRequest();
      		} else if (window.ActiveXObject) { // IE
         		try {
            		request =3D new ActiveXObject("Msxml2.XMLHTTP");
         			} catch (e) {
            			try {
               				request =3D new ActiveXObject("Microsoft.XMLHTTP");
            				} catch (e) {}
         				}
      				}
      if (!request) {
         //console.log('Cannot create XMLHTTP instance');
         return false;
      }
     =20
     =20
     =20
      request.onreadystatechange =3D function() {
	     =20
	     =20
	       if (this.readyState =3D=3D 4 && this.status =3D=3D 200) {
		       =
CCI.util.ajax.callback({handler:bag.handler,text:this.responseText});
			}
      	};
     =20
      request.open('GET', bag.url + bag.params, true);
      request.send(null);
   }
};

CCI.reg	=3D	{
	"checkRegCookie"	:	function(name,param) {

		var nameEQ =3D name + "=3D";
		var ca =3D document.cookie.split(';');
		for(var i=3D0;i < ca.length;i++)
		{
			var c =3D ca[i];
			while (c.charAt(0)=3D=3D' ')
				c =3D c.substring(1,c.length);
			if (c.indexOf(nameEQ) =3D=3D 0)
				var cookieString =3D c.substring(nameEQ.length,c.length);
		}
		if (cookieString && param =3D=3D "nameFirst") {
		myfirst =3D cookieString.replace(/(.*)(nameFirst:(\w*))(.*)/,"$3");
		return myfirst;
		} else if (cookieString && param =3D=3D "userId") {
		myuserid =3D cookieString.replace(/(.*)(userId:(\d*))(.*)/,"$3");
		return myuserid;
		} else {
		return false;
		}
	},

	"loginMsg"	:	function(bag) {
		bag =3D bag || {};
		msgType =3D bag.msgType || "";
		//console.dir(bag);
		var csFirstName =3D CCI.reg.checkRegCookie("CSDemos","nameFirst");
		if (csFirstName) {
		loginMsgHtml =3D "Welcome, <a =
href=3D'"+CCI.siteConfig.clickshareBaseUrl+"/myhome.do?CSTargetURL=3D"+lo=
cation.href+"'>"+csFirstName+"</a>";
		if (msgType =3D=3D "long") {
			loginMsgHtml +=3D "<br>";
		} else {
			loginMsgHtml +=3D " | ";
		}
		loginMsgHtml +=3D "<a =
href=3D'"+CCI.siteConfig.clickshareBaseUrl+"/logout.do?CSTargetURL=3D"+lo=
cation.href+"'>Log out</a>";
		} else {
			return false;
			}
	if (document.getElementById("cci-login-msg")) {
	document.getElementById("cci-login-msg").innerHTML =3D loginMsgHtml;
	}
	}
};
=09
CCI.articles =3D {
		=09
			"hideNext": function(bag) {
				bag =3D bag || {};
				var navNextCheck =3D bag.navNextCheck;
				var navNext =3D bag.navNext;
				var navNextArr =3D =
CCI.util.getElementsByClassName({classname:navNext});
				var removeArr =3D function(arr) {
					for (j=3D0;j<arr.length;j++) {=20
            CCI.util.removeAllElements(arr[j]);
					}
				};
				if (document.getElementById(navNextCheck)) {
					var navNextLinkArr =3D =
document.getElementById(navNextCheck).getElementsByTagName("a");
					//console.dir(navNextLinkArr);
					if (navNextLinkArr.length > 0) {
						//console.log(navNextLinkArr.length);
						for (i=3D0;i<navNextLinkArr.length;i++) {
							if (navNextLinkArr[i].href.indexOf("/article/") > -1) {
								return false;
							}
						}
					} else { removeArr(navNextArr); }
				} else {
					return false;
				}
			},
		=09
			"nav": function(a) {
					// takes a group of elements and creates
					// next/previous navigation
					// console.dir(a)
				=09
					var url =3D 0, currentItem =3D 0, prevLink =3D 0, nextLink =3D 0;
					var parentDiv =3D document.getElementById(a.listDiv);
         			var tags =3D parentDiv.getElementsByTagName(a.tagName);
          			for (var i =3D 0; i < tags.length; i++) {
 	            			if(tags[i].className =3D=3D a.currentClass) {
	 	            			currentItem =3D i;
                	  			break;
	            				}
      					}	=20
          		=09
      				//console.log(currentItem);
          			if (currentItem > 0) {
          			 prevLink =3D tags[currentItem - 1].childNodes[0].href;
      				}
      				if (currentItem < tags.length - 1) {
      				  nextLink =3D tags[currentItem + 1].childNodes[0].href;
					}
				=09
					// write out the nav HTML=20
					navHtml =3D "<ul>";
					navHtml +=3D "<li>";
					if (prevLink) {
						navHtml +=3D "<a href=3D'" + prevLink + "'>";
					}
						navHtml +=3D "&laquo; Previous";
					if (prevLink) {
						navHtml +=3D "</a>";
					}
					navHtml +=3D "</li><li>";
					if (nextLink) {
						navHtml +=3D "<a href=3D'" + nextLink + "'>";
					}
						navHtml +=3D "Next &raquo;";
					if (nextLink) {
						navHtml +=3D "</a>";
					}
					navHtml +=3D "</li>";
					navHtml +=3D "</ul>";
				=09
					// create a new element and insert it before the
					// list. Need to abstract this into helper function
					// inside CCI.utils
				=09
					var navDiv =3D document.createElement("div");
					if(navDiv.setAttribute("id", "navDiv")) {
					 navDiv.setAttribute("id", "navDiv");
					 }
					 else {
           navDiv.id =3D "navDiv";
           }
					navDiv.innerHTML =3D navHtml;
					parentDiv.style.clear =3D "both";
					parentDiv.parentNode.insertBefore(navDiv,parentDiv);
				},
		  "addSort"	:	function(bag) {
			   bag =3D bag || {};
			   var tagListClass =3D bag.tagListClass;
			   var blogTagsArr =3D =
CCI.util.getElementsByClassName({classname:tagListClass});
			   var hideDuringSort =3D bag.hideDuringSort || 0;
			   var loaderMessageID =3D bag.loaderMessageID || 0;
			   var sortOrder =3D bag.sortOrder || "asc";
			   var sortBy =3D bag.sortBy || "content";
			  =20
		      //	console.dir(blogTagsArr);
			   for (i=3D0;i<blogTagsArr.length;i++) {
			     var blogTags =3D blogTagsArr[i];
			     if (blogTags.childNodes.length > 0) {
			       var tags =3D blogTags.childNodes;
			       =
CCI.util.doSort({tagsArr:tags,tagsParent:blogTags,sortOrder:sortOrder,sor=
tBy:sortBy,hideDuringSort:hideDuringSort,loaderMessageID:loaderMessageID}=
);
					   }
				  }
			  }
		};

CCI.interstitial =3D {  =20
 =20
      "InitializeTimer" : function(bag) {
        bag =3D bag || {};
        var secs;
        var timerID =3D null;
        var timerRunning =3D false;
        var delay =3D 1000;

        secs =3D bag.s;
       =20
        timerRunning =3D CCI.interstitial.StopTheClock({ timerRunning: =
timerRunning});
        timerRunning =3D CCI.interstitial.StartTheTimer({secs: secs, =
timerRunning: timerRunning, delay: delay});
        },
       =20
      "StopTheClock"  : function(bag) {
        bag =3D bag || {};
        if(bag.timerRunning) {
          clearTimeout(timerID);
          }
        return (timerRunning =3D false);
        },
       =20
      "StartTheTimer" : function(bag) {
        bag =3D bag || {};
        secs =3D bag.secs;
        delay =3D bag.delay;
       =20
        timerRunning =3D bag.timerRunning;
       =20
        if (secs =3D=3D 1) {
          CCI.interstitial.StopTheClock({ timerRunning: timerRunning});
          CCI.interstitial.hideIt({ e: "inter"});
          } else {
            self.status =3D secs;
            secs =3D secs - 1;
            timerRunning =3D true;
            if (secs =3D=3D 1) {
              document.getElementById('secondHolder').innerHTML=3Dsecs + =
" second";
            } else {
              document.getElementById('secondHolder').innerHTML=3Dsecs + =
" seconds";
              }
            timerID =3D =
self.setTimeout("CCI.interstitial.StartTheTimer({secs: secs, =
timerRunning: timerRunning, delay: delay})", delay);
            }
          return timerRunning;
        },
       =20
      "hideIt" : function(bag) {
         bag =3D bag || {};
        =20
	       if (window.XMLHttpRequest) {
	       document.body.style.overflow=3D"auto";}
	       if (!document.getElementById) {
          return false;
          }
	       if (!document.getElementById(bag.e)) {
          return false;
          }
	       var mask =3D document.getElementById(bag.e);
	       if (mask.style.display !=3D 'none') {
           mask.style.display =3D 'none';
	         }
        },
       =20
      "showIt" : function(bag) {
        bag =3D bag || {};
        var hideInter =3D CCI.siteConfig.interstitial.hideInter;
        var interTimeout =3D CCI.siteConfig.interstitial.interTimeout;
        var interDays =3D CCI.siteConfig.interstitial.interDays;
        var interCookieName =3D =
CCI.siteConfig.interstitial.interCookieName;
      	var interURL =3D CCI.siteConfig.interstitial.interURL;
      =09
        //Add onclick event to skip advertisement =20
        var elements =3D CCI.util.getElementsByClassName({ classname: =
"inter_hide"});
        elements[0].onclick =3D function() {CCI.interstitial.hideIt({ e: =
'inter'});};
       =20
       =20
        var cookiesOn =3D CCI.util.testForCookies();
        var cookedInter =3D CCI.util.readCookie({ name: =
interCookieName});
       =20
        if(cookedInter =3D=3D=3D null && hideInter =3D=3D=3D 0 && =
cookiesOn) {

	      function ajaxCallback(results) {
		      	//console.log(results);
		      	document.getElementById(bag.container).innerHTML =3D results;
	      		}
	      CCI.util.ajax.get({ url: interURL, handler: ajaxCallback});
          CCI.util.createCookie({ name:interCookieName, value: "1", =
days: interDays});
          var s =3D interTimeout*1000;
          var e =3D "inter";
         =20
          location.href =3D "#";
          if (window.XMLHttpRequest) {
          document.body.style.overflow=3D"hidden";}
          //console.info("showIt running...");
          if (!document.getElementById) {
            return false;
            }
          //console.log("document.getElementById is true");
          //if (!document.getElementById(e)) return false;
          //console.log("id " + bag.e + " on page");
          var mask =3D document.getElementById(e);
          //console.log("mask =3D " + mask);
          if (mask.style.display !=3D 'block') {
            mask.style.display =3D 'block';
		        //console.log("mask visibile");
	          }
	         //if the seconds arent passed set it to 10
	        if (s =3D=3D=3D null || s =3D=3D=3D "" || s =3D=3D=3D =
undefined){
			      s =3D 15000;
					  }
	        //if the element is inter update the div with the seconds
          if (e =3D=3D "inter"){
            CCI.interstitial.InitializeTimer({ s: interTimeout});
            }			=09
          if(s !=3D "neverHide"){
            enoughalready =3D setTimeout("CCI.interstitial.hideIt({ e: =
'"+e+"'});", s);
            }
        }
      }
    };
       =20
       =20
CCI.forms =3D {"actions"	:	{	cce			:	"/apps/pbcs.dll/submitcceobject",
					        	sendmail	:	"/apps/xsendmail.dll",
					        	search		:	"/search"
							},
		=09
			"messages"	:	{	badForm		:	"Sorry, we need a little more information =
from you:",
								emptyField	:	"One or more required fields are missing.",
								badEmail	:	"You must enter a valid e-mail address.",
								badText		:	"Text fields must contain alphanueric characters.",
								overLimit	:	"One or more answers are too long."
							},
						=09
			"styles"	:	{	errorMessage:	"errorMessage", // id of DIV that will =
contain error msgs
								formTop		:	"formTop", // id of anchor to create at top of form
								defaultInput:	"defaultInput", // class of default input
								invalidInput:	"invalidInput" // class of invalid input
							},
		=09
			"doCheck"	:	function(bag) {
				bag =3D bag || {};
				theForm =3D bag.formElement;
				// create an anchor so we can go back to the top if needed
				var formTop =3D document.createElement("span");
				formTop.setAttribute("id", this.styles["formTop"]);
				theForm.parentNode.insertBefore(formTop,theForm);
			=09
				// validate the form
				formType =3D bag.formType;
				formAction =3D this.actions[formType];
		=09
				var formElements =3D theForm.elements, requiredFields =3D [], =
emailFields =3D [], limitFields =3D [], emptyErr =3D "", emailErr =3D =
"", textErr =3D "", limitErr=3D"", requiredClass =3D bag.requiredClass, =
emailClass =3D bag.emailClass, limitClass =3D bag.limitClass;
			=09
			=09
				if (formType =3D=3D "search") {
					// special search actions
					}
			=09
			=09
				for (i=3D0;i<formElements.length;i++) {
					if (formElements[i].className.indexOf(requiredClass) > -1 || =
formElements[i].className.indexOf(emailClass) > -1 || =
formElements[i].className.indexOf(limitClass) > -1) {
							if (formElements[i].className.indexOf(requiredClass) > -1) {
								requiredFields.push(formElements[i].name);=20
								}
							if (formElements[i].className.indexOf(emailClass) > -1) {
								emailFields.push(formElements[i].name);=20
								}
							if (formElements[i].className.indexOf(limitClass) > -1) {
								limitFields.push(formElements[i].name);=20
								}
							formElements[i].onfocus =3D function() {
							if (this.className.indexOf("invalidInput") > -1) {
				    			this.className =3D =
this.className.replace(/invalidInput/g,"");
			    				}
							};
						}
					}
				for (j=3D0;j<requiredFields.length;j++) {
				=09
					thisRequiredField =3D formElements[requiredFields[j]];
					if (thisRequiredField.className.indexOf("defaultInput") =3D=3D -1) =
{
					thisRequiredField.className +=3D " defaultInput";
					}
					var checkLength =3D thisRequiredField.value.length;
					var checkText =3D thisRequiredField.value.match(/.*[a-z0-9]+.*/i);
					if (!checkLength) {
							emptyErr =3D this.messages["emptyField"];
							thisRequiredField.className =3D =
thisRequiredField.className.replace(/defaultInput/,"invalidInput");
						} else if (!checkText) {
						textErr =3D this.messages["badText"];
						thisRequiredField.className =3D =
thisRequiredField.className.replace(/defaultInput/,"invalidInput");
						}
					}
				=09
				for (e=3D0;e<emailFields.length;e++) {
					thisEmailField =3D formElements[emailFields[e]];
					if (thisEmailField.className.indexOf("defaultInput") =3D=3D -1) {
					thisEmailField.className +=3D " defaultInput";
					}
					var checkEmail =3D thisEmailField.value.match(/.+@.+\.[a-z]+/i);
					if (!checkEmail) {
						emailErr =3D this.messages["badEmail"];
						thisEmailField.className =3D =
thisEmailField.className.replace(/defaultInput/,"invalidInput");
						}
					}
			=09
				for (l=3D0;l<limitFields.length;l++) {
					thisLimitField =3D formElements[limitFields[l]];
					if (thisLimitField.className.indexOf("defaultInput") =3D=3D -1) {
					thisLimitField.className +=3D " defaultInput";
					}
					var charLimit =3D =
thisLimitField.className.replace(/[a-zA-z]/ig,"");
				//	console.log(thisLimitField.textLength);
				//	console.log(charLimit);
					if (thisLimitField.textLength > charLimit) {
						limitErr =3D this.messages["overLimit"];
						thisLimitField.className =3D =
thisLimitField.className.replace(/defaultInput/,"invalidInput");
					}
				}
		=09
				if ((emptyErr.length + emailErr.length + textErr.length + =
limitErr.length) > 0) {
					document.location =3D "#" + this.styles["formTop"];
					errorMessageHTML =3D this.messages["badForm"] + "<ul>";
					if (emptyErr.length > 0) {
					errorMessageHTML +=3D "<li>" + emptyErr + "</li>";
						}
					if (emailErr.length > 0) {
					errorMessageHTML +=3D "<li>" + emailErr + "</li>";
						}
					if (textErr.length > 0) {
					errorMessageHTML +=3D "<li>" + textErr + "</li>";
						}
					if (limitErr.length > 0) {
					errorMessageHTML +=3D "<li>" + limitErr + "</li>";
						}
					errorMessageHTML +=3D "</ul>";
				=09
					var errorMessageDiv =3D =
document.getElementById(this.styles["errorMessage"]);
					if (!errorMessageDiv) {
						errorMessageDiv =3D document.createElement("div");
						errorMessageDiv.setAttribute("id", "errorMessage");
						}			=20
				=09
					 errorMessageDiv.innerHTML =3D errorMessageHTML;
					 var parentDiv =3D theForm.parentNode;
					 parentDiv.insertBefore(errorMessageDiv, theForm);
					 return false;
					} else {
						if (formType =3D=3D "cce") {
							theForm.elements["type"].value =3D theForm.elements["cci"].value;
							if (document.getElementById("finalTextTemplate")) {
								var finalTextTemplate =3D =
document.getElementById("finalTextTemplate").innerHTML;
								theForm.elements["field_final_text"].value =3D =
finalTextTemplate;
								}
					=09
					=09
						var makeTempUUID =3D CCI.util.UUID();
						var tempUUID =3D document.createElement("input");
						tempUUID.setAttribute("type","hidden");
						tempUUID.setAttribute("name","field_tempUUID");
						tempUUID.setAttribute("value",makeTempUUID);
						theForm.appendChild(tempUUID);
						} else if (formType =3D=3D "sendmail") {
							theForm.action =3D CCI.forms.actions[formType];
						}
						 theForm.submit();
						}
		},
	=09
		"addCheck"	:	function(a,b) {
		=09
			// after the page loads, identify a form to be validated
			var thisForm =3D document.forms[a];
			if (document.getElementById("paymentlevel-fields")) {
			var upsellContainer =3D =
document.getElementById("paymentlevel-fields");
			var upsellToggleArr =3D thisForm.elements["field_paymentlevel"];
			var upsellRequiredItems =3D [];
			for (k=3D0;k<upsellContainer.childNodes;k++) {
				if (upsellContainer.childNodes[k].className.indexOf("required") > =
-1) {
					upsellRequiredItems.push(upsellContainer.childNodes[k]);
				}
			}
		=09
			//console.dir(upsellToggleArr);
		=09
			for (p=3D0;p<upsellToggleArr.length; p++) {
				var upsellToggle =3D upsellToggleArr[p];
				upsellToggle.onclick =3D function() {
				=09
					var thisTierFields =3D =
CCI.util.getElementsByClassName({classname:this.value});
					for (t=3D0;t<thisTierFields.length;t++) {
						thisTierFields[t].style.display =3D "block";
						/*
						var toggleOff =3D document.createElement("span");
						toggleOff.setAttribute("class","cci-field-toggle");
						toggleOff.innerHTML =3D "close";
						toggleOff.onclick =3D function() {
							this.parentNode.style.display =3D "none";
							this.parentNode.removeChild(this);
						}
						thisTierFields[t].appendChild(toggleOff);
						*/
					}
				}
			}
		}
		=09
			for (i=3D0;i<thisForm.elements.length;i++) {
				var el =3D thisForm.elements[i];
				if (el.className.indexOf("cci-char-limit-") > -1) {
					var charLimit =3D =
el.className.replace(/cci-char-limit-(\d+)/ig,"$1");
					charLimit =3D Math.abs(charLimit);
					var counterEl =3D document.getElementById("cci-char-counter-" + =
el.name);
					var counterDirection =3D =
counterEl.className.replace(/cci-char-counter-([a-z]+)/ig,"$1");
					var counterMessage =3D counterEl.title;
					counterEl.innerHTML =3D counterMessage;
					if (counterDirection =3D=3D "down") {
					counterEl.innerHTML +=3D " " + charLimit;
					} else { counterEl.innerHTML +=3D " 0"; }
				=09
				=09
					el.onkeyup =3D function() {
						var textareaLength =3D Math.abs(this.value.length);
						if (counterDirection =3D=3D "down") {
							theCount =3D charLimit - textareaLength;
							} else {
								theCount =3D textareaLength; }
						if (textareaLength > charLimit) {
							counterEl.innerHTML =3D "Too many characters! " + theCount;
							this.setAttribute("class","invalidInput");
							} else {
						this.removeAttribute("class","invalidInput");
						counterEl.innerHTML =3D counterMessage + " " + theCount;
						}
					};
				}
			var onSubmitVal =3D function() {
				CCI.forms.doCheck({formElement:thisForm, formType:b, =
requiredClass:"required", emailClass:"email", limitClass: "limit"});
				return false;
			};
			thisForm.onsubmit =3D onSubmitVal;
			}
		}
	=09
	};
------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/js/jquery-1.3.2.min.js

/*=0A=
 * jQuery JavaScript Library v1.3.2=0A=
 * http://jquery.com/=0A=
 *=0A=
 * Copyright (c) 2009 John Resig=0A=
 * Dual licensed under the MIT and GPL licenses.=0A=
 * http://docs.jquery.com/License=0A=
 *=0A=
 * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009)=0A=
 * Revision: 6246=0A=
 */=0A=
(function(){var =
l=3Dthis,g,y=3Dl.jQuery,p=3Dl.$,o=3Dl.jQuery=3Dl.$=3Dfunction(E,F){return=
 new =
o.fn.init(E,F)},D=3D/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=3D/^.[^:#\[\.=
,]*$/;o.fn=3Do.prototype=3D{init:function(E,H){E=3DE||document;if(E.nodeT=
ype){this[0]=3DE;this.length=3D1;this.context=3DE;return this}if(typeof =
E=3D=3D=3D"string"){var =
G=3DD.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=3Do.clean([G[1]],H)}else{var =
I=3Ddocument.getElementById(G[3]);if(I&&I.id!=3DG[3]){return =
o().find(E)}var F=3Do(I||[]);F.context=3Ddocument;F.selector=3DE;return =
F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return =
o(document).ready(E)}}if(E.selector&&E.context){this.selector=3DE.selecto=
r;this.context=3DE.context}return =
this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",=
size:function(){return this.length},get:function(E){return =
E=3D=3D=3Dg?Array.prototype.slice.call(this):this[E]},pushStack:function(=
F,H,E){var =
G=3Do(F);G.prevObject=3Dthis;G.context=3Dthis.context;if(H=3D=3D=3D"find"=
){G.selector=3Dthis.selector+(this.selector?" =
":"")+E}else{if(H){G.selector=3Dthis.selector+"."+H+"("+E+")"}}return =
G},setArray:function(E){this.length=3D0;Array.prototype.push.apply(this,E=
);return this},each:function(F,E){return =
o.each(this,F,E)},index:function(E){return =
o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var =
E=3DF;if(typeof F=3D=3D=3D"string"){if(H=3D=3D=3Dg){return =
this[0]&&o[G||"attr"](this[0],F)}else{E=3D{};E[F]=3DH}}return =
this.each(function(I){for(F in =
E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E=
,F){if((E=3D=3D"width"||E=3D=3D"height")&&parseFloat(F)<0){F=3Dg}return =
this.attr(E,F,"curCSS")},text:function(F){if(typeof =
F!=3D=3D"object"&&F!=3Dnull){return =
this.empty().append((this[0]&&this[0].ownerDocument||document).createText=
Node(F))}var =
E=3D"";o.each(F||this,function(){o.each(this.childNodes,function(){if(thi=
s.nodeType!=3D8){E+=3Dthis.nodeType!=3D1?this.nodeValue:o.fn.text([this])=
}})});return E},wrapAll:function(E){if(this[0]){var =
F=3Do(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBef=
ore(this[0])}F.map(function(){var =
G=3Dthis;while(G.firstChild){G=3DG.firstChild}return =
G}).append(this)}return this},wrapInner:function(E){return =
this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){re=
turn this.each(function(){o(this).wrapAll(E)})},append:function(){return =
this.domManip(arguments,true,function(E){if(this.nodeType=3D=3D1){this.ap=
pendChild(E)}})},prepend:function(){return =
this.domManip(arguments,true,function(E){if(this.nodeType=3D=3D1){this.in=
sertBefore(E,this.firstChild)}})},before:function(){return =
this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,=
this)})},after:function(){return =
this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,=
this.nextSibling)})},end:function(){return =
this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:f=
unction(E){if(this.length=3D=3D=3D1){var =
F=3Dthis.pushStack([],"find",E);F.length=3D0;o.find(E,this[0],F);return =
F}else{return this.pushStack(o.unique(o.map(this,function(G){return =
o.find(E,G)})),"find",E)}},clone:function(G){var =
E=3Dthis.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){va=
r I=3Dthis.outerHTML;if(!I){var =
J=3Dthis.ownerDocument.createElement("div");J.appendChild(this.cloneNode(=
true));I=3DJ.innerHTML}return o.clean([I.replace(/ =
jQuery\d+=3D"(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return =
this.cloneNode(true)}});if(G=3D=3D=3Dtrue){var =
H=3Dthis.find("*").andSelf(),F=3D0;E.find("*").andSelf().each(function(){=
if(this.nodeName!=3D=3DH[F].nodeName){return}var =
I=3Do.data(H[F],"events");for(var K in I){for(var J in =
I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return =
E},filter:function(E){return =
this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return =
E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return =
F.nodeType=3D=3D=3D1})),"filter",E)},closest:function(E){var =
G=3Do.expr.match.POS.test(E)?o(E):null,F=3D0;return =
this.map(function(){var =
H=3Dthis;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(=
H,"closest",F);return =
H}H=3DH.parentNode;F++}})},not:function(E){if(typeof =
E=3D=3D=3D"string"){if(f.test(E)){return =
this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=3Do.multiFilter=
(E,this)}}var F=3DE.length&&E[E.length-1]!=3D=3Dg&&!E.nodeType;return =
this.filter(function(){return =
F?o.inArray(this,E)<0:this!=3DE})},add:function(E){return =
this.pushStack(o.unique(o.merge(this.get(),typeof =
E=3D=3D=3D"string"?o(E):o.makeArray(E))))},is:function(E){return =
!!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return =
!!E&&this.is("."+E)},val:function(K){if(K=3D=3D=3Dg){var =
E=3Dthis[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{=
}).specified?E.value:E.text}if(o.nodeName(E,"select")){var =
I=3DE.selectedIndex,L=3D[],M=3DE.options,H=3DE.type=3D=3D"select-one";if(=
I<0){return null}for(var F=3DH?I:0,J=3DH?I+1:M.length;F<J;F++){var =
G=3DM[F];if(G.selected){K=3Do(G).val();if(H){return K}L.push(K)}}return =
L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof =
K=3D=3D=3D"number"){K+=3D""}return =
this.each(function(){if(this.nodeType!=3D1){return}if(o.isArray(K)&&/radi=
o|checkbox/.test(this.type)){this.checked=3D(o.inArray(this.value,K)>=3D0=
||o.inArray(this.name,K)>=3D0)}else{if(o.nodeName(this,"select")){var =
N=3Do.makeArray(K);o("option",this).each(function(){this.selected=3D(o.in=
Array(this.value,N)>=3D0||o.inArray(this.text,N)>=3D0)});if(!N.length){th=
is.selectedIndex=3D-1}}else{this.value=3DK}}})},html:function(E){return =
E=3D=3D=3Dg?(this[0]?this[0].innerHTML.replace(/ =
jQuery\d+=3D"(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWit=
h:function(E){return this.after(E).remove()},eq:function(E){return =
this.slice(E,+E+1)},slice:function(){return =
this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.=
prototype.slice.call(arguments).join(","))},map:function(E){return =
this.pushStack(o.map(this,function(G,F){return =
E.call(G,F,G)}))},andSelf:function(){return =
this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var =
I=3D(this[0].ownerDocument||this[0]).createDocumentFragment(),F=3Do.clean=
(J,(this[0].ownerDocument||this[0]),I),H=3DI.firstChild;if(H){for(var =
G=3D0,E=3Dthis.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.c=
loneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return =
M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbo=
dy")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn=
.init.prototype=3Do.fn;function =
z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o=
.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.pa=
rentNode.removeChild(F)}}function e(){return +new =
Date}o.extend=3Do.fn.extend=3Dfunction(){var =
J=3Darguments[0]||{},H=3D1,I=3Darguments.length,E=3Dfalse,G;if(typeof =
J=3D=3D=3D"boolean"){E=3DJ;J=3Darguments[1]||{};H=3D2}if(typeof =
J!=3D=3D"object"&&!o.isFunction(J)){J=3D{}}if(I=3D=3DH){J=3Dthis;--H}for(=
;H<I;H++){if((G=3Darguments[H])!=3Dnull){for(var F in G){var =
K=3DJ[F],L=3DG[F];if(J=3D=3D=3DL){continue}if(E&&L&&typeof =
L=3D=3D=3D"object"&&!L.nodeType){J[F]=3Do.extend(E,K||(L.length!=3Dnull?[=
]:{}),L)}else{if(L!=3D=3Dg){J[F]=3DL}}}}}return J};var =
b=3D/z-?index|font-?weight|opacity|zoom|line-?height/i,q=3Ddocument.defau=
ltView||{},s=3DObject.prototype.toString;o.extend({noConflict:function(E)=
{l.$=3Dp;if(E){l.jQuery=3Dy}return o},isFunction:function(E){return =
s.call(E)=3D=3D=3D"[object Function]"},isArray:function(E){return =
s.call(E)=3D=3D=3D"[object Array]"},isXMLDoc:function(E){return =
E.nodeType=3D=3D=3D9&&E.documentElement.nodeName!=3D=3D"HTML"||!!E.ownerD=
ocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.t=
est(G)){var =
F=3Ddocument.getElementsByTagName("head")[0]||document.documentElement,E=3D=
document.createElement("script");E.type=3D"text/javascript";if(o.support.=
scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=3DG}F.i=
nsertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){ret=
urn =
F.nodeName&&F.nodeName.toUpperCase()=3D=3DE.toUpperCase()},each:function(=
G,K,F){var E,H=3D0,I=3DG.length;if(F){if(I=3D=3D=3Dg){for(E in =
G){if(K.apply(G[E],F)=3D=3D=3Dfalse){break}}}else{for(;H<I;){if(K.apply(G=
[H++],F)=3D=3D=3Dfalse){break}}}}else{if(I=3D=3D=3Dg){for(E in =
G){if(K.call(G[E],E,G[E])=3D=3D=3Dfalse){break}}}else{for(var =
J=3DG[0];H<I&&K.call(J,H,J)!=3D=3Dfalse;J=3DG[++H]){}}}return =
G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=3DI.call(H,F)}return =
typeof =
I=3D=3D=3D"number"&&G=3D=3D"curCSS"&&!b.test(E)?I+"px":I},className:{add:=
function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType=3D=3D=
1&&!o.className.has(E.className,H)){E.className+=3D(E.className?" =
":"")+H}})},remove:function(E,F){if(E.nodeType=3D=3D1){E.className=3DF!=3D=
=3Dg?o.grep(E.className.split(/\s+/),function(G){return =
!o.className.has(F,G)}).join(" "):""}},has:function(F,E){return =
F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:functi=
on(H,G,I){var E=3D{};for(var F in =
G){E[F]=3DH.style[F];H.style[F]=3DG[F]}I.call(H);for(var F in =
G){H.style[F]=3DE[F]}},css:function(H,F,J,E){if(F=3D=3D"width"||F=3D=3D"h=
eight"){var =
L,G=3D{position:"absolute",visibility:"hidden",display:"block"},K=3DF=3D=3D=
"width"?["Left","Right"]:["Top","Bottom"];function =
I(){L=3DF=3D=3D"width"?H.offsetWidth:H.offsetHeight;if(E=3D=3D=3D"border"=
){return}o.each(K,function(){if(!E){L-=3DparseFloat(o.curCSS(H,"padding"+=
this,true))||0}if(E=3D=3D=3D"margin"){L+=3DparseFloat(o.curCSS(H,"margin"=
+this,true))||0}else{L-=3DparseFloat(o.curCSS(H,"border"+this+"Width",tru=
e))||0}})}if(H.offsetWidth!=3D=3D0){I()}else{o.swap(H,G,I)}return =
Math.max(0,Math.round(L))}return =
o.curCSS(H,F,J)},curCSS:function(I,F,G){var =
L,E=3DI.style;if(F=3D=3D"opacity"&&!o.support.opacity){L=3Do.attr(E,"opac=
ity");return =
L=3D=3D""?"1":L}if(F.match(/float/i)){F=3Dw}if(!G&&E&&E[F]){L=3DE[F]}else=
{if(q.getComputedStyle){if(F.match(/float/i)){F=3D"float"}F=3DF.replace(/=
([A-Z])/g,"-$1").toLowerCase();var =
M=3Dq.getComputedStyle(I,null);if(M){L=3DM.getPropertyValue(F)}if(F=3D=3D=
"opacity"&&L=3D=3D""){L=3D"1"}}else{if(I.currentStyle){var =
J=3DF.replace(/\-(\w)/g,function(N,O){return =
O.toUpperCase()});L=3DI.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?=
$/i.test(L)&&/^\d/.test(L)){var =
H=3DE.left,K=3DI.runtimeStyle.left;I.runtimeStyle.left=3DI.currentStyle.l=
eft;E.left=3DL||0;L=3DE.pixelLeft+"px";E.left=3DH;I.runtimeStyle.left=3DK=
}}}}return L},clean:function(F,K,I){K=3DK||document;if(typeof =
K.createElement=3D=3D=3D"undefined"){K=3DK.ownerDocument||K[0]&&K[0].owne=
rDocument||document}if(!I&&F.length=3D=3D=3D1&&typeof =
F[0]=3D=3D=3D"string"){var =
H=3D/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var=
 =
G=3D[],E=3D[],L=3DK.createElement("div");o.each(F,function(P,S){if(typeof=
 S=3D=3D=3D"number"){S+=3D""}if(!S){return}if(typeof =
S=3D=3D=3D"string"){S=3DS.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){re=
turn =
T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"=
></"+T+">"});var =
O=3DS.replace(/^\s+/,"").substring(0,10).toLowerCase();var =
Q=3D!O.indexOf("<opt")&&[1,"<select =
multiple=3D'multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>"=
,"</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>",=
"</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||=
(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></t=
body></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>=
","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>=
"]||[0,"",""];L.innerHTML=3DQ[1]+S+Q[2];while(Q[0]--){L=3DL.lastChild}if(=
!o.support.tbody){var =
R=3D/<tbody/i.test(S),N=3D!O.indexOf("<table")&&!R?L.firstChild&&L.firstC=
hild.childNodes:Q[1]=3D=3D"<table>"&&!R?L.childNodes:[];for(var =
M=3DN.length-1;M>=3D0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.=
length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespa=
ce&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.=
firstChild)}S=3Do.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=
=3Do.merge(G,S)}});if(I){for(var =
J=3D0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLo=
werCase()=3D=3D=3D"text/javascript")){E.push(G[J].parentNode?G[J].parentN=
ode.removeChild(G[J]):G[J])}else{if(G[J].nodeType=3D=3D=3D1){G.splice.app=
ly(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.=
appendChild(G[J])}}return E}return =
G},attr:function(J,G,K){if(!J||J.nodeType=3D=3D3||J.nodeType=3D=3D8){retu=
rn g}var =
H=3D!o.isXMLDoc(J),L=3DK!=3D=3Dg;G=3DH&&o.props[G]||G;if(J.tagName){var =
F=3D/href|src|style/.test(G);if(G=3D=3D"selected"&&J.parentNode){J.parent=
Node.selectedIndex}if(G in =
J&&H&&!F){if(L){if(G=3D=3D"type"&&o.nodeName(J,"input")&&J.parentNode){th=
row"type property can't be =
changed"}J[G]=3DK}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return =
J.getAttributeNode(G).nodeValue}if(G=3D=3D"tabIndex"){var =
I=3DJ.getAttributeNode("tabIndex");return =
I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|text=
area)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return =
J[G]}if(!o.support.style&&H&&G=3D=3D"style"){return =
o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var =
E=3D!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G)=
;return =
E=3D=3D=3Dnull?g:E}if(!o.support.opacity&&G=3D=3D"opacity"){if(L){J.zoom=3D=
1;J.filter=3D(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=3D=
=3D"NaN"?"":"alpha(opacity=3D"+K*100+")")}return =
J.filter&&J.filter.indexOf("opacity=3D")>=3D0?(parseFloat(J.filter.match(=
/opacity=3D([^)]*)/)[1])/100)+"":""}G=3DG.replace(/-([a-z])/ig,function(M=
,N){return N.toUpperCase()});if(L){J[G]=3DK}return =
J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:=
function(G){var E=3D[];if(G!=3Dnull){var =
F=3DG.length;if(F=3D=3Dnull||typeof =
G=3D=3D=3D"string"||o.isFunction(G)||G.setInterval){E[0]=3DG}else{while(F=
){E[--F]=3DG[F]}}}return E},inArray:function(G,H){for(var =
E=3D0,F=3DH.length;E<F;E++){if(H[E]=3D=3D=3DG){return E}}return =
-1},merge:function(H,E){var =
F=3D0,G,I=3DH.length;if(!o.support.getAll){while((G=3DE[F++])!=3Dnull){if=
(G.nodeType!=3D8){H[I++]=3DG}}}else{while((G=3DE[F++])!=3Dnull){H[I++]=3D=
G}}return H},unique:function(K){var F=3D[],E=3D{};try{for(var =
G=3D0,H=3DK.length;G<H;G++){var =
J=3Do.data(K[G]);if(!E[J]){E[J]=3Dtrue;F.push(K[G])}}}catch(I){F=3DK}retu=
rn F},grep:function(F,J,E){var G=3D[];for(var =
H=3D0,I=3DF.length;H<I;H++){if(!E!=3D!J(F[H],H)){G.push(F[H])}}return =
G},map:function(E,J){var F=3D[];for(var G=3D0,H=3DE.length;G<H;G++){var =
I=3DJ(E[G],G);if(I!=3Dnull){F[F.length]=3DI}}return =
F.concat.apply([],F)}});var =
C=3Dnavigator.userAgent.toLowerCase();o.browser=3D{version:(C.match(/.+(?=
:rv|it|ra|ie)[\/: =
]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),ms=
ie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compati=
ble|webkit)/.test(C)};o.each({parent:function(E){return =
E.parentNode},parents:function(E){return =
o.dir(E,"parentNode")},next:function(E){return =
o.nth(E,2,"nextSibling")},prev:function(E){return =
o.nth(E,2,"previousSibling")},nextAll:function(E){return =
o.dir(E,"nextSibling")},prevAll:function(E){return =
o.dir(E,"previousSibling")},siblings:function(E){return =
o.sibling(E.parentNode.firstChild,E)},children:function(E){return =
o.sibling(E.firstChild)},contents:function(E){return =
o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.make=
Array(E.childNodes)}},function(E,F){o.fn[E]=3Dfunction(G){var =
H=3Do.map(this,F);if(G&&typeof =
G=3D=3D"string"){H=3Do.multiFilter(G,H)}return =
this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"p=
repend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith=
"},function(E,F){o.fn[E]=3Dfunction(G){var J=3D[],L=3Do(G);for(var =
K=3D0,H=3DL.length;K<H;K++){var =
I=3D(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=3DJ.conc=
at(I)}return =
this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"")=
;if(this.nodeType=3D=3D1){this.removeAttribute(E)}},addClass:function(E){=
o.className.add(this,E)},removeClass:function(E){o.className.remove(this,=
E)},toggleClass:function(F,E){if(typeof =
E!=3D=3D"boolean"){E=3D!o.className.has(this,F)}o.className[E?"add":"remo=
ve"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",=
this).add([this]).each(function(){o.event.remove(this);o.removeData(this)=
});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:functio=
n(){o(this).children().remove();while(this.firstChild){this.removeChild(t=
his.firstChild)}}},function(E,F){o.fn[E]=3Dfunction(){return =
this.each(F,arguments)}});function j(E,F){return =
E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var =
h=3D"jQuery"+e(),v=3D0,A=3D{};o.extend({cache:{},data:function(F,E,G){F=3D=
F=3D=3Dl?A:F;var =
H=3DF[h];if(!H){H=3DF[h]=3D++v}if(E&&!o.cache[H]){o.cache[H]=3D{}}if(G!=3D=
=3Dg){o.cache[H][E]=3DG}return =
E?o.cache[H][E]:H},removeData:function(F,E){F=3DF=3D=3Dl?A:F;var =
H=3DF[h];if(E){if(o.cache[H]){delete o.cache[H][E];E=3D"";for(E in =
o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete =
F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete =
o.cache[H]}},queue:function(F,E,H){if(F){E=3D(E||"fx")+"queue";var =
G=3Do.data(F,E);if(!G||o.isArray(H)){G=3Do.data(F,E,o.makeArray(H))}else{=
if(H){G.push(H)}}}return G},dequeue:function(H,G){var =
E=3Do.queue(H,G),F=3DE.shift();if(!G||G=3D=3D=3D"fx"){F=3DE[0]}if(F!=3D=3D=
g){F.call(H)}}});o.fn.extend({data:function(E,G){var =
H=3DE.split(".");H[1]=3DH[1]?"."+H[1]:"";if(G=3D=3D=3Dg){var =
F=3Dthis.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F=3D=3D=3Dg&&this.l=
ength){F=3Do.data(this[0],E)}return =
F=3D=3D=3Dg&&H[1]?this.data(H[0]):F}else{return =
this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G=
)})}},removeData:function(E){return =
this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeo=
f E!=3D=3D"string"){F=3DE;E=3D"fx"}if(F=3D=3D=3Dg){return =
o.queue(this[0],E)}return this.each(function(){var =
G=3Do.queue(this,E,F);if(E=3D=3D"fx"&&G.length=3D=3D1){G[0].call(this)}})=
},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}});=0A=
/*=0A=
 * Sizzle CSS Selector Engine - v0.9.3=0A=
 *  Copyright 2009, The Dojo Foundation=0A=
 *  Released under the MIT, BSD, and GPL Licenses.=0A=
 *  More information: http://sizzlejs.com/=0A=
 */=0A=
(function(){var =
R=3D/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]=
'"]+)+\]|\\.|[^ =
>+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=3D0,H=3DObject.prototype.toString;var =
F=3Dfunction(Y,U,ab,ac){ab=3Dab||[];U=3DU||document;if(U.nodeType!=3D=3D1=
&&U.nodeType!=3D=3D9){return[]}if(!Y||typeof Y!=3D=3D"string"){return =
ab}var =
Z=3D[],W,af,ai,T,ad,V,X=3Dtrue;R.lastIndex=3D0;while((W=3DR.exec(Y))!=3D=3D=
null){Z.push(W[1]);if(W[2]){V=3DRegExp.rightContext;break}}if(Z.length>1&=
&M.exec(Y)){if(Z.length=3D=3D=3D2&&I.relative[Z[0]]){af=3DJ(Z[0]+Z[1],U)}=
else{af=3DI.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=3DZ.shift=
();if(I.relative[Y]){Y+=3DZ.shift()}af=3DJ(Y,af)}}}else{var =
ae=3Dac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length=3D=3D=3D1&&U.par=
entNode?U.parentNode:U,Q(U));af=3DF.filter(ae.expr,ae.set);if(Z.length>0)=
{ai=3DE(af)}else{X=3Dfalse}while(Z.length){var =
ah=3DZ.pop(),ag=3Dah;if(!I.relative[ah]){ah=3D""}else{ag=3DZ.pop()}if(ag=3D=
=3Dnull){ag=3DU}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=3Daf}if(!ai){throw=
"Syntax error, unrecognized expression: =
"+(ah||Y)}if(H.call(ai)=3D=3D=3D"[object =
Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType=3D=3D=3D1){for(va=
r =
aa=3D0;ai[aa]!=3Dnull;aa++){if(ai[aa]&&(ai[aa]=3D=3D=3Dtrue||ai[aa].nodeT=
ype=3D=3D=3D1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var =
aa=3D0;ai[aa]!=3Dnull;aa++){if(ai[aa]&&ai[aa].nodeType=3D=3D=3D1){ab.push=
(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=3Dfalse;=
ab.sort(G);if(hasDuplicate){for(var =
aa=3D1;aa<ab.length;aa++){if(ab[aa]=3D=3D=3Dab[aa-1]){ab.splice(aa--,1)}}=
}}}return ab};F.matches=3Dfunction(T,U){return =
F(T,null,null,U)};F.find=3Dfunction(aa,T,ab){var =
Z,X;if(!aa){return[]}for(var W=3D0,V=3DI.order.length;W<V;W++){var =
Y=3DI.order[W],X;if((X=3DI.match[Y].exec(aa))){var =
U=3DRegExp.leftContext;if(U.substr(U.length-1)!=3D=3D"\\"){X[1]=3D(X[1]||=
"").replace(/\\/g,"");Z=3DI.find[Y](X,T,ab);if(Z!=3Dnull){aa=3Daa.replace=
(I.match[Y],"");break}}}}if(!Z){Z=3DT.getElementsByTagName("*")}return{se=
t:Z,expr:aa}};F.filter=3Dfunction(ad,ac,ag,W){var =
V=3Dad,ai=3D[],aa=3Dac,Y,T,Z=3Dac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){f=
or(var ab in I.filter){if((Y=3DI.match[ab].exec(ad))!=3Dnull){var =
U=3DI.filter[ab],ah,af;T=3Dfalse;if(aa=3D=3Dai){ai=3D[]}if(I.preFilter[ab=
]){Y=3DI.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=3Dah=3Dtrue}else{if(Y=3D=3D=
=3Dtrue){continue}}}if(Y){for(var =
X=3D0;(af=3Daa[X])!=3Dnull;X++){if(af){ah=3DU(af,Y,X,aa);var =
ae=3DW^!!ah;if(ag&&ah!=3Dnull){if(ae){T=3Dtrue}else{aa[X]=3Dfalse}}else{i=
f(ae){ai.push(af);T=3Dtrue}}}}}if(ah!=3D=3Dg){if(!ag){aa=3Dai}ad=3Dad.rep=
lace(I.match[ab],"");if(!T){return[]}break}}}if(ad=3D=3DV){if(T=3D=3Dnull=
){throw"Syntax error, unrecognized expression: =
"+ad}else{break}}V=3Dad}return aa};var =
I=3DF.selectors=3D{order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\u=
FFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=3D[=
'"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFF=
F_-]|\\.)+)\s*(?:(\S?=3D)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\u=
FFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+=
-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=3D[^-]=
|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^=
\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHan=
dle:{href:function(T){return =
T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=3Dtypeof =
T=3D=3D=3D"string",ab=3DX&&!/\W/.test(T),Y=3DX&&!ab;if(ab&&!Z){T=3DT.toUp=
perCase()}for(var =
W=3D0,V=3Daa.length,U;W<V;W++){if((U=3Daa[W])){while((U=3DU.previousSibli=
ng)&&U.nodeType!=3D=3D1){}aa[W]=3DY||U&&U.nodeName=3D=3D=3DT?U||false:U=3D=
=3D=3DT}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=3Dtypeof =
U=3D=3D=3D"string";if(X&&!/\W/.test(U)){U=3Daa?U:U.toUpperCase();for(var =
V=3D0,T=3DZ.length;V<T;V++){var Y=3DZ[V];if(Y){var =
W=3DY.parentNode;Z[V]=3DW.nodeName=3D=3D=3DU?W:false}}}else{for(var =
V=3D0,T=3DZ.length;V<T;V++){var =
Y=3DZ[V];if(Y){Z[V]=3DX?Y.parentNode:Y.parentNode=3D=3D=3DU}}if(X){F.filt=
er(U,Z,true)}}},"":function(W,U,Y){var =
V=3DL++,T=3DS;if(!U.match(/\W/)){var =
X=3DU=3DY?U:U.toUpperCase();T=3DP}T("parentNode",U,V,W,X,Y)},"~":function=
(W,U,Y){var V=3DL++,T=3DS;if(typeof =
U=3D=3D=3D"string"&&!U.match(/\W/)){var =
X=3DU=3DY?U:U.toUpperCase();T=3DP}T("previousSibling",U,V,W,X,Y)}},find:{=
ID:function(U,V,W){if(typeof V.getElementById!=3D=3D"undefined"&&!W){var =
T=3DV.getElementById(U[1]);return =
T?[T]:[]}},NAME:function(V,Y,Z){if(typeof =
Y.getElementsByName!=3D=3D"undefined"){var =
U=3D[],X=3DY.getElementsByName(V[1]);for(var =
W=3D0,T=3DX.length;W<T;W++){if(X[W].getAttribute("name")=3D=3D=3DV[1]){U.=
push(X[W])}}return U.length=3D=3D=3D0?null:U}},TAG:function(T,U){return =
U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=3D=
" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var =
X=3D0,Y;(Y=3DU[X])!=3Dnull;X++){if(Y){if(Z^(Y.className&&(" =
"+Y.className+" =
").indexOf(W)>=3D0)){if(!V){T.push(Y)}}else{if(V){U[X]=3Dfalse}}}}return =
false},ID:function(T){return =
T[1].replace(/\\/g,"")},TAG:function(U,T){for(var =
V=3D0;T[V]=3D=3D=3Dfalse;V++){}return =
T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=3D=3D"nt=
h"){var =
U=3D/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=3D=3D"even"&&"2n"||T[2]=3D=3D"od=
d"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=3D(U[1]+(U[2]||1))-0=
;T[3]=3DU[3]-0}T[0]=3DL++;return T},ATTR:function(X,U,V,T,Y,Z){var =
W=3DX[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=3DI.attrMap[W]}if(X[=
2]=3D=3D=3D"~=3D"){X[4]=3D" "+X[4]+" "}return =
X},PSEUDO:function(X,U,V,T,Y){if(X[1]=3D=3D=3D"not"){if(X[3].match(R).len=
gth>1||/^\w/.test(X[3])){X[3]=3DF(X[3],null,null,U)}else{var =
W=3DF.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return =
false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return =
true}}return X},POS:function(T){T.unshift(true);return =
T}},filters:{enabled:function(T){return =
T.disabled=3D=3D=3Dfalse&&T.type!=3D=3D"hidden"},disabled:function(T){ret=
urn T.disabled=3D=3D=3Dtrue},checked:function(T){return =
T.checked=3D=3D=3Dtrue},selected:function(T){T.parentNode.selectedIndex;r=
eturn T.selected=3D=3D=3Dtrue},parent:function(T){return =
!!T.firstChild},empty:function(T){return =
!T.firstChild},has:function(V,U,T){return =
!!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},tex=
t:function(T){return"text"=3D=3D=3DT.type},radio:function(T){return"radio=
"=3D=3D=3DT.type},checkbox:function(T){return"checkbox"=3D=3D=3DT.type},f=
ile:function(T){return"file"=3D=3D=3DT.type},password:function(T){return"=
password"=3D=3D=3DT.type},submit:function(T){return"submit"=3D=3D=3DT.typ=
e},image:function(T){return"image"=3D=3D=3DT.type},reset:function(T){retu=
rn"reset"=3D=3D=3DT.type},button:function(T){return"button"=3D=3D=3DT.typ=
e||T.nodeName.toUpperCase()=3D=3D=3D"BUTTON"},input:function(T){return/in=
put|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:functio=
n(U,T){return T=3D=3D=3D0},last:function(V,U,T,W){return =
U=3D=3D=3DW.length-1},even:function(U,T){return =
T%2=3D=3D=3D0},odd:function(U,T){return =
T%2=3D=3D=3D1},lt:function(V,U,T){return =
U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return =
T[3]-0=3D=3DU},eq:function(V,U,T){return =
T[3]-0=3D=3DU}},filter:{PSEUDO:function(Z,V,W,aa){var =
U=3DV[1],X=3DI.filters[U];if(X){return =
X(Z,W,V,aa)}else{if(U=3D=3D=3D"contains"){return(Z.textContent||Z.innerTe=
xt||"").indexOf(V[3])>=3D0}else{if(U=3D=3D=3D"not"){var Y=3DV[3];for(var =
W=3D0,T=3DY.length;W<T;W++){if(Y[W]=3D=3D=3DZ){return false}}return =
true}}}},CHILD:function(T,W){var =
Z=3DW[1],U=3DT;switch(Z){case"only":case"first":while(U=3DU.previousSibli=
ng){if(U.nodeType=3D=3D=3D1){return false}}if(Z=3D=3D"first"){return =
true}U=3DT;case"last":while(U=3DU.nextSibling){if(U.nodeType=3D=3D=3D1){r=
eturn false}}return true;case"nth":var =
V=3DW[2],ac=3DW[3];if(V=3D=3D1&&ac=3D=3D0){return true}var =
Y=3DW[0],ab=3DT.parentNode;if(ab&&(ab.sizcache!=3D=3DY||!T.nodeIndex)){va=
r =
X=3D0;for(U=3Dab.firstChild;U;U=3DU.nextSibling){if(U.nodeType=3D=3D=3D1)=
{U.nodeIndex=3D++X}}ab.sizcache=3DY}var =
aa=3DT.nodeIndex-ac;if(V=3D=3D0){return =
aa=3D=3D0}else{return(aa%V=3D=3D0&&aa/V>=3D0)}}},ID:function(U,T){return =
U.nodeType=3D=3D=3D1&&U.getAttribute("id")=3D=3D=3DT},TAG:function(U,T){r=
eturn(T=3D=3D=3D"*"&&U.nodeType=3D=3D=3D1)||U.nodeName=3D=3D=3DT},CLASS:f=
unction(U,T){return(" "+(U.className||U.getAttribute("class"))+" =
").indexOf(T)>-1},ATTR:function(Y,W){var =
V=3DW[1],T=3DI.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=3Dnull?Y[V]:Y.getAt=
tribute(V),Z=3DT+"",X=3DW[2],U=3DW[4];return =
T=3D=3Dnull?X=3D=3D=3D"!=3D":X=3D=3D=3D"=3D"?Z=3D=3D=3DU:X=3D=3D=3D"*=3D"=
?Z.indexOf(U)>=3D0:X=3D=3D=3D"~=3D"?(" "+Z+" =
").indexOf(U)>=3D0:!U?Z&&T!=3D=3Dfalse:X=3D=3D=3D"!=3D"?Z!=3DU:X=3D=3D=3D=
"^=3D"?Z.indexOf(U)=3D=3D=3D0:X=3D=3D=3D"$=3D"?Z.substr(Z.length-U.length=
)=3D=3D=3DU:X=3D=3D=3D"|=3D"?Z=3D=3D=3DU||Z.substr(0,U.length+1)=3D=3D=3D=
U+"-":false},POS:function(X,U,V,Y){var =
T=3DU[2],W=3DI.setFilters[T];if(W){return W(X,V,U,Y)}}}};var =
M=3DI.match.POS;for(var O in =
I.match){I.match[O]=3DRegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/=
.source)}var =
E=3Dfunction(U,T){U=3DArray.prototype.slice.call(U);if(T){T.push.apply(T,=
U);return T}return =
U};try{Array.prototype.slice.call(document.documentElement.childNodes)}ca=
tch(N){E=3Dfunction(X,W){var U=3DW||[];if(H.call(X)=3D=3D=3D"[object =
Array]"){Array.prototype.push.apply(U,X)}else{if(typeof =
X.length=3D=3D=3D"number"){for(var =
V=3D0,T=3DX.length;V<T;V++){U.push(X[V])}}else{for(var =
V=3D0;X[V];V++){U.push(X[V])}}}return U}}var =
G;if(document.documentElement.compareDocumentPosition){G=3Dfunction(U,T){=
var =
V=3DU.compareDocumentPosition(T)&4?-1:U=3D=3D=3DT?0:1;if(V=3D=3D=3D0){has=
Duplicate=3Dtrue}return V}}else{if("sourceIndex" in =
document.documentElement){G=3Dfunction(U,T){var =
V=3DU.sourceIndex-T.sourceIndex;if(V=3D=3D=3D0){hasDuplicate=3Dtrue}retur=
n V}}else{if(document.createRange){G=3Dfunction(W,U){var =
V=3DW.ownerDocument.createRange(),T=3DU.ownerDocument.createRange();V.sel=
ectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var =
X=3DV.compareBoundaryPoints(Range.START_TO_END,T);if(X=3D=3D=3D0){hasDupl=
icate=3Dtrue}return X}}}}(function(){var =
U=3Ddocument.createElement("form"),V=3D"script"+(new =
Date).getTime();U.innerHTML=3D"<input name=3D'"+V+"'/>";var =
T=3Ddocument.documentElement;T.insertBefore(U,T.firstChild);if(!!document=
.getElementById(V)){I.find.ID=3Dfunction(X,Y,Z){if(typeof =
Y.getElementById!=3D=3D"undefined"&&!Z){var =
W=3DY.getElementById(X[1]);return W?W.id=3D=3D=3DX[1]||typeof =
W.getAttributeNode!=3D=3D"undefined"&&W.getAttributeNode("id").nodeValue=3D=
=3D=3DX[1]?[W]:g:[]}};I.filter.ID=3Dfunction(Y,W){var X=3Dtypeof =
Y.getAttributeNode!=3D=3D"undefined"&&Y.getAttributeNode("id");return =
Y.nodeType=3D=3D=3D1&&X&&X.nodeValue=3D=3D=3DW}}T.removeChild(U)})();(fun=
ction(){var =
T=3Ddocument.createElement("div");T.appendChild(document.createComment(""=
));if(T.getElementsByTagName("*").length>0){I.find.TAG=3Dfunction(U,Y){va=
r X=3DY.getElementsByTagName(U[1]);if(U[1]=3D=3D=3D"*"){var =
W=3D[];for(var =
V=3D0;X[V];V++){if(X[V].nodeType=3D=3D=3D1){W.push(X[V])}}X=3DW}return =
X}}T.innerHTML=3D"<a href=3D'#'></a>";if(T.firstChild&&typeof =
T.firstChild.getAttribute!=3D=3D"undefined"&&T.firstChild.getAttribute("h=
ref")!=3D=3D"#"){I.attrHandle.href=3Dfunction(U){return =
U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){=
var T=3DF,U=3Ddocument.createElement("div");U.innerHTML=3D"<p =
class=3D'TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").l=
ength=3D=3D=3D0){return}F=3Dfunction(Y,X,V,W){X=3DX||document;if(!W&&X.no=
deType=3D=3D=3D9&&!Q(X)){try{return =
E(X.querySelectorAll(Y),V)}catch(Z){}}return =
T(Y,X,V,W)};F.find=3DT.find;F.filter=3DT.filter;F.selectors=3DT.selectors=
;F.matches=3DT.matches})()}if(document.getElementsByClassName&&document.d=
ocumentElement.getElementsByClassName){(function(){var =
T=3Ddocument.createElement("div");T.innerHTML=3D"<div class=3D'test =
e'></div><div =
class=3D'test'></div>";if(T.getElementsByClassName("e").length=3D=3D=3D0)=
{return}T.lastChild.className=3D"e";if(T.getElementsByClassName("e").leng=
th=3D=3D=3D1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=3Dfunction(=
U,V,W){if(typeof V.getElementsByClassName!=3D=3D"undefined"&&!W){return =
V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var =
ab=3DU=3D=3D"previousSibling"&&!ac;for(var =
W=3D0,V=3Dad.length;W<V;W++){var =
T=3Dad[W];if(T){if(ab&&T.nodeType=3D=3D=3D1){T.sizcache=3DY;T.sizset=3DW}=
T=3DT[U];var =
X=3Dfalse;while(T){if(T.sizcache=3D=3D=3DY){X=3Dad[T.sizset];break}if(T.n=
odeType=3D=3D=3D1&&!ac){T.sizcache=3DY;T.sizset=3DW}if(T.nodeName=3D=3D=3D=
Z){X=3DT;break}T=3DT[U]}ad[W]=3DX}}}function S(U,Z,Y,ad,aa,ac){var =
ab=3DU=3D=3D"previousSibling"&&!ac;for(var =
W=3D0,V=3Dad.length;W<V;W++){var =
T=3Dad[W];if(T){if(ab&&T.nodeType=3D=3D=3D1){T.sizcache=3DY;T.sizset=3DW}=
T=3DT[U];var =
X=3Dfalse;while(T){if(T.sizcache=3D=3D=3DY){X=3Dad[T.sizset];break}if(T.n=
odeType=3D=3D=3D1){if(!ac){T.sizcache=3DY;T.sizset=3DW}if(typeof =
Z!=3D=3D"string"){if(T=3D=3D=3DZ){X=3Dtrue;break}}else{if(F.filter(Z,[T])=
.length>0){X=3DT;break}}}T=3DT[U]}ad[W]=3DX}}}var =
K=3Ddocument.compareDocumentPosition?function(U,T){return =
U.compareDocumentPosition(T)&16}:function(U,T){return =
U!=3D=3DT&&(U.contains?U.contains(T):true)};var Q=3Dfunction(T){return =
T.nodeType=3D=3D=3D9&&T.documentElement.nodeName!=3D=3D"HTML"||!!T.ownerD=
ocument&&Q(T.ownerDocument)};var J=3Dfunction(T,aa){var =
W=3D[],X=3D"",Y,V=3Daa.nodeType?[aa]:aa;while((Y=3DI.match.PSEUDO.exec(T)=
)){X+=3DY[0];T=3DT.replace(I.match.PSEUDO,"")}T=3DI.relative[T]?T+"*":T;f=
or(var Z=3D0,U=3DV.length;Z<U;Z++){F(T,V[Z],W)}return =
F.filter(X,W)};o.find=3DF;o.filter=3DF.filter;o.expr=3DF.selectors;o.expr=
[":"]=3Do.expr.filters;F.selectors.filters.hidden=3Dfunction(T){return =
T.offsetWidth=3D=3D=3D0||T.offsetHeight=3D=3D=3D0};F.selectors.filters.vi=
sible=3Dfunction(T){return =
T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=3Dfunctio=
n(T){return o.grep(o.timers,function(U){return =
T=3D=3D=3DU.elem}).length};o.multiFilter=3Dfunction(V,T,U){if(U){V=3D":no=
t("+V+")"}return F.matches(V,T)};o.dir=3Dfunction(V,U){var =
T=3D[],W=3DV[U];while(W&&W!=3Ddocument){if(W.nodeType=3D=3D1){T.push(W)}W=
=3DW[U]}return T};o.nth=3Dfunction(X,T,V,W){T=3DT||1;var =
U=3D0;for(;X;X=3DX[V]){if(X.nodeType=3D=3D1&&++U=3D=3DT){break}}return =
X};o.sibling=3Dfunction(V,U){var =
T=3D[];for(;V;V=3DV.nextSibling){if(V.nodeType=3D=3D1&&V!=3DU){T.push(V)}=
}return =
T};return;l.Sizzle=3DF})();o.event=3D{add:function(I,F,H,K){if(I.nodeType=
=3D=3D3||I.nodeType=3D=3D8){return}if(I.setInterval&&I!=3Dl){I=3Dl}if(!H.=
guid){H.guid=3Dthis.guid++}if(K!=3D=3Dg){var =
G=3DH;H=3Dthis.proxy(G);H.data=3DK}var =
E=3Do.data(I,"events")||o.data(I,"events",{}),J=3Do.data(I,"handle")||o.d=
ata(I,"handle",function(){return typeof =
o!=3D=3D"undefined"&&!o.event.triggered?o.event.handle.apply(arguments.ca=
llee.elem,arguments):g});J.elem=3DI;o.each(F.split(/\s+/),function(M,N){v=
ar =
O=3DN.split(".");N=3DO.shift();H.type=3DO.slice().sort().join(".");var =
L=3DE[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O=
)}if(!L){L=3DE[N]=3D{};if(!o.event.special[N]||o.event.special[N].setup.c=
all(I,K,O)=3D=3D=3Dfalse){if(I.addEventListener){I.addEventListener(N,J,f=
alse)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=3DH;o.e=
vent.global[N]=3Dtrue});I=3Dnull},guid:1,global:{},remove:function(K,H,J)=
{if(K.nodeType=3D=3D3||K.nodeType=3D=3D8){return}var =
G=3Do.data(K,"events"),F,E;if(G){if(H=3D=3D=3Dg||(typeof =
H=3D=3D=3D"string"&&H.charAt(0)=3D=3D".")){for(var I in =
G){this.remove(K,I+(H||""))}}else{if(H.type){J=3DH.handler;H=3DH.type}o.e=
ach(H.split(/\s+/),function(M,O){var Q=3DO.split(".");O=3DQ.shift();var =
N=3DRegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){i=
f(J){delete G[O][J.guid]}else{for(var P in =
G[O]){if(N.test(G[O][P].type)){delete =
G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K=
,Q)}for(F in =
G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.ca=
ll(K,Q)=3D=3D=3Dfalse){if(K.removeEventListener){K.removeEventListener(O,=
o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.d=
ata(K,"handle"))}}}F=3Dnull;delete G[O]}}})}for(F in G){break}if(!F){var =
L=3Do.data(K,"handle");if(L){L.elem=3Dnull}o.removeData(K,"events");o.rem=
oveData(K,"handle")}}},trigger:function(I,K,H,E){var =
G=3DI.type||I;if(!E){I=3Dtypeof =
I=3D=3D=3D"object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf(=
"!")>=3D0){I.type=3DG=3DG.slice(0,-1);I.exclusive=3Dtrue}if(!H){I.stopPro=
pagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&t=
his.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeTyp=
e=3D=3D3||H.nodeType=3D=3D8){return =
g}I.result=3Dg;I.target=3DH;K=3Do.makeArray(K);K.unshift(I)}I.currentTarg=
et=3DH;var =
J=3Do.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&=
G=3D=3D"click"))&&H["on"+G]&&H["on"+G].apply(H,K)=3D=3D=3Dfalse){I.result=
=3Dfalse}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=3D=3D=
"click")){this.triggered=3Dtrue;try{H[G]()}catch(L){}}this.triggered=3Dfa=
lse;if(!I.isPropagationStopped()){var =
F=3DH.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},ha=
ndle:function(K){var =
J,E;K=3Darguments[0]=3Do.event.fix(K||l.event);K.currentTarget=3Dthis;var=
 =
L=3DK.type.split(".");K.type=3DL.shift();J=3D!L.length&&!K.exclusive;var =
I=3DRegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=3D(o.dat=
a(this,"events")||{})[K.type];for(var G in E){var =
H=3DE[G];if(J||I.test(H.type)){K.handler=3DH;K.data=3DH.data;var =
F=3DH.apply(this,arguments);if(F!=3D=3Dg){K.result=3DF;if(F=3D=3D=3Dfalse=
){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStop=
ped()){break}}}},props:"altKey attrChange attrName bubbles button =
cancelable charCode clientX clientY ctrlKey currentTarget data detail =
eventPhase fromElement handler keyCode metaKey newValue originalTarget =
pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey =
srcElement target toElement view wheelDelta which".split(" =
"),fix:function(H){if(H[h]){return H}var F=3DH;H=3Do.Event(F);for(var =
G=3Dthis.props.length,J;G;){J=3Dthis.props[--G];H[J]=3DF[J]}if(!H.target)=
{H.target=3DH.srcElement||document}if(H.target.nodeType=3D=3D3){H.target=3D=
H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=3D=
H.fromElement=3D=3DH.target?H.toElement:H.fromElement}if(H.pageX=3D=3Dnul=
l&&H.clientX!=3Dnull){var =
I=3Ddocument.documentElement,E=3Ddocument.body;H.pageX=3DH.clientX+(I&&I.=
scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=3DH.clientY+(I&=
&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCo=
de||H.charCode=3D=3D=3D0)?H.charCode:H.keyCode)){H.which=3DH.charCode||H.=
keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=3DH.ctrlKey}if(!H.which&&H.bu=
tton){H.which=3D(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return =
H},proxy:function(F,E){E=3DE||function(){return =
F.apply(this,arguments)};E.guid=3DF.guid=3DF.guid||E.guid||this.guid++;re=
turn =
E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setu=
p:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.lengt=
h){var =
E=3D0,F=3DRegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").=
live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(=
this,G[0],c)}}}}}};o.Event=3Dfunction(E){if(!this.preventDefault){return =
new =
o.Event(E)}if(E&&E.type){this.originalEvent=3DE;this.type=3DE.type}else{t=
his.type=3DE}this.timeStamp=3De();this[h]=3Dtrue};function k(){return =
false}function u(){return =
true}o.Event.prototype=3D{preventDefault:function(){this.isDefaultPrevent=
ed=3Du;var =
E=3Dthis.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefaul=
t()}E.returnValue=3Dfalse},stopPropagation:function(){this.isPropagationS=
topped=3Du;var =
E=3Dthis.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagat=
ion()}E.cancelBubble=3Dtrue},stopImmediatePropagation:function(){this.isI=
mmediatePropagationStopped=3Du;this.stopPropagation()},isDefaultPrevented=
:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var =
a=3Dfunction(F){var =
E=3DF.relatedTarget;while(E&&E!=3Dthis){try{E=3DE.parentNode}catch(G){E=3D=
this}}if(E!=3Dthis){F.type=3DF.data;o.event.handle.apply(this,arguments)}=
};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.e=
vent.special[E]=3D{setup:function(){o.event.add(this,F,a,E)},teardown:fun=
ction(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){re=
turn =
F=3D=3D"unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E=
||G,E&&G)})},one:function(G,H,F){var =
E=3Do.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply=
(this,arguments)});return =
this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){r=
eturn =
this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){re=
turn =
this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function=
(E,G){if(this[0]){var =
F=3Do.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G=
,this[0]);return F.result}},toggle:function(G){var =
E=3Darguments,F=3D1;while(F<E.length){o.event.proxy(G,E[F++])}return =
this.click(o.event.proxy(G,function(H){this.lastToggle=3D(this.lastToggle=
||0)%F;H.preventDefault();return =
E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F)=
{return =
this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.c=
all(document,o)}else{o.readyList.push(E)}return =
this},live:function(G,F){var =
E=3Do.event.proxy(F);E.guid+=3Dthis.selector+G;o(document).bind(i(G,this.=
selector),this.selector,E);return =
this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.g=
uid+this.selector+F}:null);return this}});function c(H){var =
E=3DRegExp("(^|\\.)"+H.type+"(\\.|$)"),G=3Dtrue,F=3D[];o.each(o.data(this=
,"events").live||[],function(I,J){if(E.test(J.type)){var =
K=3Do(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort=
(function(J,I){return =
o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){i=
f(this.fn.call(this.elem,H,this.fn.data)=3D=3D=3Dfalse){return(G=3Dfalse)=
}});return G}function =
i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ =
/g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){=
if(!o.isReady){o.isReady=3Dtrue;if(o.readyList){o.each(o.readyList,functi=
on(){this.call(document,o)});o.readyList=3Dnull}o(document).triggerHandle=
r("ready")}}});var x=3Dfalse;function =
B(){if(x){return}x=3Dtrue;if(document.addEventListener){document.addEvent=
Listener("DOMContentLoaded",function(){document.removeEventListener("DOMC=
ontentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.=
attachEvent){document.attachEvent("onreadystatechange",function(){if(docu=
ment.readyState=3D=3D=3D"complete"){document.detachEvent("onreadystatecha=
nge",arguments.callee);o.ready()}});if(document.documentElement.doScroll&=
&l=3D=3Dl.top){(function(){if(o.isReady){return}try{document.documentElem=
ent.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.rea=
dy()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,=
scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseo=
ut,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,erro=
r").split(","),function(F,E){o.fn[E]=3Dfunction(G){return =
G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var=
 E in =
o.cache){if(E!=3D1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.e=
lem)}}});(function(){o.support=3D{};var =
F=3Ddocument.documentElement,G=3Ddocument.createElement("script"),K=3Ddoc=
ument.createElement("div"),J=3D"script"+(new =
Date).getTime();K.style.display=3D"none";K.innerHTML=3D'   =
<link/><table></table><a href=3D"/a" =
style=3D"color:red;float:left;opacity:.5;">a</a><select><option>text</opt=
ion></select><object><param/></object>';var =
H=3DK.getElementsByTagName("*"),E=3DK.getElementsByTagName("a")[0];if(!H|=
|!H.length||!E){return}o.support=3D{leadingWhitespace:K.firstChild.nodeTy=
pe=3D=3D3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.get=
ElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSeria=
lize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttrib=
ute("style")),hrefNormalized:E.getAttribute("href")=3D=3D=3D"/a",opacity:=
E.style.opacity=3D=3D=3D"0.5",cssFloat:!!E.style.cssFloat,scriptEval:fals=
e,noCloneEvent:true,boxModel:null};G.type=3D"text/javascript";try{G.appen=
dChild(document.createTextNode("window."+J+"=3D1;"))}catch(I){}F.insertBe=
fore(G,F.firstChild);if(l[J]){o.support.scriptEval=3Dtrue;delete =
l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("oncli=
ck",function(){o.support.noCloneEvent=3Dfalse;K.detachEvent("onclick",arg=
uments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var =
L=3Ddocument.createElement("div");L.style.width=3DL.style.paddingLeft=3D"=
1px";document.body.appendChild(L);o.boxModel=3Do.support.boxModel=3DL.off=
setWidth=3D=3D=3D2;document.body.removeChild(L).style.display=3D"none"})}=
)();var =
w=3Do.support.cssFloat?"cssFloat":"styleFloat";o.props=3D{"for":"htmlFor"=
,"class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly=
",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabin=
dex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(type=
of G!=3D=3D"string"){return this._load(G)}var I=3DG.indexOf(" =
");if(I>=3D0){var E=3DG.slice(I,G.length);G=3DG.slice(0,I)}var =
H=3D"GET";if(J){if(o.isFunction(J)){K=3DJ;J=3Dnull}else{if(typeof =
J=3D=3D=3D"object"){J=3Do.param(J);H=3D"POST"}}}var =
F=3Dthis;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,=
L){if(L=3D=3D"success"||L=3D=3D"notmodified"){F.html(E?o("<div/>").append=
(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.respon=
seText)}if(K){F.each(K,[M.responseText,L,M])}}});return =
this},serialize:function(){return =
o.param(this.serializeArray())},serializeArray:function(){return =
this.map(function(){return =
this.elements?o.makeArray(this.elements):this}).filter(function(){return =
this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.no=
deName)||/text|hidden|password|search/i.test(this.type))}).map(function(E=
,F){var G=3Do(this).val();return =
G=3D=3Dnull?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,va=
lue:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajax=
Complete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=
=3Dfunction(G){return this.bind(F,G)}});var =
r=3De();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=3DG;G=3Dnul=
l}return =
o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:functio=
n(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return =
o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=3DG;G=3D=
{}}return =
o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:functi=
on(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:=
true,type:"GET",contentType:"application/x-www-form-urlencoded",processDa=
ta:true,async:true,xhr:function(){return l.ActiveXObject?new =
ActiveXObject("Microsoft.XMLHTTP"):new =
XMLHttpRequest()},accepts:{xml:"application/xml, =
text/xml",html:"text/html",script:"text/javascript, =
application/javascript",json:"application/json, =
text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:=
function(M){M=3Do.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var =
W,F=3D/=3D\?(&|$)/g,R,V,G=3DM.type.toUpperCase();if(M.data&&M.processData=
&&typeof =
M.data!=3D=3D"string"){M.data=3Do.param(M.data)}if(M.dataType=3D=3D"jsonp=
"){if(G=3D=3D"GET"){if(!M.url.match(F)){M.url+=3D(M.url.match(/\?/)?"&":"=
?")+(M.jsonp||"callback")+"=3D?"}}else{if(!M.data||!M.data.match(F)){M.da=
ta=3D(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=3D?"}}M.dataType=3D"j=
son"}if(M.dataType=3D=3D"json"&&(M.data&&M.data.match(F)||M.url.match(F))=
){W=3D"jsonp"+r++;if(M.data){M.data=3D(M.data+"").replace(F,"=3D"+W+"$1")=
}M.url=3DM.url.replace(F,"=3D"+W+"$1");M.dataType=3D"script";l[W]=3Dfunct=
ion(X){V=3DX;I();L();l[W]=3Dg;try{delete =
l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=3D=3D"script"&&M.ca=
che=3D=3Dnull){M.cache=3Dfalse}if(M.cache=3D=3D=3Dfalse&&G=3D=3D"GET"){va=
r E=3De();var =
U=3DM.url.replace(/(\?|&)_=3D.*?(&|$)/,"$1_=3D"+E+"$2");M.url=3DU+((U=3D=3D=
M.url)?(M.url.match(/\?/)?"&":"?")+"_=3D"+E:"")}if(M.data&&G=3D=3D"GET"){=
M.url+=3D(M.url.match(/\?/)?"&":"?")+M.data;M.data=3Dnull}if(M.global&&!o=
.active++){o.event.trigger("ajaxStart")}var =
Q=3D/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=3D=3D"script"&&G=3D=
=3D"GET"&&Q&&(Q[1]&&Q[1]!=3Dlocation.protocol||Q[2]!=3Dlocation.host)){va=
r H=3Ddocument.getElementsByTagName("head")[0];var =
T=3Ddocument.createElement("script");T.src=3DM.url;if(M.scriptCharset){T.=
charset=3DM.scriptCharset}if(!W){var =
O=3Dfalse;T.onload=3DT.onreadystatechange=3Dfunction(){if(!O&&(!this.read=
yState||this.readyState=3D=3D"loaded"||this.readyState=3D=3D"complete")){=
O=3Dtrue;I();L();T.onload=3DT.onreadystatechange=3Dnull;H.removeChild(T)}=
}}H.appendChild(T);return g}var K=3Dfalse;var =
J=3DM.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}=
else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-T=
ype",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Sinc=
e",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 =
GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setReques=
tHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+=
", =
*/*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)=3D=3D=
=3Dfalse){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort()=
;return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var =
N=3Dfunction(X){if(J.readyState=3D=3D0){if(P){clearInterval(P);P=3Dnull;i=
f(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.=
readyState=3D=3D4||X=3D=3D"timeout")){K=3Dtrue;if(P){clearInterval(P);P=3D=
null}R=3DX=3D=3D"timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModifie=
d&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=3D=3D"success"=
){try{V=3Do.httpData(J,M.dataType,M)}catch(Z){R=3D"parsererror"}}if(R=3D=3D=
"success"){var =
Y;try{Y=3DJ.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&=
&Y){o.lastModified[M.url]=3DY}if(!W){I()}}else{o.handleError(M,J,R)}L();i=
f(X){J.abort()}if(M.async){J=3Dnull}}}};if(M.async){var =
P=3DsetInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("=
timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,nul=
l,S)}if(!M.async){N()}function =
I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSucces=
s",[J,M])}}function =
L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComp=
lete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}retur=
n =
J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){=
o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){t=
ry{return =
!F.status&&location.protocol=3D=3D"file:"||(F.status>=3D200&&F.status<300=
)||F.status=3D=3D304||F.status=3D=3D1223}catch(E){}return =
false},httpNotModified:function(G,E){try{var =
H=3DG.getResponseHeader("Last-Modified");return =
G.status=3D=3D304||H=3D=3Do.lastModified[E]}catch(F){}return =
false},httpData:function(J,H,G){var =
F=3DJ.getResponseHeader("content-type"),E=3DH=3D=3D"xml"||!H&&F&&F.indexO=
f("xml")>=3D0,I=3DE?J.responseXML:J.responseText;if(E&&I.documentElement.=
tagName=3D=3D"parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=3DG.=
dataFilter(I,H)}if(typeof =
I=3D=3D=3D"string"){if(H=3D=3D"script"){o.globalEval(I)}if(H=3D=3D"json")=
{I=3Dl["eval"]("("+I+")")}}return I},param:function(E){var =
G=3D[];function =
H(I,J){G[G.length]=3DencodeURIComponent(I)+"=3D"+encodeURIComponent(J)}if=
(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}el=
se{for(var F in =
E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFu=
nction(E[F])?E[F]():E[F])}}}return =
G.join("&").replace(/%20/g,"+")}});var =
m=3D{},n,d=3D[["height","marginTop","marginBottom","paddingTop","paddingB=
ottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"]=
,["opacity"]];function t(F,E){var =
G=3D{};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=3DF});re=
turn G}o.fn.extend({show:function(J,L){if(J){return =
this.animate(t("show",3),J,L)}else{for(var =
H=3D0,F=3Dthis.length;H<F;H++){var =
E=3Do.data(this[H],"olddisplay");this[H].style.display=3DE||"";if(o.css(t=
his[H],"display")=3D=3D=3D"none"){var =
G=3Dthis[H].tagName,K;if(m[G]){K=3Dm[G]}else{var I=3Do("<"+G+" =
/>").appendTo("body");K=3DI.css("display");if(K=3D=3D=3D"none"){K=3D"bloc=
k"}I.remove();m[G]=3DK}o.data(this[H],"olddisplay",K)}}for(var =
H=3D0,F=3Dthis.length;H<F;H++){this[H].style.display=3Do.data(this[H],"ol=
ddisplay")||""}return this}},hide:function(H,I){if(H){return =
this.animate(t("hide",3),H,I)}else{for(var =
G=3D0,F=3Dthis.length;G<F;G++){var =
E=3Do.data(this[G],"olddisplay");if(!E&&E!=3D=3D"none"){o.data(this[G],"o=
lddisplay",o.css(this[G],"display"))}}for(var =
G=3D0,F=3Dthis.length;G<F;G++){this[G].style.display=3D"none"}return =
this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=3Dtypeof =
G=3D=3D=3D"boolean";return =
o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G=3D=3D=
null||E?this.each(function(){var =
H=3DE?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t=
("toggle",3),G,F)},fadeTo:function(E,G,F){return =
this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var =
E=3Do.speed(F,H,G);return =
this[E.queue=3D=3D=3Dfalse?"each":"queue"](function(){var =
K=3Do.extend({},E),M,L=3Dthis.nodeType=3D=3D1&&o(this).is(":hidden"),J=3D=
this;for(M in I){if(I[M]=3D=3D"hide"&&L||I[M]=3D=3D"show"&&!L){return =
K.complete.call(this)}if((M=3D=3D"height"||M=3D=3D"width")&&this.style){K=
.display=3Do.css(this,"display");K.overflow=3Dthis.style.overflow}}if(K.o=
verflow!=3Dnull){this.style.overflow=3D"hidden"}K.curAnim=3Do.extend({},I=
);o.each(I,function(O,S){var R=3Dnew =
o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=3D=3D"toggle"?L?"show":"hi=
de":S](I)}else{var =
Q=3DS.toString().match(/^([+-]=3D)?([\d+-.]+)(.*)$/),T=3DR.cur(true)||0;i=
f(Q){var =
N=3DparseFloat(Q[2]),P=3DQ[3]||"px";if(P!=3D"px"){J.style[O]=3D(N||1)+P;T=
=3D((N||1)/R.cur(true))*T;J.style[O]=3DT+P}if(Q[1]){N=3D((Q[1]=3D=3D"-=3D=
"?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return =
true})},stop:function(F,E){var =
G=3Do.timers;if(F){this.queue([])}this.each(function(){for(var =
H=3DG.length-1;H>=3D0;H--){if(G[H].elem=3D=3Dthis){if(E){G[H](true)}G.spl=
ice(H,1)}}});if(!E){this.dequeue()}return =
this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("=
toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F=
){o.fn[E]=3Dfunction(G,H){return =
this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=3Dtypeof =
G=3D=3D=3D"object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,ea=
sing:F&&H||H&&!o.isFunction(H)&&H};E.duration=3Do.fx.off?0:typeof =
E.duration=3D=3D=3D"number"?E.duration:o.fx.speeds[E.duration]||o.fx.spee=
ds._default;E.old=3DE.complete;E.complete=3Dfunction(){if(E.queue!=3D=3Df=
alse){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return=
 E},easing:{linear:function(G,H,E,F){return =
E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}}=
,timers:[],fx:function(F,E,G){this.options=3DE;this.elem=3DF;this.prop=3D=
G;if(!E.orig){E.orig=3D{}}}});o.fx.prototype=3D{update:function(){if(this=
.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step=
[this.prop]||o.fx.step._default)(this);if((this.prop=3D=3D"height"||this.=
prop=3D=3D"width")&&this.elem.style){this.elem.style.display=3D"block"}},=
cur:function(F){if(this.elem[this.prop]!=3Dnull&&(!this.elem.style||this.=
elem.style[this.prop]=3D=3Dnull)){return this.elem[this.prop]}var =
E=3DparseFloat(o.css(this.elem,this.prop,F));return =
E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:functi=
on(I,H,G){this.startTime=3De();this.start=3DI;this.end=3DH;this.unit=3DG|=
|this.unit||"px";this.now=3Dthis.start;this.pos=3Dthis.state=3D0;var =
E=3Dthis;function F(J){return =
E.step(J)}F.elem=3Dthis.elem;if(F()&&o.timers.push(F)&&!n){n=3DsetInterva=
l(function(){var K=3Do.timers;for(var =
J=3D0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInt=
erval(n);n=3Dg}},13)}},show:function(){this.options.orig[this.prop]=3Do.a=
ttr(this.elem.style,this.prop);this.options.show=3Dtrue;this.custom(this.=
prop=3D=3D"width"||this.prop=3D=3D"height"?1:0,this.cur());o(this.elem).s=
how()},hide:function(){this.options.orig[this.prop]=3Do.attr(this.elem.st=
yle,this.prop);this.options.hide=3Dtrue;this.custom(this.cur(),0)},step:f=
unction(H){var =
G=3De();if(H||G>=3Dthis.options.duration+this.startTime){this.now=3Dthis.=
end;this.pos=3Dthis.state=3D1;this.update();this.options.curAnim[this.pro=
p]=3Dtrue;var E=3Dtrue;for(var F in =
this.options.curAnim){if(this.options.curAnim[F]!=3D=3Dtrue){E=3Dfalse}}i=
f(E){if(this.options.display!=3Dnull){this.elem.style.overflow=3Dthis.opt=
ions.overflow;this.elem.style.display=3Dthis.options.display;if(o.css(thi=
s.elem,"display")=3D=3D"none"){this.elem.style.display=3D"block"}}if(this=
.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.sho=
w){for(var I in =
this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}thi=
s.options.complete.call(this.elem)}return false}else{var =
J=3DG-this.startTime;this.state=3DJ/this.options.duration;this.pos=3Do.ea=
sing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J=
,0,1,this.options.duration);this.now=3Dthis.start+((this.end-this.start)*=
this.pos);this.update()}return =
true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opaci=
ty:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E)=
{if(E.elem.style&&E.elem.style[E.prop]!=3Dnull){E.elem.style[E.prop]=3DE.=
now+E.unit}else{E.elem[E.prop]=3DE.now}}}});if(document.documentElement.g=
etBoundingClientRect){o.fn.offset=3Dfunction(){if(!this[0]){return{top:0,=
left:0}}if(this[0]=3D=3D=3Dthis[0].ownerDocument.body){return =
o.offset.bodyOffset(this[0])}var =
G=3Dthis[0].getBoundingClientRect(),J=3Dthis[0].ownerDocument,F=3DJ.body,=
E=3DJ.documentElement,L=3DE.clientTop||F.clientTop||0,K=3DE.clientLeft||F=
.clientLeft||0,I=3DG.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.sc=
rollTop)-L,H=3DG.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scro=
llLeft)-K;return{top:I,left:H}}}else{o.fn.offset=3Dfunction(){if(!this[0]=
){return{top:0,left:0}}if(this[0]=3D=3D=3Dthis[0].ownerDocument.body){ret=
urn =
o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();=
var =
J=3Dthis[0],G=3DJ.offsetParent,F=3DJ,O=3DJ.ownerDocument,M,H=3DO.document=
Element,K=3DO.body,L=3DO.defaultView,E=3DL.getComputedStyle(J,null),N=3DJ=
.offsetTop,I=3DJ.offsetLeft;while((J=3DJ.parentNode)&&J!=3D=3DK&&J!=3D=3D=
H){M=3DL.getComputedStyle(J,null);N-=3DJ.scrollTop,I-=3DJ.scrollLeft;if(J=
=3D=3D=3DG){N+=3DJ.offsetTop,I+=3DJ.offsetLeft;if(o.offset.doesNotAddBord=
er&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tag=
Name))){N+=3DparseInt(M.borderTopWidth,10)||0,I+=3DparseInt(M.borderLeftW=
idth,10)||0}F=3DG,G=3DJ.offsetParent}if(o.offset.subtractsBorderForOverfl=
owNotVisible&&M.overflow!=3D=3D"visible"){N+=3DparseInt(M.borderTopWidth,=
10)||0,I+=3DparseInt(M.borderLeftWidth,10)||0}E=3DM}if(E.position=3D=3D=3D=
"relative"||E.position=3D=3D=3D"static"){N+=3DK.offsetTop,I+=3DK.offsetLe=
ft}if(E.position=3D=3D=3D"fixed"){N+=3DMath.max(H.scrollTop,K.scrollTop),=
I+=3DMath.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset=3D=
{initialize:function(){if(this.initialized){return}var =
L=3Ddocument.body,F=3Ddocument.createElement("div"),H,G,N,I,M,E,J=3DL.sty=
le.marginTop,K=3D'<div =
style=3D"position:absolute;top:0;left:0;margin:0;border:5px solid =
#000;padding:0;width:1px;height:1px;"><div></div></div><table =
style=3D"position:absolute;top:0;left:0;margin:0;border:5px solid =
#000;padding:0;width:1px;height:1px;" cellpadding=3D"0" =
cellspacing=3D"0"><tr><td></td></tr></table>';M=3D{position:"absolute",to=
p:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"=
};for(E in =
M){F.style[E]=3DM[E]}F.innerHTML=3DK;L.insertBefore(F,L.firstChild);H=3DF=
.firstChild,G=3DH.firstChild,I=3DH.nextSibling.firstChild.firstChild;this=
.doesNotAddBorder=3D(G.offsetTop!=3D=3D5);this.doesAddBorderForTableAndCe=
lls=3D(I.offsetTop=3D=3D=3D5);H.style.overflow=3D"hidden",H.style.positio=
n=3D"relative";this.subtractsBorderForOverflowNotVisible=3D(G.offsetTop=3D=
=3D=3D-5);L.style.marginTop=3D"1px";this.doesNotIncludeMarginInBodyOffset=
=3D(L.offsetTop=3D=3D=3D0);L.style.marginTop=3DJ;L.removeChild(F);this.in=
itialized=3Dtrue},bodyOffset:function(E){o.offset.initialized||o.offset.i=
nitialize();var =
G=3DE.offsetTop,F=3DE.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOf=
fset){G+=3DparseInt(o.curCSS(E,"marginTop",true),10)||0,F+=3DparseInt(o.c=
urCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({pos=
ition:function(){var I=3D0,H=3D0,F;if(this[0]){var =
G=3Dthis.offsetParent(),J=3Dthis.offset(),E=3D/^body|html$/i.test(G[0].ta=
gName)?{top:0,left:0}:G.offset();J.top-=3Dj(this,"marginTop");J.left-=3Dj=
(this,"marginLeft");E.top+=3Dj(G,"borderTopWidth");E.left+=3Dj(G,"borderL=
eftWidth");F=3D{top:J.top-E.top,left:J.left-E.left}}return =
F},offsetParent:function(){var =
E=3Dthis[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.=
tagName)&&o.css(E,"position")=3D=3D"static")){E=3DE.offsetParent}return =
o(E)}});o.each(["Left","Top"],function(F,E){var =
G=3D"scroll"+E;o.fn[G]=3Dfunction(H){if(!this[0]){return null}return =
H!=3D=3Dg?this.each(function(){this=3D=3Dl||this=3D=3Ddocument?l.scrollTo=
(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=3DH}):this[0]=3D=3D=
l||this[0]=3D=3Ddocument?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&=
&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Hei=
ght","Width"],function(I,G){var =
E=3DI?"Left":"Top",H=3DI?"Right":"Bottom",F=3DG.toLowerCase();o.fn["inner=
"+G]=3Dfunction(){return =
this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=3Dfunction=
(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var =
J=3DG.toLowerCase();o.fn[J]=3Dfunction(K){return =
this[0]=3D=3Dl?document.compatMode=3D=3D"CSS1Compat"&&document.documentEl=
ement["client"+G]||document.body["client"+G]:this[0]=3D=3Ddocument?Math.m=
ax(document.documentElement["client"+G],document.body["scroll"+G],documen=
t.documentElement["scroll"+G],document.body["offset"+G],document.document=
Element["offset"+G]):K=3D=3D=3Dg?(this.length?o.css(this[0],J):null):this=
.css(J,typeof K=3D=3D=3D"string"?K:K+"px")}})})();
------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/js/jquery.jcarousel.pack.js

/**=0A=
 * jCarousel - Riding carousels with jQuery=0A=
 *   http://sorgalla.com/jcarousel/=0A=
 *=0A=
 * Copyright (c) 2006 Jan Sorgalla (http://sorgalla.com)=0A=
 * Dual licensed under the MIT (MIT-LICENSE.txt)=0A=
 * and GPL (GPL-LICENSE.txt) licenses.=0A=
 *=0A=
 * Built on top of the jQuery library=0A=
 *   http://jquery.com=0A=
 *=0A=
 * Inspired by the "Carousel Component" by Bill Scott=0A=
 *   http://billwscott.com/carousel/=0A=
 */=0A=
eval(function(p,a,c,k,e,r){e=3Dfunction(c){return(c<a?'':e(parseInt(c/a))=
)+((c=3Dc%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace=
(/^/,String)){while(c--)r[e(c)]=3Dk[c]||e(c);k=3D[function(e){return =
r[e]}];e=3Dfunction(){return'\\w+'};c=3D1};while(c--)if(k[c])p=3Dp.replac=
e(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return =
p}('(9($){$.1v.C=3D9(o){z 4.1b(9(){3p r(4,o)})};8 =
q=3D{Z:F,25:1,21:1,u:7,1c:3,15:7,1K:\'2X\',2c:\'2Q\',1q:0,B:7,1j:7,1G:7,2=
F:7,2B:7,2z:7,2x:7,2v:7,2s:7,2p:7,1S:\'<P></P>\',1Q:\'<P></P>\',2m:\'2l\'=
,2k:\'2l\',1O:7,1L:7};$.C=3D9(e,o){4.5=3D$.16({},q,o||{});4.Q=3DF;4.D=3D7=
;4.H=3D7;4.t=3D7;4.U=3D7;4.R=3D7;4.N=3D!4.5.Z?\'1H\':\'26\';4.E=3D!4.5.Z?=
\'24\':\'23\';8 a=3D\'\',1e=3De.K.1e(\' \');1r(8 =
i=3D0;i<1e.I;i++){6(1e[i].2y(\'C-2w\')!=3D-1){$(e).1E(1e[i]);8 =
a=3D1e[i];1p}}6(e.2t=3D=3D\'3o\'||e.2t=3D=3D\'3n\'){4.t=3D$(e);4.D=3D4.t.=
19();6(4.D.1o(\'C-H\')){6(!4.D.19().1o(\'C-D\'))4.D=3D4.D.B(\'<P></P>\');=
4.D=3D4.D.19()}10 =
6(!4.D.1o(\'C-D\'))4.D=3D4.t.B(\'<P></P>\').19()}10{4.D=3D$(e);4.t=3D$(e)=
.3h(\'>2o,>2n,P>2o,P>2n\')}6(a!=3D\'\'&&4.D.19()[0].K.2y(\'C-2w\')=3D=3D-=
1)4.D.B(\'<P 3g=3D" =
\'+a+\'"></P>\');4.H=3D4.t.19();6(!4.H.I||!4.H.1o(\'C-H\'))4.H=3D4.t.B(\'=
<P></P>\').19();4.R=3D$(\'.C-11\',4.D);6(4.R.u()=3D=3D0&&4.5.1Q!=3D7)4.R=3D=
4.H.1z(4.5.1Q).11();4.R.V(4.K(\'C-11\'));4.U=3D$(\'.C-17\',4.D);6(4.U.u()=
=3D=3D0&&4.5.1S!=3D7)4.U=3D4.H.1z(4.5.1S).11();4.U.V(4.K(\'C-17\'));4.H.V=
(4.K(\'C-H\'));4.t.V(4.K(\'C-t\'));4.D.V(4.K(\'C-D\'));8 =
b=3D4.5.15!=3D7?1k.1P(4.1m()/4.5.15):7;8 c=3D4.t.32(\'1F\');8 =
d=3D4;6(c.u()>0){8 =
f=3D0,i=3D4.5.21;c.1b(9(){d.1I(4,i++);f+=3Dd.S(4,b)});4.t.y(4.N,f+\'T\');=
6(!o||o.u=3D=3D=3DJ)4.5.u=3Dc.u()}4.D.y(\'1y\',\'1A\');4.U.y(\'1y\',\'1A\=
');4.R.y(\'1y\',\'1A\');4.2G=3D9(){d.17()};4.2b=3D9(){d.11()};4.1U=3D9(){=
d.2q()};6(4.5.1j!=3D7)4.5.1j(4,\'2a\');6($.2A.28){4.1f(F,F);$(27).1u(\'2I=
\',9(){d.1t()})}10 4.1t()};8 =
r=3D$.C;r.1v=3Dr.2H=3D{C:\'0.2.3\'};r.1v.16=3Dr.16=3D$.16;r.1v.16({1t:9()=
{4.A=3D7;4.G=3D7;4.X=3D7;4.13=3D7;4.14=3DF;4.1d=3D7;4.O=3D7;4.W=3DF;6(4.Q=
)z;4.t.y(4.E,4.1s(4.5.21)+\'T\');8 =
p=3D4.1s(4.5.25);4.X=3D4.13=3D7;4.1i(p,F);$(27).22(\'2E\',4.1U).1u(\'2E\'=
,4.1U)},2D:9(){4.t.2C();4.t.y(4.E,\'3u\');4.t.y(4.N,\'3t\');6(4.5.1j!=3D7=
)4.5.1j(4,\'2D\');4.1t()},2q:9(){6(4.O!=3D7&&4.W)4.t.y(4.E,r.M(4.t.y(4.E)=
)+4.O);4.O=3D7;4.W=3DF;6(4.5.1G!=3D7)4.5.1G(4);6(4.5.15!=3D7){8 a=3D4;8 =
b=3D1k.1P(4.1m()/4.5.15),N=3D0,E=3D0;$(\'1F\',4.t).1b(9(i){N+=3Da.S(4,b);=
6(i+1<a.A)E=3DN});4.t.y(4.N,N+\'T\');4.t.y(4.E,-E+\'T\')}4.1c(4.A,F)},3s:=
9(){4.Q=3D1h;4.1f()},3r:9(){4.Q=3DF;4.1f()},u:9(s){6(s!=3DJ){4.5.u=3Ds;6(=
!4.Q)4.1f()}z =
4.5.u},3q:9(i,a){6(a=3D=3DJ||!a)a=3Di;6(4.5.u!=3D=3D7&&a>4.5.u)a=3D4.5.u;=
1r(8 j=3Di;j<=3Da;j++){8 e=3D4.L(j);6(!e.I||e.1o(\'C-1a-1D\'))z F}z =
1h},L:9(i){z $(\'.C-1a-\'+i,4.t)},2u:9(i,s){8 =
e=3D4.L(i),20=3D0,2u=3D0;6(e.I=3D=3D0){8 =
c,e=3D4.1B(i),j=3Dr.M(i);1n(c=3D4.L(--j)){6(j<=3D0||c.I){j<=3D0?4.t.2r(e)=
:c.1X(e);1p}}}10 20=3D4.S(e);e.1E(4.K(\'C-1a-1D\'));1R =
s=3D=3D\'3l\'?e.3k(s):e.2C().3j(s);8 =
a=3D4.5.15!=3D7?1k.1P(4.1m()/4.5.15):7;8 =
b=3D4.S(e,a)-20;6(i>0&&i<4.A)4.t.y(4.E,r.M(4.t.y(4.E))-b+\'T\');4.t.y(4.N=
,r.M(4.t.y(4.N))+b+\'T\');z e},1V:9(i){8 =
e=3D4.L(i);6(!e.I||(i>=3D4.A&&i<=3D4.G))z;8 =
d=3D4.S(e);6(i<4.A)4.t.y(4.E,r.M(4.t.y(4.E))+d+\'T\');e.1V();4.t.y(4.N,r.=
M(4.t.y(4.N))-d+\'T\')},17:9(){4.1C();6(4.O!=3D7&&!4.W)4.1T(F);10 =
4.1c(((4.5.B=3D=3D\'1Z\'||4.5.B=3D=3D\'G\')&&4.5.u!=3D7&&4.G=3D=3D4.5.u)?=
1:4.A+4.5.1c)},11:9(){4.1C();6(4.O!=3D7&&4.W)4.1T(1h);10 =
4.1c(((4.5.B=3D=3D\'1Z\'||4.5.B=3D=3D\'A\')&&4.5.u!=3D7&&4.A=3D=3D1)?4.5.=
u:4.A-4.5.1c)},1T:9(b){6(4.Q||4.14||!4.O)z;8 =
a=3Dr.M(4.t.y(4.E));!b?a-=3D4.O:a+=3D4.O;4.W=3D!b;4.X=3D4.A;4.13=3D4.G;4.=
1i(a)},1c:9(i,a){6(4.Q||4.14)z;4.1i(4.1s(i),a)},1s:9(i){6(4.Q||4.14)z;6(4=
.5.B!=3D\'18\')i=3Di<1?1:(4.5.u&&i>4.5.u?4.5.u:i);8 a=3D4.A>i;8 =
b=3Dr.M(4.t.y(4.E));8 f=3D4.5.B!=3D\'18\'&&4.A<=3D1?1:4.A;8 =
c=3Da?4.L(f):4.L(4.G);8 j=3Da?f:f-1;8 =
e=3D7,l=3D0,p=3DF,d=3D0;1n(a?--j>=3Di:++j<i){e=3D4.L(j);p=3D!e.I;6(e.I=3D=
=3D0){e=3D4.1B(j).V(4.K(\'C-1a-1D\'));c[a?\'1z\':\'1X\'](e)}c=3De;d=3D4.S=
(e);6(p)l+=3Dd;6(4.A!=3D7&&(4.5.B=3D=3D\'18\'||(j>=3D1&&(4.5.u=3D=3D7||j<=
=3D4.5.u))))b=3Da?b+d:b-d}8 g=3D4.1m();8 h=3D[];8 k=3D0,j=3Di,v=3D0;8 =
c=3D4.L(i-1);1n(++k){e=3D4.L(j);p=3D!e.I;6(e.I=3D=3D0){e=3D4.1B(j).V(4.K(=
\'C-1a-1D\'));c.I=3D=3D0?4.t.2r(e):c[a?\'1z\':\'1X\'](e)}c=3De;8 =
d=3D4.S(e);6(d=3D=3D0){3f(\'3e: 3d 1H/26 3c 1r 3b. 3a 39 38 37 36 35. =
34...\');z 0}6(4.5.B!=3D\'18\'&&4.5.u!=3D=3D7&&j>4.5.u)h.33(e);10 =
6(p)l+=3Dd;v+=3Dd;6(v>=3Dg)1p;j++}1r(8 =
x=3D0;x<h.I;x++)h[x].1V();6(l>0){4.t.y(4.N,4.S(4.t)+l+\'T\');6(a){b-=3Dl;=
4.t.y(4.E,r.M(4.t.y(4.E))-l+\'T\')}}8 =
n=3Di+k-1;6(4.5.B!=3D\'18\'&&4.5.u&&n>4.5.u)n=3D4.5.u;6(j>n){k=3D0,j=3Dn,=
v=3D0;1n(++k){8 e=3D4.L(j--);6(!e.I)1p;v+=3D4.S(e);6(v>=3Dg)1p}}8 =
o=3Dn-k+1;6(4.5.B!=3D\'18\'&&o<1)o=3D1;6(4.W&&a){b+=3D4.O;4.W=3DF}4.O=3D7=
;6(4.5.B!=3D\'18\'&&n=3D=3D4.5.u&&(n-k+1)>=3D1){8 =
m=3Dr.Y(4.L(n),!4.5.Z?\'1l\':\'1N\');6((v-m)>g)4.O=3Dv-g-m}1n(i-->o)b+=3D=
4.S(4.L(i));4.X=3D4.A;4.13=3D4.G;4.A=3Do;4.G=3Dn;z =
b},1i:9(p,a){6(4.Q||4.14)z;4.14=3D1h;8 b=3D4;8 =
c=3D9(){b.14=3DF;6(p=3D=3D0)b.t.y(b.E,0);6(b.5.B=3D=3D\'1Z\'||b.5.B=3D=3D=
\'G\'||b.5.u=3D=3D7||b.G<b.5.u)b.2j();b.1f();b.1M(\'2i\')};4.1M(\'31\');6=
(!4.5.1K||a=3D=3DF){4.t.y(4.E,p+\'T\');c()}10{8 =
o=3D!4.5.Z?{\'24\':p}:{\'23\':p};4.t.1i(o,4.5.1K,4.5.2c,c)}},2j:9(s){6(s!=
=3DJ)4.5.1q=3Ds;6(4.5.1q=3D=3D0)z 4.1C();6(4.1d!=3D7)z;8 =
a=3D4;4.1d=3D30(9(){a.17()},4.5.1q*2Z)},1C:9(){6(4.1d=3D=3D7)z;2Y(4.1d);4=
.1d=3D7},1f:9(n,p){6(n=3D=3DJ||n=3D=3D7){8 =
n=3D!4.Q&&4.5.u!=3D=3D0&&((4.5.B&&4.5.B!=3D\'A\')||4.5.u=3D=3D7||4.G<4.5.=
u);6(!4.Q&&(!4.5.B||4.5.B=3D=3D\'A\')&&4.5.u!=3D7&&4.G>=3D4.5.u)n=3D4.O!=3D=
7&&!4.W}6(p=3D=3DJ||p=3D=3D7){8 =
p=3D!4.Q&&4.5.u!=3D=3D0&&((4.5.B&&4.5.B!=3D\'G\')||4.A>1);6(!4.Q&&(!4.5.B=
||4.5.B=3D=3D\'G\')&&4.5.u!=3D7&&4.A=3D=3D1)p=3D4.O!=3D7&&4.W}8 =
a=3D4;4.U[n?\'1u\':\'22\'](4.5.2m,4.2G)[n?\'1E\':\'V\'](4.K(\'C-17-1w\'))=
.1J(\'1w\',n?F:1h);4.R[p?\'1u\':\'22\'](4.5.2k,4.2b)[p?\'1E\':\'V\'](4.K(=
\'C-11-1w\')).1J(\'1w\',p?F:1h);6(4.U.I>0&&(4.U[0].1g=3D=3DJ||4.U[0].1g!=3D=
n)&&4.5.1O!=3D7){4.U.1b(9(){a.5.1O(a,4,n)});4.U[0].1g=3Dn}6(4.R.I>0&&(4.R=
[0].1g=3D=3DJ||4.R[0].1g!=3Dp)&&4.5.1L!=3D7){4.R.1b(9(){a.5.1L(a,4,p)});4=
.R[0].1g=3Dp}},1M:9(a){8 =
b=3D4.X=3D=3D7?\'2a\':(4.X<4.A?\'17\':\'11\');4.12(\'2F\',a,b);6(4.X!=3D=3D=
4.A){4.12(\'2B\',a,b,4.A);4.12(\'2z\',a,b,4.X)}6(4.13!=3D=3D4.G){4.12(\'2=
x\',a,b,4.G);4.12(\'2v\',a,b,4.13)}4.12(\'2s\',a,b,4.A,4.G,4.X,4.13);4.12=
(\'2p\',a,b,4.X,4.13,4.A,4.G)},12:9(a,b,c,d,e,f,g){6(4.5[a]=3D=3DJ||(1R =
4.5[a]!=3D\'2h\'&&b!=3D\'2i\'))z;8 h=3D1R =
4.5[a]=3D=3D\'2h\'?4.5[a][b]:4.5[a];6(!$.2W(h))z;8 =
j=3D4;6(d=3D=3D=3DJ)h(j,c,b);10 =
6(e=3D=3D=3DJ)4.L(d).1b(9(){h(j,4,d,c,b)});10{1r(8 =
i=3Dd;i<=3De;i++)6(i!=3D=3D7&&!(i>=3Df&&i<=3Dg))4.L(i).1b(9(){h(j,4,i,c,b=
)})}},1B:9(i){z 4.1I(\'<1F></1F>\',i)},1I:9(e,i){8 =
a=3D$(e).V(4.K(\'C-1a\')).V(4.K(\'C-1a-\'+i));a.1J(\'2V\',i);z =
a},K:9(c){z c+\' \'+c+(!4.5.Z?\'-2U\':\'-Z\')},S:9(e,d){8 =
a=3De.2g!=3DJ?e[0]:e;8 =
b=3D!4.5.Z?a.1x+r.Y(a,\'2f\')+r.Y(a,\'1l\'):a.2e+r.Y(a,\'2d\')+r.Y(a,\'1N=
\');6(d=3D=3DJ||b=3D=3Dd)z b;8 =
w=3D!4.5.Z?d-r.Y(a,\'2f\')-r.Y(a,\'1l\'):d-r.Y(a,\'2d\')-r.Y(a,\'1N\');$(=
a).y(4.N,w+\'T\');z =
4.S(a)},1m:9(){z!4.5.Z?4.H[0].1x-r.M(4.H.y(\'2T\'))-r.M(4.H.y(\'2S\')):4.=
H[0].2e-r.M(4.H.y(\'2R\'))-r.M(4.H.y(\'3i\'))},2P:9(i,s){6(s=3D=3DJ)s=3D4=
.5.u;z 1k.2O((((i-1)/s)-1k.2N((i-1)/s))*s)+1}});r.16({3m:9(d){z =
$.16(q,d||{})},Y:9(e,p){6(!e)z 0;8 =
a=3De.2g!=3DJ?e[0]:e;6(p=3D=3D\'1l\'&&$.2A.28){8 =
b=3D{\'1y\':\'1A\',\'2M\':\'2L\',\'1H\':\'1q\'},1Y,1W;$.29(a,b,9(){1Y=3Da=
.1x});b[\'1l\']=3D0;$.29(a,b,9(){1W=3Da.1x});z 1W-1Y}z =
r.M($.y(a,p))},M:9(v){v=3D2K(v);z =
2J(v)?0:v}})})(3v);',62,218,'||||this|options|if|null|var|function|||||||=
|||||||||||||list|size||||css|return|first|wrap|jcarousel|container|lt|fa=
lse|last|clip|length|undefined|className|get|intval|wh|tail|div|locked|bu=
ttonPrev|dimension|px|buttonNext|addClass|inTail|prevFirst|margin|vertica=
l|else|prev|callback|prevLast|animating|visible|extend|next|circular|pare=
nt|item|each|scroll|timer|split|buttons|jcarouselstate|true|animate|initC=
allback|Math|marginRight|clipping|while|hasClass|break|auto|for|pos|setup=
|bind|fn|disabled|offsetWidth|display|before|block|create|stopAuto|placeh=
older|removeClass|li|reloadCallback|width|format|attr|animation|buttonPre=
vCallback|notify|marginBottom|buttonNextCallback|ceil|buttonPrevHTML|type=
of|buttonNextHTML|scrollTail|funcResize|remove|oWidth2|after|oWidth|both|=
old|offset|unbind|top|left|start|height|window|safari|swap|init|funcPrev|=
easing|marginTop|offsetHeight|marginLeft|jquery|object|onAfterAnimation|s=
tartAuto|buttonPrevEvent|click|buttonNextEvent|ol|ul|itemVisibleOutCallba=
ck|reload|prepend|itemVisibleInCallback|nodeName|add|itemLastOutCallback|=
skin|itemLastInCallback|indexOf|itemFirstOutCallback|browser|itemFirstInC=
allback|empty|reset|resize|itemLoadCallback|funcNext|prototype|load|isNaN=
|parseInt|none|float|floor|round|index|swing|borderTopWidth|borderRightWi=
dth|borderLeftWidth|horizontal|jcarouselindex|isFunction|normal|clearTime=
out|1000|setTimeout|onBeforeAnimation|children|push|Aborting|loop|infinit=
e|an|cause|will|This|items|set|No|jCarousel|alert|class|find|borderBottom=
Width|append|html|string|defaults|OL|UL|new|has|unlock|lock|10px|0px|jQue=
ry'.split('|'),0,{}))=0A=

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/js/cci-lib-jq.js?ver=20100119

CCI =3D CCI || {};=0A=
CCI["JQ"] =3D {=0A=
  "PAGER": function(bag) {=0A=
			bag =3D bag || {};=0A=
			el =3D bag.el || 0;=0A=
			$(el).live("click", function(e){=0A=
				e.preventDefault();=0A=
				bag.url =3D $(this)[0].href;=0A=
				pagId =3D $(this).closest("div").attr("id");=0A=
				pagId =3D pagId.split("-pag");=0A=
				bag.target =3D pagId[0];=0A=
				if (bag.url && bag.target){=0A=
					CCI["JQ"].LOAD(bag);=0A=
				}=0A=
	});=0A=
			=0A=
		  },=0A=
	"LOAD": function(bag) {=0A=
				bag =3D bag || {};=0A=
				url =3D bag.url || 0;=0A=
				target =3D bag.target || 0;=0A=
				if (url && target){=0A=
				el =3D $("#"+target)=0A=
					el.addClass("loading").load(url, =
function(){el.removeClass("loading");});=0A=
				}=0A=
	=0A=
	},=0A=
	"TABBER": function(bag) {=0A=
				bag =3D bag || {};=0A=
				nav =3D bag.nav || ".tabNav a";=0A=
				if (nav){=0A=
					$(nav).click(function(e){=0A=
					e.preventDefault();=0A=
					target =3D $(this)[0].hash;=0A=
//				console.log(target);=0A=
					containerNav =3D $(this).closest("div").attr("id");=0A=
//				console.log(containerNav);=0A=
					containerTemp =3D containerNav.split("-nav");=0A=
//				console.log(containerTemp);=0A=
					containerDiv =3D "#"+ containerTemp[0] +" div";=0A=
					$(containerDiv).not(".pagination-nav").hide().filter(target).show();=0A=
					navs =3D "#"+ containerTemp + nav;=0A=
           		 	$(navs).each(function(e){$(this).removeClass('active');});=0A=
   	      		 	$(this).addClass('active');=0A=
   	      		 	return false;=0A=
				});=0A=
				=0A=
				}	  =0A=
	  },=0A=
	  "INPUTVALUE": function(bag) {=0A=
				bag =3D bag || {};=0A=
				el =3D bag.el || 0;=0A=
				$(el).each(function(){=0A=
				//Load=0A=
				if(this.value =3D=3D '') {=0A=
            			this.value =3D $(this).attr('title');=0A=
       			 	}=0A=
				//Focus=0A=
				$(this).focus(function(){=0A=
						if(this.value =3D=3D $(this).attr('title')){=0A=
						this.value=3D'';=0A=
       			 	}});=0A=
				//Blur=0A=
					$(this).blur(function(){=0A=
						if(this.value =3D=3D '') {=0A=
            			this.value =3D $(this).attr('title');=0A=
       			 	}});=0A=
					       			 });	=0A=
 		 =0A=
	}	  =0A=
	  =0A=
}=0A=

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/section/FREE?template=pluckJS&mime=javascript&ver=20100119

// Pluck Globals
document.domain =3D "crainsdetroit.com";
var CCI =3D CCI || {};
CCI["Pluck"] =3D CCI.Pluck || {};
CCI.Pluck["Globals"] =3D {
	Enabled:	 true,
	Host:		"sitelife." + document.domain,
	SID:		"sitelife." + document.domain,
	SSOPath:	"https://home.crainsdetroit.com/clickshare",
	CMWPath:	"http://sitelife." + document.domain + "/ver1.0/CMW",
	WidgetPath:	"/section/FREE",
	=
CSSOverride:"http://www.crainsdetroit.com/communities/styles/default/css/=
pluckOverride.css%26ver=3D20100119"
}
CCI.Pluck["Urls"] =3D {
			GlobalSiteUrl: "http://www.crainsdetroit.com",
			// Pluck URLS
			SiteLifeProxyUrl: "http://" + CCI.Pluck.Globals.Host + =
"/ver1.0/SiteLifeProxy?sid=3D" + CCI.Pluck.Globals.SID + =
"&pckcss=3D"+CCI.Pluck.Globals.CSSOverride,
			DirectProxyUrl: "http://" + CCI.Pluck.Globals.Host + =
"/ver1.0/Direct/DirectProxy?sid=3D" + CCI.Pluck.Globals.SID,
			PluckAppsUrl: "http://" + CCI.Pluck.Globals.Host + =
"/ver1.0/Content/ua/scripts/pluckApps.js",
			DaapiProcessUrl: "http://" + CCI.Pluck.Globals.Host + =
"/ver1.0/Direct/Process?sid=3D" + CCI.Pluck.Globals.SID,
			PhotoUploadUrl: "http://" + CCI.Pluck.Globals.Host + =
"/ver1.0/Photo/Upload",
			VideoUploadUrl: "http://" + CCI.Pluck.Globals.Host + =
"/ver1.0/Video/Upload",
			CMWOverviewUrl: CCI.Pluck.Globals.CMWPath + "/Overview",
			CMWGroupsUrl: CCI.Pluck.Globals.CMWPath + =
"/CommunityGroups/GroupDetails.rails?slPage=3Doverview",
			ClickshareUrl: CCI.Pluck.Globals.SSOPath,
			LoginUrl: CCI.Pluck.Globals.SSOPath + "/pluckAuth.do?CSTargetURL=3D" =
+ location.href,
			LogoutUrl: CCI.Pluck.Globals.SSOPath + =
"/logout.do?CSTargetURL=3Dhttp://www.crainsdetroit.com",
			ProfileEditUrl: "http://" + CCI.Pluck.Globals.Host + =
"/ver1.0/Persona/PersonaProfileSubmit"
};
CCI.Pluck["Templates"] =3D {
		CurrentCategory: "FREE"
};
CCI.Pluck["Communities"] =3D {
		CurrentCommunity: {
			Category:"FREE",
			Key: "FREE",
			BlogKey: "FREE",
			ForumKey: "FREE",
			EventSetKey: "FREE",
			PhotoGalleryKey: "FREE"
		}
};
CCI.Pluck["College"] =3D {NewslistProfiles: =
{defaultProfile:1145,CDWSU:1163}};

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/js/cci-lib-pluck.js?ver=20100119

CCI.Pluck["Messages"] =3D {
	Persona: {
		EditPersona: "Change photo / Edit profile",
		AddCompany: "Add a company profile"
	},
	Contacts: {
		TechnicalContactEmail: "webmaster@crainsdetroit.com",
		TechnicalContactName: "Alan Baker"
	},
=09
	Errors: {
		SOSE: {
			MessageFromPluckNotOK: "Sorry, there is a temporary problem =
displaying this content. Please check back later.",
			NeedToReload: "Sorry, there is a temporary problem displaying this =
page."
		}
	},
	Forms: {
		MembersOnlyFormInput: {
			"Anonymous": "Please <a href=3D'"+CCI.Pluck.Urls.LoginUrl+"'>log in =
or register</a> to contribute.",
			"NonMember": "Please <a href=3D'#' =
onclick=3D'CCI.Pluck.Users.CommunityRequests({action:\"join\"});'>join =
this community</a> to participate.",
			"Pending": "You may contribute when your request to join this =
community is approved."
		}
	},
	HandleErrors: function() {
		=09
			var noResponseDivs =3D $(".slError-SOSE");
			for (i=3D0;i<noResponseDivs.length;i++) {
				if (noResponseDivs[i].innerHTML.length =3D=3D 0) {
					noResponseDivs[i].innerHTML =3D =
"<p>"+CCI.Pluck.Messages.Errors.SOSE.MessageFromPluckNotOK+"</p>";
					noResponseDivs[i].style.display =3D "block";
					}
			}
			var soseTerm =3D $("pre");
//			console.dir(soseTerm);
			for (p=3D0;p<soseTerm.length;p++) {
				// if SOSE stops for any request, show a global error message on the =
page
				if (soseTerm[p].innerHTML.indexOf("Error on line") > -1) {
				var emailUsLink =3D document.createElement("a");
				emailUsLink.innerHTML =3D "send us an e-mail";
				emailUsLink.onclick =3D function() {
					email();
					}
				document.getElementById("main-content").innerHTML =3D =
"<h1>"+CCI.Pluck.Messages.Errors.SOSE.NeedToReload+"</h1><ul><li><a =
href=3D'"+location.href+"&userReload=3D1'>Try refreshing this page</a> =
or coming back a little later.</li><li>If the problem persists, please =
make sure to <a href=3D'#' =
onclick=3D'CCI.Pluck.Messages.ContactEmail({to:CCI.Pluck.Messages.Contact=
s.TechnicalContactEmail})'>send us an e-mail</a>.</li><li>Thank you for =
your patience</li></ul>";
				break;
				}
			}
			=09
	},
	ContactEmail: function(bag) {
			bag =3D bag || {};
			  var to =3D bag.to || "webmaster@crainsdetroit.com";
			  var subject =3D bag.subject || "Crain's Detroit Business =
communities";
			  var body =3D bag.body || "";
			  var email =3D "mailto:" + to + "&subject=3D" + escape(subject) + =
"&body=3D" + escape(body);=20
			  window.location =3D email;
			}		=09
};



CCI.Pluck["LoadScripts"] =3D function() {
		if (CCI.Pluck.Globals.Enabled) {
			var urls =3D CCI.Pluck.Urls;
			// for old widgets:
 			document.write("<scr" + "ipt type=3D\"text/javascript\" src=3D\"" + =
urls.SiteLifeProxyUrl + "\"></sc" + "ript>\n");
 			 			// for DAAPI:
 			document.write("<scr" + "ipt type=3D\"text/javascript\" src=3D\"" + =
urls.DirectProxyUrl + "\"></sc" + "ript>\n");
 			// for apps (pluck 4)
 			document.write("<scr" + "ipt type=3D\"text/javascript\" src=3D\"" + =
urls.PluckAppsUrl + "\"></sc" + "ript>\n");
 		}
 	};

CCI.Pluck.LoadScripts();

CCI.Pluck.College.MyCourses =3D [];
=09
CCI.Pluck.College.getPosts =3D function(bag) {
		var blogKeyEl =3D bag.blogKeyEl || 0;
		if (blogKeyEl) {
			var html =3D "";
			var blogKey =3D blogKeyEl.id || 0;
		=09
			if (blogKey) {
//			console.log("blogKey: " + blogKey);
			var blogCb =3D function(r) {
				// console.dir(r);
				if (r.Responses[0].BlogPostPage) {
					var blog =3D r.Responses[0].BlogPostPage;
					if (blog.NumberOfBlogPosts > 0) {
						html +=3D '<a href=3D"/section/college01?plckBlogId=3D' + =
blog.BlogKey.Key + =
'&plckBlogPage=3DBlogViewPost&plckPostId=3D'+blog.BlogPosts[0].BlogPostKe=
y.Key+'">' + blog.BlogPosts[0].PostTitle + "</a><br /><small>(" + =
blog.BlogPosts[0].PostDate + ")</small>";
						}
					else {
						html +=3D "No blog posts yet";
					}
			} else {
				html +=3D "Problem finding blog";
				}
			blogKeyEl.innerHTML =3D html;
			}
		=09
			var rb =3D new RequestBatch();
			var blog =3D new BlogPostPage(new BlogKey(blogKey), 1, 1, =
"TimeStampDescending");
			rb.AddToRequest(blog);
			rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, blogCb);
			}
		}
	};

CCI.Pluck.College.getMyCourses =3D function(bag) {
    bag =3D bag || {};
    var callback =3D bag.callback || 0;
    var onPage =3D bag.onPage || 1;
   =20
    var getCourses =3D function(bag2) {
	    bag2 =3D bag2 || {};
	    onPage =3D bag2.onPage || 1;

    var userCallback =3D function(r) {
    var user =3D r.Responses[0].User || 0;
    if (user) {
	    CCI.Pluck.Users.CurrentUser =3D user;
        var rb =3D new RequestBatch();

        rb.AddToRequest(new CommunityGroupMembershipPage(new =
UserKey(user.UserKey.Key), 5, onPage));
        rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, groupsCallback);
    	}
	};
=09
	var groupsCallback =3D function(r) {
  	//  console.dir(r);
    var page =3D r.Responses[0].CommunityGroupMembershipPage || 0;
    var getNext =3D 0;
    if (page) {
        for (i=3D0;i<page.CommunityGroupMemberships.length;i++) {
            var group  =3D page.CommunityGroupMemberships[i];
            if (group.CommunityGroup.Section =3D=3D "collegeclassroom" =
&& group.MembershipTier !=3D "NonMember") {
                =
CCI.Pluck.College.MyCourses.push(page.CommunityGroupMemberships[i]);
            }
        }
        var total =3D page.NumberOfCommunityGroupMemberships;
        var onPage =3D Math.abs(page.OnPage);
        var numberPerPage =3D page.NumberPerPage;
        var numberOfPages =3D Math.ceil(total / numberPerPage);
        if (onPage < numberOfPages) {
            getNext =3D onPage + 1;
        }
    }
	//    console.log("Get Page: " + getNext);
    if (getNext) {
        getCourses({onPage:getNext});
    } else {
	    if (callback) {
		    callback();
	    }
    }
};

    var rb =3D new RequestBatch();
    rb.AddToRequest(new UserKey());
 	rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, userCallback);
	};
	getCourses();
	};
=09
CCI.Pluck.College.formatCourses =3D function() {
		if (CCI.Pluck.College.MyCourses) {
			var userEl =3D document.getElementById("cci-college-user") || 0;
			var insertEl =3D document.getElementById("cci-college-groups") || 0;
			var imageEl =3D document.getElementById("cci-college-groups-image") =
|| 0;
			var newsEl =3D document.getElementById("cci-college-main-newslist") =
|| 0;
			var newslistUrl =3D "/section/college?template=3Dlitenewslist";
					=09
			var userHtml =3D "";
			var html =3D "";
			var imageHtml =3D "";
			var newsHtml =3D "";
		=09
			if (newsEl) {
				if (CCI.Pluck.College.MyCourses[0]) {
					var collegeCode =3D =
CCI.Pluck.College.MyCourses[0].CommunityGroup.CommunityGroupKey.Key.repla=
ce(/^([^_]+)_(.*)$/,"$1");
					}
					else {
						var collegeCode =3D "defaultProfile";
					}
					var newslistProfile =3D =
CCI.Pluck.College.NewslistProfiles[collegeCode] || =
CCI.Pluck.College.NewslistProfiles["defaultProfile"];
					if (newslistProfile) {
						newslistUrl +=3D "&profile=3D" + newslistProfile;
					}
			=09
				$.get(newslistUrl, function(data){
  					$(newsEl).html(data);
				});
			};
		=09
			if (imageEl && CCI.Pluck.College.MyCourses[0]) {
				imageHtml +=3D '<img src=3D"' + CCI.Pluck.Urls.GlobalSiteUrl+ =
'/apps/pbcsi.dll/urlget?url=3D' + =
CCI.Pluck.College.MyCourses[0].CommunityGroup.AvatarImageUrl.replace(/\.S=
mall\./,".Large.")+'&maxw=3D65" />';
				imageEl.innerHTML =3D imageHtml;
			};
		=09
			if (userEl) {
				if (CCI.Pluck.Users.CurrentUser.DisplayName !=3D "anonymous") {
				userHtml +=3D '<small> [ <a href=3D"' + CCI.Pluck.Urls.ClickshareUrl =
+ '/updateCommunityGroups.do">MANAGE</a> ]<br />';
				userHtml +=3D '<small>Welcome, ' + =
CCI.Pluck.Users.CurrentUser.DisplayName + '! Not you? <a href=3D"' + =
CCI.Pluck.Urls.LogoutUrl + '">Log out</a></small></small>';
				}
				if (CCI.Pluck.Users.CurrentUser.UserTier =3D=3D "Editor") {
				userHtml +=3D '<p><small><a =
href=3D"http://sitelife.detroitmakeithere.com/ver1.0/CMW/CommunityGroups/=
GroupDetails.rails">Manage all groups</a></p>';
				}
				userEl.innerHTML =3D userHtml;
			};
		=09
			if (insertEl) {
				html +=3D "<ul>";
				if (CCI.Pluck.Users.CurrentUser.DisplayName =3D=3D "anonymous") {
					html +=3D '<li><a href=3D"' + CCI.Pluck.Urls.LoginUrl + '">Log in =
to view your current course list</a></li>';
				} else {
			for (i=3D0;i<CCI.Pluck.College.MyCourses.length;i++) {
				var group =3D CCI.Pluck.College.MyCourses[i];
				html +=3D '<li><a href=3D"/section/college01?plckBlogId=3D' + =
group.CommunityGroup.BlogKey.Key + '">' + =
group.CommunityGroup.Title.replace(/^(.+?):(.*)$/,"$2") + ': ' + =
group.CommunityGroup.Description + '</a>';
				if (group.MembershipTier =3D=3D "Manager") {
					html +=3D '<p class=3D"cci-college-new-post"><a =
href=3D"/section/college01?plckBlogId=3D' + =
group.CommunityGroup.BlogKey.Key + =
'&plckBlogPage=3DBlogPostCreate&plckRedirectUrl=3D' + =
CCI.Pluck.Urls.GlobalSiteUrl + '/section/college01?plckBlogId=3D' + =
group.CommunityGroup.BlogKey.Key + '">New Post</a></p>';
						}
				html +=3D '<ul><li>Latest post: <span =
class=3D"cci-college-latest-post" =
id=3D"'+group.CommunityGroup.BlogKey.Key+'"></span></li></ul></li>';
					}
				}
				html +=3D "</ul>";
				insertEl.innerHTML =3D html;
				}
			var courseBlogs =3D $(".cci-college-latest-post");
			for (blogIdx =3D 0;blogIdx<courseBlogs.length;blogIdx++) {
				CCI.Pluck.College.getPosts({blogKeyEl:courseBlogs[blogIdx]});
				}
			}
		};

CCI.Pluck["Reactions"] =3D {
	getArticleReactions: function(bag) {
	bag =3D bag || {};
	var articleCommentsEl =3D bag.articleCommentsEl || 0;
	var articleCommentsClass =3D bag.articleCommentsClass || 0;
	var articleCommentsTag =3D bag.articleCommentsTag || 0;
	if (!articleCommentsEl || !articleCommentsClass || !articleCommentsTag) =
{
		return false;
	}
=09
	var articleReactionsCallback =3D function(responseBatch) {
//	console.dir(responseBatch);
	// loop through the responses returned in the responseBatch
	for (i=3D0;i<responseBatch.Responses.length;i++) {
=09
		// get the response object=09
		var response =3D responseBatch.Responses[i];
		=09
		// if the response is an article, format the HTML to be inserted
		if (response.Article) {
			// console.dir(response.Article);
			=09
			// get the article comments from the response... all the available =
properties for the article object are documented
			var articleComments =3D response.Article.Comments.NumberOfComments;
				=09
			// format the html
			var articleCommentsHtml =3D "<a =
href=3D"+response.Article.PageUrl+">";
				if(articleComments =3D=3D "0"){
					articleCommentsHtml +=3D "0 comments";
				}
				else if (articleComments =3D=3D "1") {
					articleCommentsHtml +=3D "1 comment";
					}=20
				else {
					articleCommentsHtml +=3D articleComments + " comments";
					}
				=09
			articleCommentsHtml +=3D "</a>";
		=09
			// get the element that the HTML will be inserted into
			var articleElement =3D bag.articleCommentsEl + =
response.Article.ArticleKey.Key;
		=09
			// insert the HTML
			document.getElementById(articleElement).innerHTML =3D =
articleCommentsHtml;
			}
		}
	};=09
=09
	var articleClassName =3D bag.articleCommentsClass;	// name of the class =
that identifies an article we want reactions for
	var articleReactionsArray =3D []; 				// an empty array that will hold =
article IDs we want
=09
	// put all <a> tags into an array
	var articleArray =3D =
document.getElementsByTagName(bag.articleCommentsTag);
	=09
	// loop through articleArray and dump tags matching our class name into =
articleReactionsArray
	for (i=3D0;i<articleArray.length;i++) {
		var thisArticle =3D articleArray[i];
		if (thisArticle.className.indexOf(articleClassName) > -1) {
			=
articleReactionsArray.push(thisArticle.id.replace(bag.articleCommentsEl,"=
"));
			}
	}

	// SiteLife limits batches to 20 requests,=20
	// so we have to check if there are more than 20 links on the page=20
	// and if so divide them into separate batches...

	// how many articles will be requested?
	var numArticles =3D articleReactionsArray.length;
=09
	// how many batches will we need?
	var numBatches =3D Math.ceil(numArticles / 20);
=09
	// loop through and format request batches
	for (j=3D0;j<numBatches;j++) {
	=09
		// create the RequestBatch
		var requestBatch =3D new RequestBatch();
	=09
		// determine the starting point and limit point depending on where we =
are in the articleReactionsArray
		var start =3D 0;
		if (j>0) {
			start =3D j * 20;
			start =3D Math.ceil(start);
		}
		var limit =3D start + 20;
	=09
		// add the articleKey to the RequestBatch
		for (k=3Dstart;k<limit;k++) {
			if (articleReactionsArray[k]) {
				var articleKey =3D articleReactionsArray[k];
				requestBatch.AddToRequest(new ArticleKey(articleKey));
			}
		}
	=09
		// send the RequestBatch
		requestBatch.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, =
articleReactionsCallback);
		}
=09
	}
=09
};
 =09
CCI.Pluck["Users"] =3D {
		currentUserWidget: function(bag) {
		bag =3D bag || {};
	//	console.dir(bag);
		var pluckResponseDiv =3D bag.pluckResponseDiv || 0;
		var clickshareResponseDiv =3D bag.clickshareResponseDiv || 0;
		var clickshareIsDefault =3D bag.clickshareIsDefault || 0;
		var guestResponseDiv =3D bag.guestResponseDiv || 0;
		var elDisplayStyle =3D bag.elDisplayStyle || "block";
		var html =3D "";
	=09
		var cb =3D function(r) {
		//	if (console) { console.dir(r); }
			if (!pluckResponseDiv || r.Responses[0].User.DisplayName =3D=3D =
"anonymous" || r.Responses[0].User.DisplayName =3D=3D =
r.Responses[0].User.UserKey) {
				if (clickshareIsDefault && clickshareResponseDiv) {
				=09
					var csdemos =3D new CCI.util.getCSCookie();
				//	if (console) { console.dir(csdemos); }
					if (csdemos.Cookie !=3D null) {
					//	console.log("clickshare output");
						html +=3D 'Welcome ' + csDemos.Cookie.nameFirst + '! <a =
href=3D"'+CCI.Pluck.Urls.LoginUrl+'"><strong>JOIN THE NEW =
COMMUNITY!</strong></a> | <a =
href=3D"'+CCI.Pluck.Urls.LogoutUrl+'"><strong>LOG OUT</strong></a>';
						document.getElementById(clickshareResponseDiv).innerHTML =3D html;
						document.getElementById(clickshareResponseDiv).style.display =3D =
elDisplayStyle;
					}
					else {
						// console.log("guest output");
						html +=3D '<span style=3D"color:#cc3300;">Not logged in to =
community.</span> <a href=3D"'+CCI.Pluck.Urls.LoginUrl+'"><strong>LOG =
IN</strong></a> or <a =
href=3D"'+CCI.Pluck.Urls.LoginUrl+'"><strong>REGISTER</strong></a>';
						document.getElementById(guestResponseDiv).innerHTML =3D html;
						document.getElementById(guestResponseDiv).style.display =3D =
elDisplayStyle;
						}
				} else {
				//	console.log("guest output");
				html +=3D '<span style=3D"color:#cc3300;">Not logged in to =
community.</span> <a href=3D"'+CCI.Pluck.Urls.LoginUrl+'"><strong>LOG =
IN</strong></a> or <a =
href=3D"'+CCI.Pluck.Urls.LoginUrl+'"><strong>REGISTER</strong></a>';
						document.getElementById(guestResponseDiv).innerHTML =3D html;
						document.getElementById(guestResponseDiv).style.display =3D =
elDisplayStyle;
						}
				}
			else {
				// console.log("pluck output");
				var user =3D r.Responses[0].User;
				var personaUrl =3D "/section/sitelife_profile?uid=3D" + =
user.UserKey.Key;
				html +=3D 'Welcome ' + user.DisplayName + '! <a =
href=3D"'+user.PersonaUrl+'"><strong>PROFILE</strong></a> | <a =
href=3D"'+CCI.Pluck.Urls.EditAccountUrl+'"><strong>ACCOUNT</strong></a> =
| <a href=3D"'+CCI.Pluck.Urls.LogoutUrl+'"><strong>LOG =
OUT</strong></a>';
				document.getElementById(pluckResponseDiv).innerHTML =3D html;
				document.getElementById(pluckResponseDiv).style.display =3D =
elDisplayStyle;
				}
		};
	=09
		var response =3D function() {
			if (pluckResponseDiv) {
				var rb =3D new RequestBatch();
				rb.AddToRequest(new UserKey());
				rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, cb);
			}
		};
	=09
		response();
	},
		FriendRequest: function(bag) {
//					console.dir(bag);
					bag =3D bag || {};
					var defaultCallback =3D function(re) {
							bag =3D bag || {};
							var updateEl =3D bag.updateEl || 0;
							if (updateEl) {
								updateEl.innerHTML =3D re.Messages[0].Message;
							}
							else {
							var friendMessageContainer =3D =
document.getElementById("pluck-persona-friend-message");
							friendMessageContainer.innerHTML =3D "Friendship " + =
re.Messages[0].Message;
								}
						};
						=09
				=09
		=09
					var cb =3D function(r) {
						var cu =3D r.Responses[0].User.UserKey.Key;
						var su =3D r.Responses[1].User.UserKey.Key;
						bag =3D bag || {};
						var callback =3D bag.cb || defaultCallback;
						var friendRequestAction =3D bag.friendRequestAction || "add";
						var friendKey =3D bag.friendKey || su;
//						console.log(friendKey);
//						console.dir(r);
						var friendAction =3D new RequestBatch();
						switch(friendRequestAction) {
							case "add":
								friendAction.AddToRequest(new AddFriendAction(new =
UserKey(friendKey)));
								break;
							case "remove":
								friendAction.AddToRequest(new RemoveFriendAction(new =
UserKey(friendKey)));
								break;
							case "approve":
								friendAction.AddToRequest(new ApproveFriendAction(new =
UserKey(friendKey), true));
								break;
							case "reject":
								friendAction.AddToRequest(new ApproveFriendAction(new =
UserKey(friendKey), false));
								break;
							}
//						console.dir(friendAction);
						friendAction.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, =
callback);
						};
				=09
					var users =3D new RequestBatch();
					users.AddToRequest(new UserKey());
					users.AddToRequest(new UserKey(gSiteLife.GetParameter("uid")));
					users.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, cb);
		},
		CommunityRequests: function(bag) {
					bag =3D bag || {};
					var action =3D bag.action || 0;
				=09
				=09
					if (!action) {
					=
CCI.Pluck.Users.MenuMessage({communityGroupKey:CCI.Pluck.Communities.Curr=
entCommunity.Key})
					}
				=09
					var request =3D function(r) {
				=09
					var groupKey =3D bag.groupKey || =
CCI.Pluck.Communities.CurrentCommunity.Key;
					var userKey =3D bag.userKey || r.Responses[0].User.UserKey.Key;
					if (groupKey && userKey && action) {
						var rb =3D new RequestBatch();
						switch(action) {
							case "join":
								rb.AddToRequest(new RequestCommunityGroupMembershipAction(new =
CommunityGroupKey(groupKey), new UserKey(userKey)));
								break;
							case "leave":
								userMenuMsg.innerHTML =3D "Leaving...";
								rb.AddToRequest(new UpdateCommunityGroupMembershipAction(new =
CommunityGroupKey(groupKey), new UserKey(userKey), new =
MembershipTier("NonMember"), false));
								break;
						}
						=
rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl,groupMembershipDaapiCb);
					}
				};
			=09
				var groupMembershipDaapiCb =3D function(r) {
					// console.dir(r);
					if (r.Messages[0].Message =3D=3D "ok") {
						=
CCI.Pluck.Users.MenuMessage({communityGroupKey:CCI.Pluck.Communities.Curr=
entCommunity.Key});
					}
				}
			=09
				var user =3D new RequestBatch();
				user.AddToRequest(new UserKey());
				user.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, request);
			=09
		},
		GroupProtect: function() {
				var doTierActions =3D function(tier, key) {
					var tier =3D tier || "NonMember";
					if (key =3D=3D "Anonymous") {
						tier =3D "Anonymous";
					}
					// console.dir(tier);
					// get elements
					var membersOnlyForms =3D $(".members-only-form");
					var membersOnlyFormsSolicit =3D $(".members-only-form-solicit");
					var membersOnlyFormsMessage =3D =
CCI.Pluck.Messages.Forms.MembersOnlyFormInput[tier]
				=09
					if (tier =3D=3D "Anonymous" || tier =3D=3D "NonMember" || tier =
=3D=3D "Pending" || tier =3D=3D "Banned") {
							$(membersOnlyFormsSolicit).each(function() {
								this.innerHTML =3D membersOnlyFormsMessage;
								$(this).show();
							});
						=09
							$(membersOnlyForms).each(function() {
								this.disabled =3D true;
							});
						} else {
							$(membersOnlyForms).each(function() {
								$(this).show();
							});
							}
					};
			=09
		=09
				var userRb =3D function() {
					var rb =3D new RequestBatch();
					rb.AddToRequest(new UserKey());
					rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, userCb);
				}
			=09
				var userCb =3D function(r) {
					var userKey =3D r.Responses[0].User.UserKey.Key;
					var checkGroup =3D new RequestBatch();
					checkGroup.AddToRequest(new CommunityGroupMembership(new =
CommunityGroupKey(CCI.Pluck.Communities.CurrentCommunity.Key), new =
UserKey(userKey)));
					checkGroup.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, =
checkGroupCb);
				}
			=09
				var checkGroupCb =3D function(r) {
//					console.dir(r);
					var memberTier =3D =
r.Responses[0].CommunityGroupMembership.MembershipTier;
					var userKey =3D =
r.Responses[0].CommunityGroupMembership.User.UserKey.Key;
					doTierActions(memberTier, userKey)
					}
			=09
				if (CCI.Pluck.Communities.CurrentCommunity.Key !=3D "c") {
				userRb();
				}
			=09
			=09
		},
		FriendPage: function(bag) {
				bag =3D bag || {};
				var friendPageCb =3D bag.cb || 0;
			=09
				if (friendPageCb) {
						var userCb =3D function(r) {
							var currentUser =3D r.Responses[0].User;
							var subjectUser =3D r.Responses[1].User;
					=09
							if (currentUser.UserKey.Key =3D=3D=3D subjectUser.UserKey.Key) {
								var numberPerPage =3D bag.numberPerPage || 5;
								var onPage =3D bag.onPage || 1;
								var isPendingList =3D bag.isPendingList || false;
								var filterKey =3D bag.filterKey || "";
								var filterValue =3D bag.filterValue || "";
								var rb =3D new RequestBatch();
								rb.AddToRequest(new UserKey());
								rb.AddToRequest(new FriendPage(new =
UserKey(currentUser.UserKey.Key), numberPerPage, onPage, isPendingList, =
filterKey, filterValue));
								rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, friendPageCb);
								}
							};
				=09
					var userRequest =3D new RequestBatch();
					userRequest.AddToRequest(new UserKey());
					userRequest.AddToRequest(new =
UserKey(gSiteLife.GetParameter("uid")));
					userRequest.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, userCb);
			}
		},
		StatusUpdates: {
			get: function(bag) {

				bag =3D bag || {};
				var updateEl =3D bag.updateEl || 0;
				var dateEl =3D bag.dateEl || 0;
			=09
				var getStatusUpdateCb =3D function(r) {
//						console.dir(r);
						customItem =3D =
r.Responses[0].CustomCollectionPage.Items[0].CustomItem;
						container =3D document.getElementById(updateEl);
						container.innerHTML =3D customItem.Content;
						if (dateEl) {
						dateContainer =3D document.getElementById(dateEl);
						dateContainer.innerHTML =3D customItem.LastUpdated;
						}
					=09
				}
			=09
				var user =3D bag.user || 0;
				if (user && getStatusUpdateCb) {
				var st =3D new CustomCollectionKey("profile_userStatus_" + =
user.UserKey.Key);
				var getStatusUpdateRb =3D new RequestBatch();
				getStatusUpdateRb.AddToRequest(new CustomCollectionPage(st, 1, 1, =
"PositionDescending"));
			=09
				getStatusUpdateRb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, =
getStatusUpdateCb);
				}
			},
		=09
			deleteStatusUpdate: function(bag) {
				// console.log("deleteStatusUpdate")
				bag =3D bag || {};
				var itemToDelete =3D bag.itemToDelete || 0;
				if (!itemToDelete) { return false; }
			=09
				var userCb =3D function(UserResponse) {
				//	console.log("deleteStatusUpdate - userCb")
				//	console.dir(UserResponse)
				=09
					var cuKey =3D UserResponse.Responses[0].User.UserKey.Key;
					var cuTier =3D UserResponse.Responses[0].User.UserTier;
					var itemAuthorKey =3D =
UserResponse.Responses[1].CustomItem.Author.UserKey.Key;
					if (cuKey =3D=3D=3D itemAuthorKey || cuTier =3D=3D "Editor") {
						var confirmDelete =3D confirm('Are you sure you want to delete the =
status update, "' + UserResponse.Responses[1].CustomItem.Content + '" =
?');
						if (confirmDelete) {		=09
						var groupsCb =3D function(GroupsResponse) {
						//	console.log("GroupsResponse");
						//	console.dir(GroupsResponse);
						if (GroupsResponse.Responses[0]) {
							if (GroupsResponse.Responses[0].CommunityGroupMembershipPage) {
						var userGroupsToUpdate =3D [];
						var userGroups =3D =
GroupsResponse.Responses[0].CommunityGroupMembershipPage.CommunityGroupMe=
mberships;
							for (i=3D0;i<userGroups.length;i++) {
							groupKey =3D userGroups[i].CommunityGroup.CommunityGroupKey.Key;
							CCI.Pluck.Collections.RemoveFromCollection({
								collectionKey:"profile_userStatus_comm_"+groupKey,
								itemKey:itemToDelete
									});
								}
							}
						}
						CCI.Pluck.Collections.RemoveFromCollection({
								collectionKey:"profile_userStatus_ALL",
								itemKey:itemToDelete
							});
						CCI.Pluck.Collections.RemoveFromCollection({
								collectionKey:"profile_userStatus_"+itemAuthorKey,
								itemKey:itemToDelete
							});
						CCI.Pluck.Collections.WipeCustomItem({
								itemKey:itemToDelete
							});
					=09
						};
				=09
			=09
					var rb =3D new RequestBatch();
					rb.AddToRequest(new CommunityGroupMembershipPage(new =
UserKey(itemAuthorKey), 10, 1));
					rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, groupsCb);
						}
					}
				};
			=09
				var rb =3D new RequestBatch();
				rb.AddToRequest(new UserKey());
				rb.AddToRequest(new CustomItemKey(itemToDelete));
				rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, userCb);
			=09
			},
		=09
			update: function(bag) {
				bag =3D bag || {};
				var updateCb =3D bag.cb || (function() {});
				var userRequest =3D new RequestBatch();
				userRequest.AddToRequest(new UserKey());
						=09
				function doUpdate(r) {
				var user =3D r.Responses[0].User.UserKey.Key;
				var statusInput =3D bag.statusInput || 0;
				var statusInputEl =3D bag.statusInputEl || 0;
				var groupsToUpdate =3D bag.groupsToUpdate || [];
				//console.log("in update function -- groupsToUpdate")
				//console.dir(groupsToUpdate);
				if (!statusInput) {
					if (statusInputEl) {
						var statusInput =3D document.getElementById(statusInputEl).value;
					}
				}
				var clearStatus =3D bag.clearStatus || 0;
			=09
				if (clearStatus) {
					// todo: clear status
				}
			=09
				if (statusInput) {
					var timestamp =3D new Date();
					timestamp =3D timestamp.getTime();
					var rb =3D new RequestBatch();
				=09
					var userCollectionKey =3D "profile_userStatus_" + user;
					var userCollection =3D new CustomCollectionKey(userCollectionKey);		=
=09
					var itemKey =3D userCollectionKey + "_" + timestamp;
					var item =3D new CustomItemKey(itemKey);
					rb.AddToRequest(new UpdateCustomItemAction(item, itemKey, =
"userStatus_class", "Status Update", statusInput));
					rb.AddToRequest(new AddCustomCollectionAction(userCollection, =
userCollectionKey));
					rb.AddToRequest(new InsertIntoCollectionAction(userCollection, =
item, 0));
				=09
					var siteActivityCollectionKey =3D "profile_userStatus_ALL";
					var siteActivityCollection =3D new =
CustomCollectionKey(siteActivityCollectionKey);
					//var siteActivityItemKey =3D siteActivityCollectionKey + "_" + =
user + "_" + timestamp;
					//var siteActivityItem =3D new CustomItemKey(siteActivityItemKey);
					rb.AddToRequest(new UpdateCustomItemAction(item, itemKey, =
"userStatus_ALL_class", "", statusInput, false));
					rb.AddToRequest(new =
AddCustomCollectionAction(siteActivityCollection, =
siteActivityCollectionKey));
					rb.AddToRequest(new =
InsertIntoCollectionAction(siteActivityCollection, item, 0));
				=09
					for (i=3D0;i<groupsToUpdate.length;i++) {
						var groupActivityCollectionKey =3D =
"profile_userStatus_comm_"+groupsToUpdate[i];
						var groupActivityCollection =3D new =
CustomCollectionKey(groupActivityCollectionKey);
						//var groupActivityItemKey =3D groupActivityCollectionKey + "_" + =
user + "_" + timestamp;
						// var groupActivityItem =3D new =
CustomItemKey(groupActivityItemKey);
						rb.AddToRequest(new UpdateCustomItemAction(item, itemKey, =
"userStatus_"+groupsToUpdate[i]+"_class", "", statusInput, false));
						rb.AddToRequest(new =
AddCustomCollectionAction(groupActivityCollection, =
groupActivityCollectionKey));
						rb.AddToRequest(new =
InsertIntoCollectionAction(groupActivityCollection, item, 0));
					}
					rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, updateCb);
					}
				};
				userRequest.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl,doUpdate);
			=09
			},
		=09
			ProfilePage: function() {
								=09
					var friendMessage =3D function(r) {
//						console.dir(r);
						var friendStatus =3D r.Messages[0].Message;
						var openMessages =3D r.Responses[0].User.MessagesOpenToEveryone;
						var publicMessageContainer =3D =
document.getElementById("wall-public-messages-form-container") || 0;
						var friendMessageContainer =3D =
document.getElementById("pluck-persona-friend-message");
						friendMessageHtml =3D "";
						switch(friendStatus) {
							case "NotFriend":
								friendMessageHtml +=3D '<a href=3D"#" =
onclick=3D"CCI.Pluck.Users.FriendRequest({friendRequestAction:\'add\'});"=
>Request Friendship</a>';
								if (openMessages =3D=3D "False" && publicMessageContainer) {
									publicMessageContainer.innerHTML =3D "<p>This user only allows =
friends to post wall messages.</p>";
									$(publicMessageContainer).show();
								}
								if (openMessages =3D=3D "True" && publicMessageContainer) {
									$(publicMessageContainer).show();
								}
								break;
							case "Friend":
								friendMessageHtml +=3D '<a href=3D"#" =
onclick=3D"CCI.Pluck.Users.FriendRequest({friendRequestAction:\'remove\'}=
);">Remove Friendship</a>';
								break;
							case "Pending":
								friendMessageHtml +=3D 'Friendship Pending';
								if (openMessages =3D=3D "False" && publicMessageContainer) {
									publicMessageContainer.innerHTML =3D "<p>This user only allows =
friends to post wall messages.</p>";
									$(publicMessageContainer).show();
								}
								if (openMessages =3D=3D "True" && publicMessageContainer) {
									$(publicMessageContainer).show();
								}
								break;
							default:
								$(publicMessageContainer).show();
								break;
						}
						friendMessageContainer.innerHTML =3D friendMessageHtml;
					}
			=09
					var cb =3D function(r) {
//						console.dir(r);
						cu =3D r.Responses[0].User;
						su =3D r.Responses[1].User;

						if (cu.UserTier !=3D "Anonymous") {
						var isFriendRequest =3D new RequestBatch();
						isFriendRequest.AddToRequest(new IsFriend(new =
UserKey(su.UserKey.Key), new UserKey(cu.UserKey.Key)));
						isFriendRequest.AddToRequest(new UserKey(su.UserKey.Key));
						isFriendRequest.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, =
friendMessage);
						}

						var rb =3D new RequestBatch();
						rb.AddToRequest(new CommunityGroupMembershipPage(new =
UserKey(cu.UserKey.Key), 10, 1));
						if (cu.UserKey.Key =3D=3D=3D su.UserKey.Key) {
						=09
							if (document.getElementById("pluck-persona-edit")) {
								var editProfileLinkContainer =3D =
document.getElementById("pluck-persona-edit");
								var editProfileHtml =3D "";
								editProfileHtml +=3D '<p><a =
href=3D"'+CCI.Pluck.Globals.WidgetPath+'?template=3Dprofile&uid=3D'+cu.Us=
erKey.Key+'&plckPersonaPage=3DPersonaProfileEdit">'+CCI.Pluck.Messages.Pe=
rsona.EditPersona+'</a></p>';
								if (CCI.Pluck.Communities.CurrentCommunity.Category =3D=3D "dm") =
{
									editProfileHtml +=3D '<p><a =
href=3D"'+CCI.Pluck.Globals.WidgetPath+'?template=3Dprofile&uid=3D'+cu.Us=
erKey.Key+'&plckPersonaPage=3DAddCompany">'+CCI.Pluck.Messages.Persona.Ad=
dCompany+'</a></p>';
									}
								editProfileLinkContainer.innerHTML =3D editProfileHtml;
								}
						=09
							rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, statusUpdateCb);
						}
					}
				=09
					var statusUpdateCb =3D function(r) {
								var statusContainer =3D =
document.getElementById("pluck-user-status");
																						=09
								var userGroupsToUpdate =3D [];
								var userGroups =3D =
r.Responses[0].CommunityGroupMembershipPage.CommunityGroupMemberships;
												=09
								for (i=3D0;i<userGroups.length;i++) {
									=
userGroupsToUpdate.push(userGroups[i].CommunityGroup.CommunityGroupKey.Ke=
y);
								}
						=09
								var statusUpdateLinkContainer =3D =
document.getElementById("pluck-user-status-update");
								statusUpdateLink =3D =
document.getElementById("pluck-user-status-update-link");

							=09
								var statusFormContainer =3D =
document.getElementById("pluck-user-status-update-form-container");
								var statusForm =3D =
document.getElementById("pluck-user-status-form");
								var statusInput =3D =
statusForm.elements["pluck-user-status-form-input"];
								var statusSubmit =3D =
statusForm.elements["pluck-user-status-form-submit"];
								var statusCancel =3D =
document.getElementById("pluck-user-status-form-cancel");
								var statusTime =3D =
document.getElementById("pluck-user-status-time");
							=09
								statusUpdateLinkContainer.style.display =3D "inline";
							=09
							=09
								var refreshStatus =3D function() {
										statusContainer.style.display =3D "inline";
										statusFormContainer.style.display =3D "none";
										statusUpdateLinkContainer.style.display =3D "inline";
										statusTime.style.display =3D "inline";
									=09
			=09
										CCI.Pluck.Users.StatusUpdates.get({
											user:su,
											updateEl:"pluck-user-status",
											dateEl:"pluck-user-status-time"
										});
										return false;

								};
									=09
								var submitStatus =3D function() {
										CCI.Pluck.Users.StatusUpdates.update({
										statusInput:statusInput.value,
										groupsToUpdate:userGroupsToUpdate,
										cb:refreshStatus
										});
									}
							=09
								statusForm.onsubmit =3D function() {
									submitStatus();
									return false;
								}
									=09
								statusInput.onclick =3D function() {
									this.value =3D "";
								}
							=09
								statusCancel.onclick =3D function() {
									refreshStatus();
								}
							=09
								statusUpdateLink.onclick =3D function() {
									statusContainer.style.display =3D "none";
									statusFormContainer.style.display =3D "inline";
									statusInput.value =3D statusContainer.innerHTML;
									statusUpdateLinkContainer.style.display =3D "none";
									statusTime.style.display =3D "none";
								};
							=09
								statusSubmit.onclick =3D function() {
									submitStatus();
								}
					};
					var rb =3D new RequestBatch();
					rb.AddToRequest(new UserKey());
					rb.AddToRequest(new UserKey(gSiteLife.GetParameter("uid")));
					rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, cb);
				},
			=09
			Feed: {
				doFeed: function(bag) {
							bag =3D bag || {};
							var miniFeed =3D $(".wall-container");
						=09
							var cb =3D function(r) {
										// console.dir(r);
										var thisMiniFeedCustomItemKey =3D =
r.Responses[0].CommentPage.ArticleKey.Key;
//										console.log(thisMiniFeedCustomItemKey);
										var statusAuthor =3D =
r.Responses[1].CustomItem.Author.UserKey.Key;
										var currUser =3D r.Responses[2].User.UserKey.Key;
										var numberOfComments =3D =
r.Responses[0].CommentPage.NumberOfComments;

										var commentInputEl =3D =
document.getElementById("wall-comments-input-"+thisMiniFeedCustomItemKey)=
;
										var commentInputForm =3D =
document.getElementById("wall-comments-form-"+thisMiniFeedCustomItemKey);=

										var commentInputFormButton =3D =
document.getElementById("wall-comments-form-add-"+thisMiniFeedCustomItemK=
ey);
									=09
										if (currUser =3D=3D "anonymous") {
											commentInputEl.value =3D "Log in or register to comment";
											commentInputEl.disabled =3D true;
											commentInputFormButton.style.display =3D "none";
										}
									=09
										if (numberOfComments > 0) {
										var moreComments =3D numberOfComments - 1;
										var firstComment =3D r.Responses[0].CommentPage.Comments[0];
										var inputDiv =3D =
document.getElementById("wall-item-comment-"+thisMiniFeedCustomItemKey);
										var photoUrl =3D "/apps/pbcsi.dll/urlget?url=3D" + =
firstComment.Author.AvatarPhotoUrl;
										var authorUrl =3D =
document.getElementById("wall-item-author-url-"+thisMiniFeedCustomItemKey=
).href;
										var inputEl =3D inputDiv.getElementsByTagName("p")[0];
										var commentHtml =3D "";
										commentHtml +=3D "<img src=3D'"+photoUrl+"' width=3D30 />" +  =
firstComment.CommentBody + "<br /><a =
href=3D'"+firstComment.Author.PersonaUrl+"'>" + =
firstComment.Author.DisplayName + "</a> | " + firstComment.PostedAtTime;
										if (moreComments > 0) {
											commentHtml +=3D "<br /><a =
href=3D'"+firstComment.Author.PersonaUrl+"&plckPersonaPage=3DPersonaStatu=
sUpdates&statusUpdateId=3D"+thisMiniFeedCustomItemKey+"'>" + =
moreComments + " more comment";
											if (moreComments > 1) {
												commentHtml +=3D "s";
											}
											commentHtml +=3D "</a>";=20
										}
										inputEl.innerHTML =3D commentHtml;									=09
										inputDiv.style.display =3D "block";
										}
									=09
							};
								=09
							var attachCommentSubmit =3D function(miniFeedCustomItemKey) {
								=09
									var postCommentCb =3D function(r) {
//										console.dir(r);
										comments();
									};
								=09
							=09
									var attachEvent =3D function(r) {
										//console.dir(r);
										var currUserKey =3D r.Responses[0].User.UserKey.Key;
										var commentInputEl =3D =
document.getElementById("wall-comments-input-"+miniFeedCustomItemKey) || =
0;
										var personaCustomItem =3D =
miniFeedCustomItemKey.replace(/comm_(.+?)_userStatus/g,"userStatus");
										var inputForm =3D =
document.getElementById("wall-comments-form-"+personaCustomItem);
																			=09
										if (currUserKey !=3D "anonymous") {
										=09
											inputForm.onsubmit =3D function() {
													var commentInputEl =3D =
document.getElementById("wall-comments-input-"+miniFeedCustomItemKey) || =
0;
													if (commentInputEl.value =3D=3D "Write a comment..." || =
commentInputEl.value =3D=3D "") {
														alert("Please enter a comment");
														return false;
													}
													var authorName =3D =
document.getElementById("wall-item-author-"+miniFeedCustomItemKey);
													var authorUrl =3D =
document.getElementById("wall-item-author-url-"+miniFeedCustomItemKey);
													if (commentInputEl.value.length > 0) {
													var currUser =3D new UserKey();
													//var key =3D new ArticleKey(miniFeedCustomItemKey);
												=09
													var key =3D new ArticleKey(personaCustomItem);
													var onPageUrl =3D authorUrl.href + =
"&plckPersonaPage=3DPersonaStatusUpdates&statusUpdateId=3D" + =
personaCustomItem;
													var onPageTitle =3D authorName.innerHTML + "'s status =
update: \""+authorUrl.innerHTML+"\"";
													var commentBody =3D commentInputEl.value;
													commentInputEl.value =3D "";
													var rb =3D new RequestBatch();
													rb.AddToRequest(new CommentAction(key, onPageUrl, =
onPageTitle, commentBody));
													rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, =
postCommentCb);
													}
													return false;
													};
												=09
										=09
											//var submitCommentEl =3D =
document.getElementById("wall-comments-form-add-"+miniFeedCustomItemKey);=

											//$(submitCommentEl).show();
											}
											else {
												commentInputEl.value =3D "Log in to comment";
												inputForm.disabled =3D true;
											}
											=09
								};
							=09
								var currUser =3D new RequestBatch();
								currUser.AddToRequest(new UserKey());
								currUser.AddToRequest(new CustomItemKey(miniFeedCustomItemKey));
								currUser.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, =
attachEvent);
							};
										=09
							var comments =3D function() {

								for (i=3D0;i<miniFeed.length;i++) {
									var miniFeedContainer =3D miniFeed[i];
									var miniFeedItems =3D =
$(miniFeedContainer).children(".wall-item");
//									console.dir(miniFeedItems);

									for (m=3D0;m<miniFeedItems.length;m++) {
										if (miniFeedItems[m].id.indexOf("profile_userStatus") =3D=3D =
0) {
										var miniFeedCustomItemKey =3D miniFeedItems[m].id;
//										console.log("miniFeedCustomItemKey: " + =
miniFeedCustomItemKey);
										var personaCustomItem =3D =
miniFeedCustomItemKey.replace(/comm_(.+?)_userStatus/g,"userStatus");
										// console.log("PersonaCustomItem: " + personaCustomItem);
										//comm_5370d993-0cb2-4542-8b4d-3a98f509f7f3_
										// attachCommentSubmit(miniFeedCustomItemKey);
										attachCommentSubmit(personaCustomItem);
																							=09
										var rb =3D new RequestBatch();
										// var key =3D new ArticleKey(miniFeedCustomItemKey);
										var key =3D new ArticleKey(personaCustomItem);
									//	console.dir(key);
										// console.log(personaCustomItem);
										rb.AddToRequest(new CommentPage(key, 1, 1, =
"TimeStampDescending"));
										//rb.AddToRequest(new CustomItemKey(miniFeedCustomItemKey));
										rb.AddToRequest(new CustomItemKey(miniFeedCustomItemKey));
										rb.AddToRequest(new UserKey());
									//	console.dir(rb);
										rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, cb);
										}
									}
								}
							};
						=09
							comments();
					}
				}
			},
		=09
			MenuMessage: function(bag) {
				var userOptions =3D document.getElementById("menu-user-options");
				var userMenuMsg =3D "";
				communityGroupKey =3D bag.communityGroupKey || 0;
			=09
				var groupMembershipActions =3D function() {
					if (communityGroupKey) {
						var user =3D new UserKey();
						var group =3D new CommunityGroupKey(communityGroupKey);
						rb =3D new RequestBatch();
						rb.AddToRequest(user);
						rb.AddToRequest(group);
						rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, =
groupMembershipActionsCb);
						}
				};
				=09
				var groupMembershipActionsCb =3D function(r) {
//					console.dir(r);
					var user =3D r.Responses[0].User;
					var group =3D r.Responses[1].CommunityGroup;
					var userIsPending =3D group.HasPendingMembership;
					var reqTier =3D group.RequestingUsersMembershipTier;
					if (userIsPending =3D=3D "True") {
						reqTier =3D "Request Pending";
					}
					var userMenuMsg =3D "";
					var longReqTier =3D (function() {
						switch(reqTier) {
							case "NonMember":
								return "Visitor";
								break;
							case "Banned":
								return "Visitor";
								break;
							case "GroupAdmin":
								return "Administrator";
								break;
							default:
								return reqTier;
								break;
							}
						})();
					//console.log(reqTier);
					if (reqTier =3D=3D "NonMember" || userIsPending =3D=3D "True") {
						if (user.DisplayName =3D=3D "anonymous") {
							userMenuMsg +=3D "<a href=3D'"+CCI.Pluck.Urls.LoginUrl+"'>Log in =
/ Register</a>";
						}
						else {
							userMenuMsg +=3D '<a =
href=3D"'+user.PersonaUrl+'">'+user.DisplayName+'</a><br =
class=3D"clear-floats" /><ul><li>';
							if (userIsPending =3D=3D "True") {
								userMenuMsg +=3D '<a href=3D"#">Join request pending</a>';
							} else {
								userMenuMsg +=3D '<a href=3D"#" =
id=3D"user-menu-options-join-community">Join</a>';
							}
							userMenuMsg +=3D '</li><li><a href=3D"'+user.PersonaUrl+'">My =
profile</a></li></ul>';
						}
					}
					else {
						userMenuMsg =3D '<a href=3D"'+user.PersonaUrl+'">' + =
user.DisplayName + '</a><br class=3D"clear-floats" />\
							<ul>\
							<li><a href=3D"'+user.PersonaUrl+'">Community Member</li>\
							<li><a href=3D"'+user.PersonaUrl+'">My profile</a></li>\
							<li><a href=3D"'+CCI.Pluck.Urls.LogoutUrl+'">Log =
out</a></li></ul>';
					}
					userOptions.innerHTML =3D userMenuMsg;
					$("#user-menu-options-join-community").click(function() {
								=
CCI.Pluck.Users.CommunityRequests({action:"join",groupKey:group.Community=
GroupKey.Key,userKey:user.UserKey.Key});
							});
				=09
				=09
				};
			=09
				var userMembershipList =3D function() {
					var fillList =3D function(r) {
					=09
//						console.dir(r);
						var groups =3D =
r.Responses[0].CommunityGroupMembershipPage.CommunityGroupMemberships;
						var list =3D =
document.getElementById("community-main-menu-user-communities");
						listHtml =3D "";
						for (g=3D0;g<groups.length;g++) {
							groupSection =3D groups[g].CommunityGroup.Section;
							if (groupSection.indexOf("cdb-comm-") =3D=3D 0) {
//								console.log(groupSection);
								groupSection =3D groupSection.replace(/cdb-comm-/g,"");
//								console.log(groupSection);
								listHtml +=3D '<li><a =
href=3D"/section/'+groupSection+'?template=3Dcommunity">' + =
groups[g].CommunityGroup.Description + '</a></li>';
							}
						}
						if (listHtml.length > 0) {
							list.innerHTML =3D listHtml;
						} else {
							list.innerHTML =3D "<p>You have no community memberships</p>";
						}
					};
				=09
					var userCb =3D function(r) {
						cu =3D r.Responses[0].User.UserKey.Key
						var userOptionsHtml =3D "";
						if (cu !=3D "anonymous") {
							var currTemplate =3D gSiteLife.GetParameter("template");
							userOptionsHtml +=3D '<a =
href=3D"'+r.Responses[0].User.PersonaUrl+'"';
							if (currTemplate =3D=3D "profile") {
								userOptionsHtml +=3D ' class=3D"active"';
							}
							userOptionsHtml +=3D '>'+r.Responses[0].User.DisplayName+'</a><br =
class=3D"clear-floats" /><ul>\
							<li><a href=3D"'+r.Responses[0].User.PersonaUrl+'">My =
profile</a></li>\
							<li><a href=3D"'+CCI.Pluck.Urls.LogoutUrl+'">Log out</a></li>\
							</ul>';
							userOptions.innerHTML =3D userOptionsHtml;
						}
						var rb =3D new RequestBatch();
						rb.AddToRequest(new CommunityGroupMembershipPage(new UserKey(cu), =
10, 1));
						rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, fillList);
						};
				=09
					var user =3D new RequestBatch();
					user.AddToRequest(new UserKey());
					user.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, userCb);
				};
			=09
					switch(CCI.Pluck.Communities.CurrentCommunity.Key) {
						case "c":
							userMembershipList();
							break;
						default:
							groupMembershipActions();
							break;
					}
			},
		=09
			AddPersonaMessage: function() {
						=09
						document.getElementById("persona-message-form-submit").onclick =3D =
function() {
							var msgBody =3D 0;
							var msgInputEl =3D "wall-public-messages-form-input";
							if (msgInputEl) {
								var msgBody =3D document.getElementById(msgInputEl).value || 0;
							}
							var toUserKey =3D gSiteLife.GetParameter("uid") || 0;
						=09
							var cb =3D function(r) { =20
								// console.dir(r);
								var msgResponse =3D r.Messages[0].Message;
								if (msgResponse =3D=3D "ok") {
									location.href =3D location.href.replace(/#$/,"");
								}
								else if (msgResponse.indexOf("must be friends")) {
									alert("You must be a friend of this user to post a message.");
								}
							};
					=09
							if (toUserKey && msgBody) {
								var rb =3D new RequestBatch();
								rb.AddToRequest(new AddPersonaMessageAction(new =
UserKey(toUserKey), msgBody));
								rb.BeginRequest(CCI.Pluck.Urls.DaapiProcessUrl, cb);
								}
						};
			}
};
------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://crainsdetroit.com/includes/hbx.js

//hbx.js,HBX2.5,Copyright 1997 - 2008. Omniture, Inc. All Rights =
Reserved.  Omniture is a registered trademark of Omniture, Inc. in the =
United States, Canada, Japan, and the European Community.
/* INSERT CUSTOM EVENT CODE HERE */
// Send linkViews on page view.  Remove this code block to send =
linkViews as a separate request.
function _hbOnPrePV(req){
    for(var a=3D0;a<_IL(document.links);a++){
        if(_lvid.length+_lvpos.length<_lvm)
            _LV(document.links[a]);
        else break;
    }
    _ar +=3D "&lv.id=3D"+_lvid+"&lv.pos=3D"+_lvpos;
    _lvl=3D-1;=20
}

/* DO NOT CHANGE BELOW THIS LINE */
var _vjs=3D"HBX0250.11u";
var =
_dl=3D".exe,.zip,.wav,.wmv,.mp3,.mov,.mpg,.avi,.doc,.pdf,.xls,.ppt,.gz,.b=
in,.hqx,.dmg,.EXE,.ZIP,.WAV,.WMV,.MP3,.MOV,.MPG,.AVI,.DOC,.PDF,.XLS,.PPT,=
.GZ,.BIN,.HQX,.DMG";
function _NA(a){return new Array(a?a:0)}
var =
_mn=3D_hbq=3D"",_hbA=3D_NA(),_hud=3D"undefined",_huf=3D"function",_ec=3D_=
if=3D_ll=3D_hec=3D_hfs=3D_hfc=3D_hfa=3D_ic=3D_pC=3D_fc=3D_pv=3D0,_hbi=3D_=
hbs=3Dnew Image(),_hbin=3D_NA(),_pA=3D_NA();
_lvid=3D_lvpos=3D_lvl=3D"";_hbE=3D_D("hbE")?_hbE:"";_hbEC=3D_D("hbEC")?_h=
bEC:0;var _ex=3D"expires=3DWed, 1 Jan 2020 00:00:00 =
GMT",_lvm=3D300,_lidt=3D"lid",_lpost=3D"lpos",
_lida=3D"name",_pum=3D_erf=3D_hif=3D_halt=3D_fbu=3D0,__r=3D".referrer";
function _D(v){return(typeof =
eval("window._"+v)!=3D_hud)?eval("window._"+v):""}function =
_DD(v){return(typeof v!=3D_hud)?1:0}
function _A(v,c){return =
escape((_D("lc")=3D=3D"y"&&_DD(c))?_TL(v):v)}function __A(a){return =
unescape(a)}
function _B(){return 0}function _GP(){return =
(_IL(_D("protocol"))>0)?_protocol+"://":(location.protocol=3D=3D"https:"?=
"https://":"http://")}
function _IC(a,b,c){return a.charAt(b)=3D=3Dc?1:0}function =
_II(a,b,c){return a.indexOf(b,c?c:0)}function _IL(a){return =
a!=3D_hud?a.length:0}
function _IF(a,b,c){return a.lastIndexOf(b,c?c:_IL(a))}function =
_IP(a,b){return a.split(b)}
function _IS(a,b,c){return =
b>_IL(a)?"":a.substring(b,c!=3Dnull?c:_IL(a))}
function =
_RP(a,b,c,d){d=3D_II(a,b);if(d>-1){a=3D_RP(_IS(a,0,d)+","+_IS(a,d+_IL(b),=
_IL(a)),b,c)}return a}
function _TL(a){return a.toLowerCase()}function _TS(a){return =
a.toString()}function _TV(){_hbSend()}function _SV(a,b,c){_hbSet(a,b,c)}
function =
_VN(a,b,c){b=3D['C','P','R','D'];for(c=3D0;c<_IL(b);c++){if(_II(""+a,"_"+=
b[c]+"::")=3D=3D0)a=3Deval("_R"+b[c]+"V(_IS(a,4,_IL(a)))")}return a}
function _VS(a,b,c,d){eval("_"+a+"=3D'"+_VN(b)+"'")}
function =
_VC(a,b,c,d){b=3D_IP(a,",");for(c=3D0;c<_IL(b);c++){d=3D_IP(b[c],"|");_VS=
(d[0],(_D(d[0]))?_D(d[0]):d[1]?d[1]:"")}}
function =
_VL(a,b,c,d,e,f,g,h,i){e=3Dlocation.search;if(_IL(e)&&(_II(e,"&hbx.")+_II=
(e,"?hbx."))>-2){d=3D_NA();for(c=3D0;c<_hbEC;c++){d[_hbE[c]._N]=3Dc}e=3D_=
IS(e,1,_IL(e));
f=3D_IP(e,'&');for(c=3D0;c<_IL(f);c++){if(f[c].indexOf('hbx.')=3D=3D0){g=3D=
_IP(f[c],'=3D');h=3D_IS(g[0],_II(g[0],'.')+1,_IL(g[0]));if(_II(h,'.')>-1)=
{ i=3D_IP(h,'.');
if(!_DD(d[i[0]])){_hbEvent(i[0]);d[i[0]]=3D_hbEC-1}_hbE[d[i[0]]][i[1]]=3D=
__A(g[1]);}else{_hbE[0][h]=3D__A(g[1])}}}}
for(a=3D0;a<_hbEC;a++){_pv=3D_hbE[a];if(_pv._N=3D=3D"pv"){for(b in =
_pv){if(_EE(b)&&typeof _pv[b]!=3D_huf){_VS(b,_pv[b])}}}}
_VC("pn|PUT+PAGE+NAME+HERE,mlc|CONTENT+CATEGORY,elf|n,dlf|n,dft|n,pndef|t=
itle,ctdef|full,cp|null,hcn|")}_XT("Init");_VL();
function _ER(a,b,c){if(_erf++=3D=3D0){var d=3Dnew =
Image();d.src=3D_GP()+_gn+"/HG?hc=3D"+_mn+"&hb=3D"+_A(_acct)+"&hec=3D1&vj=
s=3D"+_vjs+"&vpc=3DERR&ec=3D1&err=3D"+
((typeof a=3D=3D"string")?_A(a+"-"+c):"Unknown");_XT("Error",a)}}
function =
_EE(a){return(a!=3D"_N"&&a!=3D"_C")?1:0}_EV(window,"error",_ER);
function _hbSend(c,a,i){a=3D"";_hec++;for(i in _hbA)if(typeof =
_hbA[i]!=3D_huf)a+=3D"&"+i+"=3D"+_hbA[i];var =
d=3D_hbq+"&hec=3D"+_hec+a+_hbSendEV();if(!_halt)_Q(d);else =
_halt=3D0;_hbA=3D_NA()}
function =
_hbSet(a,b,c,d,e){d=3D_II(_hbq,"&"+a+"=3D");if(d>-1){e=3D_II(_hbq,"&",d+1=
);e=3De>d?e:_IL(_hbq);if(a=3D=3D"n"||a=3D=3D"vcon"){_hbq=3D_IS(_hbq,0,d)+=
"&"+a+"=3D"+b+
_IS(_hbq,e);_hec=3D-1;if(a=3D=3D"n"){_pn=3Db}else{_mlc=3Db}}else{_hbq=3D_=
IS(_hbq,0,d)+_IS(_hbq,e)}}if((a!=3D"n")&&(a!=3D"vcon"))_hbA[a]=3D(c=3D=3D=
0||a=3D=3D"seg")?b:_A(b)}
function =
_hbRedirect(a,b,c,d,e,f,g){_SV("n",a);_SV("vcon",b);if(_DD(d)&&_IL(d)>0){=
d=3D_IC(d,0,"&")?_IS(d,1,_IL(d)):d;e=3D_IP(d,"&");for(f=3D0;f<_IL(e);
f++){g=3D_IP(e[f],"=3D");_SV(g[0],g[1])}}_TV();if(c!=3D""){_SV("hec",0);s=
etTimeout("location.href=3D'"+c+"'",500)}}
function _hbHalt(){_halt=3D1}=09
function =
_hbSendEV(a,b,c,d,e,f,x,i){a=3D'',c=3D'',e=3D_IL(_hbE);for(b=3D0;b<e;b++)=
{c=3D_hbE[b];for(var d in c){if(_EE(d)&&c._N!=3D""&&c._N!=3D"pv"){
a+=3D"&"+c._N+"."+d+"=3D"+_A(_VN(c[d]))}}}_hbE=3D_NA();_hbEC=3D0;return =
a}
function =
_hbM(a,b,c,d){_SV('n',a);_SV('vcon',b);if(_IL(c)>0)_SV(c,d);_TV()}
function _hbPageView(p,m){_hec=3D-1;_hbM(p,m,"")}
function _hbExitLink(n){_SV("el",n);_TV()}
function _hbDownload(n){_SV("fn",n);_TV()}
function =
_hbVisitorSeg(n,p,m){_SV("n",p);_SV("vcon",m);_SV("seg",n);_TV()}function=
 _hbCampaign(n,p,m){_hbM(p,m,"cmp",n)}
function _hbFunnel(n,p,m){_hbM(p,m,"fnl",n)}function =
_hbGoalPage(n,p,m){_hbM(p,m,"gp",n)}
function =
_hbLink(a,b,c){_SV("lid",a);if(_DD(b))_SV("lpos",b);_XT("Link","");_TV()}=

function =
_hbForm(a,b,c,d,e,f){if(_DD(c))_hlf=3Dc;_hfs=3D0,_fa=3D1,f=3D'Complete',_=
hfa=3D0;if(a=3D=3D0){f=3D'Abandon';_hfa=3D1}_XT("Form"+f,b)}
function =
_hbCookie(a,b,c,d){document.cookie=3Da+"=3D"+b+";path=3D/"+((_DD(c)=3D=3D=
1)?"; expires=3D"+c:"")+((_DD(d)=3D=3D1)?"; domain=3D"+d:"")}
function =
_LE(a,b,c,d,e,f,g,h,i,j,k,l){b=3D"([0-9A-Za-z\\-]*\\.)",c=3Dlocation.host=
name,d=3Da.href,h=3D'',i=3D'';eval("__f=3D/"+b+"*"+b+"/");if(_DD(__f)){__=
f.exec(c);
j=3D(_DD(_elf))?_elf:"";if(j!=3D"n"){if(_II(j,"!")>-1){h=3D_IS(j,0,_II(j,=
"!"));i=3D_IS(j,_II(j,"!")+1,_IL(j))}else{h=3Dj}}k=3D0;if(_DD(_elf)&&_elf=
!=3D"n"){
if(_IL(i)){l=3D_IP(i,",");for(g=3D0;g<_IL(l);g++)if(_II(d,l[g])>-1)return=
}if(_IL(h)){l=3D_IP(h,",");for(g=3D0;g<_IL(h);g++)if(_II(d,l[g])>-1)k=3D1=
}}
if(_II(a.hostname,RegExp.$2)<0||k){	e=3D_IL(d)-1;return =
_IC(d,e,'/')?_IS(d,0,e):d}}}
function =
_LD(a,b,c,d,e,f){b=3Da.pathname,d=3D'',e=3D'';b=3D_IS(b,_IF(b,"/")+1,_IL(=
b));c=3D(_DD(_dlf))?_dlf:"";if(c!=3D"n"){if(_II(c,"!")>-1){d=3D","+
_IS(c,0,_II(c,"!"));e=3D","+_IS(c,_II(c,"!")+1,_IL(c))}else{d=3D","+c}}f=3D=
_II(b,"?");b=3D(f>-1)?_IS(b,0,f):b;if(_IF(b,".")>-1){f=3D_IS(b,_IF(b,".")=
,_IL(b));
if(_II(_dl+d,f)>-1&&_II(e,f)<0){var =
dl=3Db;if(_DD(_dft)){if(_dft=3D=3D"y"&&a.name){dl=3Da.name}else =
if(_dft=3D=3D"full"){dl=3Da.pathname;if(!_IC(dl,0,'/'))dl=3D'/'+dl
}}return dl}}}
function =
_LP(a,b){for(b=3D0;b<_IL(a);b++){if(_IL(_lvl)<_lvm)_LV(a[b]);_EV(a[b],'mo=
usedown',_LT)}}
function =
_LV(a,b,c){b=3D_LN(a);c=3Db[0]+b[1];if(_IL(b[0])){_lvid+=3D_A(b[0])+",";_=
lvpos+=3D_A(b[1])+",";_lvl+=3Dc}}
function =
_LN(a,b,c,d){b=3Da.href;b+=3Deval("a."+_lida)?eval("a."+_lida):"";c=3D_LV=
P(b,_lidt);d=3D_LVP(b,_lpost);return[c,d]}
function =
_LT(e){if((e.which&&e.which=3D=3D1)||(e.button&&e.button=3D=3D1)){var =
a=3Ddocument.all?window.event.srcElement:this;for(var =
i=3D0;i<4;i++){if(a.tagName&&
_TL(a.tagName)!=3D"a"&&_TL(a.tagName)!=3D"area"){a=3Da.parentElement}}var=
 =
b=3D_LN(a),c=3D'',d=3D'';a.lid=3Db[0];a.lpos=3Db[1];if(_D("lt")&&_lt!=3D"=
manual"){if((a.tagName&&
_TL(a.tagName)=3D=3D"area")){if(!_IL(a.lid)){if(a.parentNode){if(a.parent=
Node.name)a.lid=3Da.parentNode.name;else =
a.lid=3Da.parentNode.id}}if(!_IL(a.lpos))
a.lpos=3Da.coords}else{if(_IL(a.lid)<1)a.lid=3D_LS(a.text?a.text:a.innerT=
ext?a.innerText:"");if(!_IL(a.lid)||_II(_TL(a.lid),"<img")>-1)a.lid=3D_LI=
(a)}}
if(!_IL(a.lpos)&&_D("lt")=3D=3D"auto_pos"&&a.tagName&&_TL(a.tagName)!=3D"=
area"){c=3Ddocument.links;for(d=3D0;d<_IL(c);d++){if(a=3D=3Dc[d]){a.lpos=3D=
d+1;break}}}
var _f=3D0,j=3D'',k=3D'',l=3D(a.protocol)?_TL(a.protocol):"";
if(l&&l!=3D"mailto:"&&l!=3D"javascript:"){j=3D_LE(a),k=3D_LD(a);if(_DD(k)=
)a.fn=3Dk;else if(_DD(j))a.el=3Dj}
if(_D("lt")&&_IC(_lt,0,"n")!=3D1&&_DD(a.lid)&&_IL(a.lid)>0){_SV("lid",a.l=
id);if(_DD(a.lpos))_SV("lpos",a.lpos);_f=3D1}if(_DD(a.fn)){_SV("fn",a.fn)=
;_XT("Download",a);_f=3D2}
else =
if(_DD(a.el)){_SV("el",a.el);_XT("ExitLink",a);_f=3D1}if(_f>0){_XT("Link"=
,a);_TV()}}}
function =
_LVP(a,b,c,d,e){c=3D_II(a,"&"+b+"=3D");c=3Dc<0?_II(a,"?"+b+"=3D"):c;if(c>=
-1){d=3D_II(a,'&',c+_IL(b)+2);e=3D_IS(a,c+_IL(b)+2,d>-1?d:_IL(a));
if(!_ec){if(!(_II(e,"//")=3D=3D0))return e}else return e}return ""}
function _LI(a){var =
b=3D""+a.innerHTML,bu=3D_TL(b),i=3D_II(bu,"<img");if(bu&&i>-1){eval("__f=3D=
/ src\s*=3D\s*['\"]?([^'\" ]+)['\"]?/i");__f.exec(b);
if(RegExp.$1)b=3DRegExp.$1}return b}
function _LSP(a,b,c,d){d=3D_IP(a,b);return d.join(c)}
function =
_LS(a,b,c,d,e,f,g){c=3D_D("lim")?_lim:100;b=3D(_IL(a)>c)?_A(_IS(a,0,c)):_=
A(a);b=3D_LSP(b,"%0A","%20");b=3D_LSP(b,"%0D","%20");b=3D_LSP(b,"%09","%2=
0");
c=3D_IP(b,"%20");d=3D_NA();e=3D0;for(f=3D0;f<_IL(c);f++){g=3D_RP(c[f],"%2=
0","");if(_IL(g)>0){d[e++]=3Dg}}b=3Dd.join("%20");return __A(b)}
function =
_EM(a,b,c,d){a=3D_D("fv");b=3D_II(a,";"),c=3DparseInt(a);d=3D3;if(_TL(a)=3D=
=3D"n"){d=3D999;_fv=3D""}else =
if(b>-1){d=3D_IS(a,0,b);_fv=3D_IS(a,b+1,_IL(a))}
else if(c>0){d=3Dc;_fv=3D""}return d}
function _FF(e){var a=3D(_bnN)?this:_EVO(e);_hlf=3D(a.lf)?a.lf:""}
function =
_FU(e){if(_hfs=3D=3D0&&_IL(_hlf)>0&&_fa=3D=3D1){_hfs=3D1;if(_hfc&&!_hfa){=
_SV("sf","1");_XT("FormComplete",_hfc)}else =
if(_IL(_hlf)>0){_SV("lf",_hlf);_XT("FormAbandon",_hlf)}
_TV();_hlf=3D"",_hfs=3D0,_hfc=3D0}}
function _FO(e){var =
a=3Dtrue;if(_DD(this._FS))eval("try{a=3Dthis._FS()}catch(e){}");if(a!=3Df=
alse)_hfc=3D1;return a}
function _FA(a,b,c,d,e,f,g,h,i,ff,fv,s){b=3Da.forms;ff=3Dnew =
Object();f=3D_EM();for(c=3D0;c<_IL(b);c++){ff=3Db[c],d=3D0,s=3D0,e=3Dff.e=
lements;
g=3Dff.name?ff.name:"forms["+c+"]";for(h=3D0;h<_IL(e);h++){if(e[h].type&&=
"hiddenbuttonsubmitimagereset".indexOf(e[h].type)<0&&d++>=3Df)break}if(d>=
=3Df){_fa=3D1;
for(h=3D0;h<_IL(e);h++){i=3De[h];if(i.type&&"hiddenbuttonsubmitimagereset=
".indexOf(i.type)<0){i.lf=3Dg+".";i.lf+=3D(i.name&&i.name!=3D"")?i.name:"=
elements["+h+"]";
_EV(i,"focus",_FF)}}ff._FS=3Dnull;ff._FS=3Dff.onsubmit;if(_DD(ff._FS)&&ff=
._FS!=3Dnull){ff.onsubmit=3D_FO}else =
if(!(_bnN&&_bv<5)&&_hM&&!(_bnI&&!_I5)){if((!_bnI)||
(_II(navigator.userAgent,"Opera")>-1)){ff.onsubmit=3D_FO}else{_EV(ff,"sub=
mit",_FO);
eval("try{document.forms["+c+"]._FS=3Ddocument.forms["+c+"].submit;docume=
nt.forms["+c+"].submit=3D_FO;throw ''}catch(E){}")}}}}}
function _GR(a,b,c,d){if(!_D("hrf"))return =
a;if(_II(_hrf,"http",0)>-1)return =
_hrf;b=3Dwindow.location.search;b=3D_IL(b)>1?_IS(b,1,_IL(b)):"";
c=3D_II(b,_hrf+"=3D");if(c>-1){ =
d=3D_II(b,"&",c+1);d=3Dd>c?d:_IL(b);b=3D_IS(b,c+_IL(_hrf)+1,d)}return(b!=3D=
_hud&&_IL(b)>0)?b:a}
function =
_PO(a,b,c,d,e,f,g){d=3Dlocation,e=3Dd.pathname,f=3D_IS(e,_IF(e,"/")+1),g=3D=
document.title;if(a&&b=3D=3Dc){return(_pndef=3D=3D"title"&&g!=3D""&&g!=3D=
d&&
!(_bnN&&_II(g,"http")>0))?g:f?f:_pndef}else{return =
b=3D=3Dc?(e=3D=3D""||e=3D=3D"/")?"/":_IS(e,(_ctdef!=3D"full")?_IF(e,"/",_=
IF(e,"/")-2):_II(e,"/"),_IF(e,"/"))
:(b=3D=3D"/")?b:((_II(b,"/")?"/":"")+(_IF(b,"/")=3D=3D_IL(b)-1?_IS(b,0,_I=
L(b)-1):b))}}
function _PP(a,b,c,d){return =
""+(c>-1?_PO(b,_IS(a,0,c),d)+";"+_PP(_IS(a,c+1),b,_II(_IS(a,c+1),";")):_P=
O(b,a,d))}
_mlc=3D_PP(_mlc,0,_II( =
_mlc,";"),"CONTENT+CATEGORY");_pn=3D_PP(_pn,1,_II(_pn,";"),"PUT+PAGE+NAME=
+HERE");
function _NN(a){return _D(a)!=3D"none"}
function _E(a){var b=3D"";var d=3D_IP(a,",");for(var =
c=3D0;c<_IL(d);c++)b+=3D"&"+d[c]+"=3D"+_A(_D(d[c]));return b}
function =
_F(a,b){return(!_II(a,"?"+b+"=3D"))?0:_II(a,"&"+b+"=3D")}function =
_G(a,b,c,d){var =
e=3D_F(a,b);if(d&&e<0&&top&&window!=3Dtop){e=3D_F(_tls,b);
if(e>-1)a=3D_tls};return(e>-1)?_IS(a,e+2+_IL(b),(_II(a,"&",e+1)>-1)?_II(a=
,"&",e+1):_IL(a)):c}
function =
_H(a,b,c){if(!a)a=3Dc;if(_I5||_N6){eval("try{_vv=3D_G(location.search,'"+=
a+"','"+b+"',1)}"+__c+"{}")}else{_vv=3D_G(location.search,a,b,1)}return =
__A(_vv)}
function =
_I(a,b,c,d){__f=3D_IS(a,_II(a,"?"));if(b){if(_I5||_N6){eval("try{_hra=3D_=
G(__f,_hqsr,_hra,0)}"+__c+"{}")}else{_hra=3D_G(__f,_hqsr,_hra,0)}};
if(c&&!_hra){if(_I5||_N6){eval("try{_hra=3D_G(location.search,_hqsp,_hra,=
1)}"+__c+"{}")}else{_hra=3D_G(location.search,_hqsp,_hra,1)}};
if(d&&!_hra)_hra=3Dd;return _hra}function =
_J(a,b,c,d){c=3D_II(a,"CP=3D");d=3D_II(a,b,c+3);return(c<0)?"null":_IS(a,=
c+3,(d<0)?_IL(a):d)}
var =
_rf=3D_A(eval("document"+__r)),_et=3D0,_oe=3D0,_we=3D0,_ar=3D"",_hM=3D(!(=
_II(navigator.userAgent,"Mac")>-1)),_tls=3D"";
_bv=3DparseInt(navigator.appVersion);_bv=3D(_bv>99)?(_bv/100):_bv;var =
__f,_hrat=3D_D("hra"),_hra=3D"",__c=3D"catch(_e)",_fa=3D0,_hlfs=3D0,_hoc=3D=
0,
_hlf=3D'',_ce=3D'',_ln=3D'',_pl=3D'',_bn=3Dnavigator.appName,_bn=3D(_II(_=
bn,"Microsoft")?_bn:"MSIE"),_bnN=3D(_bn=3D=3D"Netscape"),_bnI=3D(_bn=3D=3D=
"MSIE"),
_hck=3D"*; path=3D/; "+(_D("cpd")&&_D("cpd")!=3D""?(" =
domain=3D."+_D("cpd")+"; =
"):"")+_ex,_N6=3D(_bnN&&_bv>4),_I5=3Dfalse,_ss=3D"na",_sc=3D"na",_sv=3D11=
,_cy=3D"u",_hp=3D"u",_nc=3D"",_np=3D"",
_tp=3D_D("ptc");if(_bn=3D=3D"MSIE"){var =
_nua=3Dnavigator.userAgent,_is=3D_II(_nua,_bn),_if=3D_II(_nua,".",_is);if=
(_if>_is)_I5=3D_nua.substring(_is+5,_if)>=3D5}
if(_N6||_I5)eval("try{_tls=3Dtop.location.search}catch(_e){}")
function =
_PV(){_dcmpe=3D_H(_D("dcmpe"),_D("dcmpe"),"DCMPE");_dcmpre=3D_H(_D("dcmpr=
e"),_D("dcmpre"),"DCMPRE");_vv=3D"";_cmp=3D_H(_D("cmpn"),_D("cmp"),"CMP")=
;
_gp=3D_H(_D("gpn"),_D("gp"),"GP");_dcmp=3D_H(_D("dcmpn"),_D("dcmp"),"DCMP=
");if(_II(_cmp,"SFS-")>-1){document.cookie=3D"HBCMP=3D"+_cmp+"; =
path=3D/;"+
(_D("cpd")&&_D("cpd")!=3D""?(" domain=3D."+_D("cpd")+"; =
"):"")+_ex}if(_bnI&&_bv>3)_ln=3Dnavigator.userLanguage;
if(_bnN){if(_bv>3)_ln=3Dnavigator.language;if(_bv>2)for(var =
i=3D0;i<_IL(navigator.plugins);i++)_pl+=3Dnavigator.plugins[i].name+":"};=

_nc=3D(_DD(navigator.cpuClass))?navigator.cpuClass:((_DD(navigator.oscpu)=
)?navigator.oscpu:"u");_np=3D(_DD(navigator.platform))?navigator.platform=
:"u";
_cp=3D_D("cp");if(location.search&&_TL(_cp)=3D=3D"null")_cp=3D_J(location=
.search,"&");if(_II(document.cookie,"CP=3D")>-1){
_ce=3D"y";_hd=3D_J(document.cookie,"*");if(_TL(_hd)!=3D"null"&&_cp=3D=3D"=
null"){_cp=3D_hd}else{document.cookie=3D"CP=3D"+_cp+_hck}}else{document.c=
ookie=3D"CP=3D"+_cp+_hck;
_ce=3D(_II(document.cookie,"CP=3D")>-1)?"y":"n"};if(window.screen){_sv=3D=
12;_ss=3Dscreen.width+"*"+screen.height;_sc=3D_bnI?screen.colorDepth:scre=
en.pixelDepth;
if(_sc=3D=3D_hud)_sc=3D"na"};_ra=3D_NA();if(_ra.toSource||(_bnI&&_ra.shif=
t))_sv=3D13;if(!(_bnN&&_bv<5)&&!_bnI&&_hM)eval("try{throw =
_sv=3D14}catch(e){}");
if((new =
Date()).toDateString)_sv=3D15;if(_hbA.every)_sv=3D16;if(_I5&&_hM){if(_II(=
""+navigator.appMinorVersion,"Privacy")>-1)_ce=3D"p";
if(document.body&&document.body.addBehavior){eval("try{document.body.addB=
ehavior('#default#homePage');_hp=3Ddocument.body.isHomePage(location.href=
)?'y':'n'}catch(e){}");
eval("try{document.body.addBehavior('#default#clientCaps');_cy=3Ddocument=
.body.connectionType}catch(e){}")}};var =
_hcc=3D(_DD(_hcn))?_D("hcv"):"";if(!_D("gn"))_gn=3D"ehg.hitbox.com";
if(_D("ct")&&!_D("mlc"))_mlc=3D_ct;_XT("PrePVR","");_ar=3D_GP()+_gn+"/HG?=
hc=3D"+_mn+"&hb=3D"+_A(_acct)+"&cd=3D1&hv=3D6&n=3D"+_A(_pn,1)+"&con=3D&vc=
on=3D"+_A(_mlc,1)+"&tt=3D"
+_D("lt")+"&ja=3D"+(navigator.javaEnabled()?"y":"n")+"&dt=3D"+(new =
Date()).getHours()+"&zo=3D"+(new Date()).getTimezoneOffset()+"&lm=3D"+
eval("try{Date.parse(document.lastModified)}catch(E){}")+(_tp?("&pt=3D"+_=
tp):"")+_E((_bnN?"bn,":"")+"ce,ss,sc,sv,cy,hp,ln,np,nc,vpc,vjs,hec,pec,cm=
p,gp,dcmp,dcmpe,dcmpre,cp,fnl")
+"&seg=3D"+_D("seg")+"&epg=3D"+_D("epg")+"&cv=3D"+_A(_hcc)+"&gn=3D"+_A(_D=
("hcn"))+"&ld=3D"+_A(_D("hlt"))+"&la=3D"+_A(_D("hla"))+"&c1=3D"+_A(_D("hc=
1"))+"&c2=3D"+
_A(_D("hc2"))+"&c3=3D"+_A(_D("hc3"))+"&c4=3D"+_A(_D("hc4"))+"&customerid=3D=
"+_A(_D("ci")?_ci:_D("cid"))+"&ttt=3D"+_lidt+","+_lpost+","+_lida;
if(_I5||_N6){eval("try{_rf=3D_A(top.document"+__r+")+''}"+__c+"{_rf=3D_A(=
document"+__r+")+''}")}
else{if(top.document&&_IL(parent.frames)>1){_rf=3D_A(eval("document"+__r)=
)+""}else =
if(top.document){_rf=3D_A(eval("top.document"+__r))+""}}if((_rf=3D=3D_hud=
)||
(_rf=3D=3D""))_rf=3D"bookmark";_rf=3D__A(_rf);_rf=3D_GR(_rf);_hra=3D_I(_r=
f,_D("hqsr"),_D("hqsp"),_hrat);_ar+=3D"&ra=3D"+_A(_hra)+_hbSendEV()+"&rf=3D=
";_ar+=3D(_IL(_ar)+_IL(_rf)<2048)?_A(_rf):"bookmark";
_ar+=3D"&pu=3D";if(_pum>0&&_IL(_ar)+parseInt(_pum)>2048)_pum=3D2000-_IL(_=
ar);_ar+=3D_A(_IS(eval("document.URL")+"",0,_pum));if(_IL(_ar)+_IL(_pl)<2=
048)_ar+=3D"&pl=3D"+_A(_pl);
_XT("PrePV",_ar);if(_D("onlyMedia")!=3D"y")_hbi.src=3D_ar+"&hid=3D"+Math.=
random();_hbq=3D_IS(_ar,0,_II(_ar,"&hec"));_XT("PostPV",_ar);_hbE=3D_NA()=
}_PV();
function =
_Q(a){a+=3D"&hid=3D"+Math.random();if(_hif=3D=3D0){_hif=3D1;_hbs=3D"";_hb=
s=3Dnew Image();_hbs.src=3Da}else{_hif=3D0;_hbi=3D"";_hbi=3Dnew =
Image();_hbi.src=3Da}}
function =
__X(a){if(_ec=3D=3D0){_ec=3D1;a=3Ddocument;if(_NN("lt")||_NN("dlf")||_NN(=
"elf"))_LP(a.links);if(_NN("fv"))_FA(a);
if(_NN("lt")&&_IL(_lvl)>0&&_lvl!=3D-1){_SV('lv.id',_lvid,1);_SV('lv.pos',=
_lvpos,1);_TV()}}}
function =
_EV(a,b,c,d){if(a.addEventListener){a.addEventListener(b,c,false)}else =
if(a.attachEvent){a.attachEvent(((d=3D=3D1)?"":"on")+b,c)}}
function _EVO(e){return document.all?window.event.srcElement:this}=20
function =
_RCV(a,b,c,d){b=3Ddocument.cookie;c=3D_II(b,a+"=3D");d=3D"";if(c>-1){d=3D=
_II(b,";",c+1);d=3D(d>0)?d:_IL(b);d=3D(d>c)?_IS(b,c+_IL(a)+1,d):""}return=
 d}
function _RDV(a,b,c,d){var e=3D_RCV(a,b,c,d);_hbCookie(a,"","Wed, 1 Jan =
1900 00:00:00 GMT");return e}
function _RRV(a){return(__A(_LVP(eval("document"+__r),a)))}function =
_RPV(a){return(__A(_LVP(document.URL,a)))}
function _XT(a,b){if(typeof =
_D("hbOn"+a)=3D=3D_huf)eval("_hbOn"+a+"(b)")}
setTimeout("__X()",3000);_EV(window,"load",__X);if(_fbu)_EV(window,(_bnI&=
&_DD(window.onbeforeunload))?"beforeunload":"unload",_FU);else =
_EV(window,"unload",_FU);

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://oas-central.realmedia.com/RealMedia/ads/adstream_jx.cgi/www.detroitbusiness.com/index/34159961307@Position4

document.write ('<A =
HREF=3D"http://oas-central.realmedia.com/RealMedia/ads/click_lx.ads/www.d=
etroitbusiness.com/index/L29/273742191/Position4/crain/CDB_OZ_MSU_BTN_080=
210/WeekendMBA-140x55.gif/30594d48766b7472474c414141316e42?x" =
target=3D"New"><IMG =
SRC=3D"http://imagec10.247realmedia.com/RealMedia/ads/Creatives/crain/CDB=
_OZ_MSU_BTN_080210/WeekendMBA-140x55.gif"  ALT=3D"Click Here for More =
Information!"  BORDER=3D"0"></A>');=0A=

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.google-analytics.com/urchin.js

//-- Google Analytics Urchin Module=0A=
//-- Copyright 2007 Google, All Rights Reserved.=0A=
=0A=
//-- Urchin On Demand Settings ONLY=0A=
var _uacct=3D"";			// set up the Urchin Account=0A=
var _userv=3D1;			// service mode (0=3Dlocal,1=3Dremote,2=3Dboth)=0A=
=0A=
//-- UTM User Settings=0A=
var _ufsc=3D1;			// set client info flag (1=3Don|0=3Doff)=0A=
var _udn=3D"auto";		// (auto|none|domain) set the domain name for cookies=0A=
var _uhash=3D"on";		// (on|off) unique domain hash for cookies=0A=
var _utimeout=3D"1800";   	// set the inactive session timeout in seconds=0A=
var _ugifpath=3D"/__utm.gif";	// set the web path to the __utm.gif file=0A=
var _utsp=3D"|";			// transaction field separator=0A=
var _uflash=3D1;			// set flash version detect option (1=3Don|0=3Doff)=0A=
var _utitle=3D1;			// set the document title detect option =
(1=3Don|0=3Doff)=0A=
var _ulink=3D0;			// enable linker functionality (1=3Don|0=3Doff)=0A=
var _uanchor=3D0;			// enable use of anchors for campaign =
(1=3Don|0=3Doff)=0A=
var _utcp=3D"/";			// the cookie path for tracking=0A=
var _usample=3D100;		// The sampling % of visitors to track (1-100).=0A=
=0A=
//-- UTM Campaign Tracking Settings=0A=
var _uctm=3D1;			// set campaign tracking module (1=3Don|0=3Doff)=0A=
var _ucto=3D"15768000";		// set timeout in seconds (6 month default)=0A=
var _uccn=3D"utm_campaign";	// name=0A=
var _ucmd=3D"utm_medium";		// medium (cpc|cpm|link|email|organic)=0A=
var _ucsr=3D"utm_source";		// source=0A=
var _uctr=3D"utm_term";		// term/keyword=0A=
var _ucct=3D"utm_content";	// content=0A=
var _ucid=3D"utm_id";		// id number=0A=
var _ucno=3D"utm_nooverride";	// don't override=0A=
=0A=
//-- Auto/Organic Sources and Keywords=0A=
var _uOsr=3Dnew Array();=0A=
var _uOkw=3Dnew Array();=0A=
_uOsr[0]=3D"google";	_uOkw[0]=3D"q";=0A=
_uOsr[1]=3D"yahoo";	_uOkw[1]=3D"p";=0A=
_uOsr[2]=3D"msn";		_uOkw[2]=3D"q";=0A=
_uOsr[3]=3D"aol";		_uOkw[3]=3D"query";=0A=
_uOsr[4]=3D"aol";		_uOkw[4]=3D"encquery";=0A=
_uOsr[5]=3D"lycos";	_uOkw[5]=3D"query";=0A=
_uOsr[6]=3D"ask";		_uOkw[6]=3D"q";=0A=
_uOsr[7]=3D"altavista";	_uOkw[7]=3D"q";=0A=
_uOsr[8]=3D"netscape";	_uOkw[8]=3D"query";=0A=
_uOsr[9]=3D"cnn";	_uOkw[9]=3D"query";=0A=
_uOsr[10]=3D"looksmart";	_uOkw[10]=3D"qt";=0A=
_uOsr[11]=3D"about";	_uOkw[11]=3D"terms";=0A=
_uOsr[12]=3D"mamma";	_uOkw[12]=3D"query";=0A=
_uOsr[13]=3D"alltheweb";	_uOkw[13]=3D"q";=0A=
_uOsr[14]=3D"gigablast";	_uOkw[14]=3D"q";=0A=
_uOsr[15]=3D"voila";	_uOkw[15]=3D"rdata";=0A=
_uOsr[16]=3D"virgilio";	_uOkw[16]=3D"qs";=0A=
_uOsr[17]=3D"live";	_uOkw[17]=3D"q";=0A=
_uOsr[18]=3D"baidu";	_uOkw[18]=3D"wd";=0A=
_uOsr[19]=3D"alice";	_uOkw[19]=3D"qs";=0A=
_uOsr[20]=3D"yandex";	_uOkw[20]=3D"text";=0A=
_uOsr[21]=3D"najdi";	_uOkw[21]=3D"q";=0A=
_uOsr[22]=3D"aol";	_uOkw[22]=3D"q";=0A=
_uOsr[23]=3D"club-internet"; _uOkw[23]=3D"query";=0A=
_uOsr[24]=3D"mama";	_uOkw[24]=3D"query";=0A=
_uOsr[25]=3D"seznam";	_uOkw[25]=3D"q";=0A=
_uOsr[26]=3D"search";	_uOkw[26]=3D"q";=0A=
_uOsr[27]=3D"wp";	_uOkw[27]=3D"szukaj";=0A=
_uOsr[28]=3D"onet";	_uOkw[28]=3D"qt";=0A=
_uOsr[29]=3D"netsprint";	_uOkw[29]=3D"q";=0A=
_uOsr[30]=3D"google.interia";	_uOkw[30]=3D"q";=0A=
_uOsr[31]=3D"szukacz";	_uOkw[31]=3D"q";=0A=
_uOsr[32]=3D"yam";	_uOkw[32]=3D"k";=0A=
_uOsr[33]=3D"pchome";	_uOkw[33]=3D"q";=0A=
_uOsr[34]=3D"kvasir";	_uOkw[34]=3D"searchExpr";=0A=
_uOsr[35]=3D"sesam";	_uOkw[35]=3D"q";=0A=
_uOsr[36]=3D"ozu"; _uOkw[36]=3D"q";=0A=
_uOsr[37]=3D"terra"; _uOkw[37]=3D"query";=0A=
_uOsr[38]=3D"nostrum"; _uOkw[38]=3D"query";=0A=
_uOsr[39]=3D"mynet"; _uOkw[39]=3D"q";=0A=
_uOsr[40]=3D"ekolay"; _uOkw[40]=3D"q";=0A=
_uOsr[41]=3D"search.ilse"; _uOkw[41]=3D"search_for";=0A=
_uOsr[42]=3D"bing"; _uOkw[42]=3D"q";=0A=
=0A=
//-- Auto/Organic Keywords to Ignore=0A=
var _uOno=3Dnew Array();=0A=
//_uOno[0]=3D"urchin";=0A=
//_uOno[1]=3D"urchin.com";=0A=
//_uOno[2]=3D"www.urchin.com";=0A=
=0A=
//-- Referral domains to Ignore=0A=
var _uRno=3Dnew Array();=0A=
//_uRno[0]=3D".urchin.com";=0A=
=0A=
//-- **** Don't modify below this point ***=0A=
var =
_uff,_udh,_udt,_ubl=3D0,_udo=3D"",_uu,_ufns=3D0,_uns=3D0,_ur=3D"-",_ufno=3D=
0,_ust=3D0,_ubd=3Ddocument,_udl=3D_ubd.location,_udlh=3D"",_uwv=3D"1.3";=0A=
var _ugifpath2=3D"http://www.google-analytics.com/__utm.gif";=0A=
if (_udl.hash) _udlh=3D_udl.href.substring(_udl.href.indexOf('#'));=0A=
if (_udl.protocol=3D=3D"https:") =
_ugifpath2=3D"https://ssl.google-analytics.com/__utm.gif";=0A=
if (!_utcp || _utcp=3D=3D"") _utcp=3D"/";=0A=
function urchinTracker(page) {=0A=
 if (_udl.protocol=3D=3D"file:") return;=0A=
 if (_uff && (!page || page=3D=3D"")) return;=0A=
 var a,b,c,xx,v,z,k,x=3D"",s=3D"",f=3D0,nv=3D0;=0A=
 var nx=3D" expires=3D"+_uNx()+";";=0A=
 var dc=3D_ubd.cookie;=0A=
 _udh=3D_uDomain();=0A=
 if (!_uVG()) return;=0A=
 _uu=3DMath.round(Math.random()*2147483647);=0A=
 _udt=3Dnew Date();=0A=
 _ust=3DMath.round(_udt.getTime()/1000);=0A=
 a=3Ddc.indexOf("__utma=3D"+_udh+".");=0A=
 b=3Ddc.indexOf("__utmb=3D"+_udh);=0A=
 c=3Ddc.indexOf("__utmc=3D"+_udh);=0A=
 if (_udn && _udn!=3D"") { _udo=3D" domain=3D"+_udn+";"; }=0A=
 if (_utimeout && _utimeout!=3D"") {=0A=
  x=3Dnew Date(_udt.getTime()+(_utimeout*1000));=0A=
  x=3D" expires=3D"+x.toGMTString()+";";=0A=
 }=0A=
 if (_ulink) {=0A=
  if (_uanchor && _udlh && _udlh!=3D"") s=3D_udlh+"&";=0A=
  s+=3D_udl.search;=0A=
  if(s && s!=3D"" && s.indexOf("__utma=3D")>=3D0) {=0A=
   if (!(_uIN(a=3D_uGC(s,"__utma=3D","&")))) a=3D"-";=0A=
   if (!(_uIN(b=3D_uGC(s,"__utmb=3D","&")))) b=3D"-";=0A=
   if (!(_uIN(c=3D_uGC(s,"__utmc=3D","&")))) c=3D"-";=0A=
   v=3D_uGC(s,"__utmv=3D","&");=0A=
   z=3D_uGC(s,"__utmz=3D","&");=0A=
   k=3D_uGC(s,"__utmk=3D","&");=0A=
   xx=3D_uGC(s,"__utmx=3D","&");=0A=
   if ((k*1) !=3D ((_uHash(a+b+c+xx+z+v)*1)+(_udh*1))) =
{_ubl=3D1;a=3D"-";b=3D"-";c=3D"-";xx=3D"-";z=3D"-";v=3D"-";}=0A=
   if (a!=3D"-" && b!=3D"-" && c!=3D"-") f=3D1;=0A=
   else if(a!=3D"-") f=3D2;=0A=
  }=0A=
 }=0A=
 if(f=3D=3D1) {=0A=
  _ubd.cookie=3D"__utma=3D"+a+"; path=3D"+_utcp+";"+nx+_udo;=0A=
  _ubd.cookie=3D"__utmb=3D"+b+"; path=3D"+_utcp+";"+x+_udo;=0A=
  _ubd.cookie=3D"__utmc=3D"+c+"; path=3D"+_utcp+";"+_udo;=0A=
 } else if (f=3D=3D2) {=0A=
  a=3D_uFixA(s,"&",_ust);=0A=
  _ubd.cookie=3D"__utma=3D"+a+"; path=3D"+_utcp+";"+nx+_udo;=0A=
  _ubd.cookie=3D"__utmb=3D"+_udh+"; path=3D"+_utcp+";"+x+_udo;=0A=
  _ubd.cookie=3D"__utmc=3D"+_udh+"; path=3D"+_utcp+";"+_udo;=0A=
  _ufns=3D1;=0A=
 } else if (a>=3D0 && b>=3D0 && c>=3D0) {=0A=
   b =3D _uGC(dc,"__utmb=3D"+_udh,";");=0A=
   b =3D ("-" =3D=3D b) ? _udh : b;  =0A=
  _ubd.cookie=3D"__utmb=3D"+b+"; path=3D"+_utcp+";"+x+_udo;=0A=
 } else {=0A=
  if (a>=3D0) a=3D_uFixA(_ubd.cookie,";",_ust);=0A=
  else {=0A=
   a=3D_udh+"."+_uu+"."+_ust+"."+_ust+"."+_ust+".1";=0A=
   nv=3D1;=0A=
  }=0A=
  _ubd.cookie=3D"__utma=3D"+a+"; path=3D"+_utcp+";"+nx+_udo;=0A=
  _ubd.cookie=3D"__utmb=3D"+_udh+"; path=3D"+_utcp+";"+x+_udo;=0A=
  _ubd.cookie=3D"__utmc=3D"+_udh+"; path=3D"+_utcp+";"+_udo;=0A=
  _ufns=3D1;=0A=
 }=0A=
 if (_ulink && xx && xx!=3D"" && xx!=3D"-") {=0A=
   xx=3D_uUES(xx);=0A=
   if (xx.indexOf(";")=3D=3D-1) _ubd.cookie=3D"__utmx=3D"+xx+"; =
path=3D"+_utcp+";"+nx+_udo;=0A=
 }=0A=
 if (_ulink && v && v!=3D"" && v!=3D"-") {=0A=
  v=3D_uUES(v);=0A=
  if (v.indexOf(";")=3D=3D-1) _ubd.cookie=3D"__utmv=3D"+v+"; =
path=3D"+_utcp+";"+nx+_udo;=0A=
 }=0A=
 var wc=3Dwindow;=0A=
 var c=3D_ubd.cookie;=0A=
 if(wc && wc.gaGlobal && wc.gaGlobal.dh=3D=3D_udh){=0A=
  var g=3Dwc.gaGlobal;=0A=
  var ua=3Dc.split("__utma=3D"+_udh+".")[1].split(";")[0].split(".");=0A=
  if(g.sid)ua[3]=3Dg.sid;=0A=
  if(nv>0){=0A=
   ua[2]=3Dua[3];=0A=
   if(g.vid){=0A=
    var v=3Dg.vid.split(".");=0A=
    ua[0]=3Dv[0];=0A=
    ua[1]=3Dv[1];=0A=
   }=0A=
  }=0A=
  _ubd.cookie=3D"__utma=3D"+_udh+"."+ua.join(".")+"; =
path=3D"+_utcp+";"+nx+_udo;=0A=
 }=0A=
 _uInfo(page);=0A=
 _ufns=3D0;=0A=
 _ufno=3D0;=0A=
 if (!page || page=3D=3D"") _uff=3D1;=0A=
}=0A=
function _uGH() {=0A=
 var hid;=0A=
 var wc=3Dwindow;=0A=
 if (wc && wc.gaGlobal && wc.gaGlobal.hid) {=0A=
  hid=3Dwc.gaGlobal.hid;=0A=
 } else {=0A=
  hid=3DMath.round(Math.random()*0x7fffffff);=0A=
  if (!wc.gaGlobal) wc.gaGlobal=3D{};=0A=
  wc.gaGlobal.hid=3Dhid;=0A=
 }=0A=
 return hid;=0A=
}=0A=
function _uInfo(page) {=0A=
 var p,s=3D"",dm=3D"",pg=3D_udl.pathname+_udl.search;=0A=
 if (page && page!=3D"") pg=3D_uES(page,1);=0A=
 _ur=3D_ubd.referrer;=0A=
 if (!_ur || _ur=3D=3D"") { _ur=3D"-"; }=0A=
 else {=0A=
  dm=3D_ubd.domain;=0A=
  if(_utcp && _utcp!=3D"/") dm+=3D_utcp;=0A=
  p=3D_ur.indexOf(dm);=0A=
  if ((p>=3D0) && (p<=3D8)) { _ur=3D"0"; }=0A=
  if (_ur.indexOf("[")=3D=3D0 && =
_ur.lastIndexOf("]")=3D=3D(_ur.length-1)) { _ur=3D"-"; }=0A=
 }=0A=
 s+=3D"&utmn=3D"+_uu;=0A=
 if (_ufsc) s+=3D_uBInfo();=0A=
 if (_uctm) s+=3D_uCInfo();=0A=
 if (_utitle && _ubd.title && _ubd.title!=3D"") =
s+=3D"&utmdt=3D"+_uES(_ubd.title);=0A=
 if (_udl.hostname && _udl.hostname!=3D"") =
s+=3D"&utmhn=3D"+_uES(_udl.hostname);=0A=
 if (_usample && _usample !=3D 100) s+=3D"&utmsp=3D"+_uES(_usample);=0A=
 s+=3D"&utmhid=3D"+_uGH();=0A=
 s+=3D"&utmr=3D"+_ur;=0A=
 s+=3D"&utmp=3D"+pg;=0A=
 if ((_userv=3D=3D0 || _userv=3D=3D2) && _uSP()) {=0A=
  var i=3Dnew Image(1,1);=0A=
  i.src=3D_ugifpath+"?"+"utmwv=3D"+_uwv+s;=0A=
  i.onload=3Dfunction() { _uVoid(); }=0A=
 }=0A=
 if ((_userv=3D=3D1 || _userv=3D=3D2) && _uSP()) {=0A=
  var i2=3Dnew Image(1,1);=0A=
  =
i2.src=3D_ugifpath2+"?"+"utmwv=3D"+_uwv+s+"&utmac=3D"+_uacct+"&utmcc=3D"+=
_uGCS();=0A=
  i2.onload=3Dfunction() { _uVoid(); }=0A=
 }=0A=
 return;=0A=
}=0A=
function _uVoid() { return; }=0A=
function _uCInfo() {=0A=
 if (!_ucto || _ucto=3D=3D"") { _ucto=3D"15768000"; }=0A=
 if (!_uVG()) return;=0A=
 var =
c=3D"",t=3D"-",t2=3D"-",t3=3D"-",o=3D0,cs=3D0,cn=3D0,i=3D0,z=3D"-",s=3D""=
;=0A=
 if (_uanchor && _udlh && _udlh!=3D"") s=3D_udlh+"&";=0A=
 s+=3D_udl.search;=0A=
 var x=3Dnew Date(_udt.getTime()+(_ucto*1000));=0A=
 var dc=3D_ubd.cookie;=0A=
 x=3D" expires=3D"+x.toGMTString()+";";=0A=
 if (_ulink && !_ubl) {=0A=
  z=3D_uUES(_uGC(s,"__utmz=3D","&"));=0A=
  if (z!=3D"-" && z.indexOf(";")=3D=3D-1) { =
_ubd.cookie=3D"__utmz=3D"+z+"; path=3D"+_utcp+";"+x+_udo; return ""; }=0A=
 }=0A=
 z=3Ddc.indexOf("__utmz=3D"+_udh+".");=0A=
 if (z>-1) { z=3D_uGC(dc,"__utmz=3D"+_udh+".",";"); }=0A=
 else { z=3D"-"; }=0A=
 t=3D_uGC(s,_ucid+"=3D","&");=0A=
 t2=3D_uGC(s,_ucsr+"=3D","&");=0A=
 t3=3D_uGC(s,"gclid=3D","&");=0A=
 if ((t!=3D"-" && t!=3D"") || (t2!=3D"-" && t2!=3D"") || (t3!=3D"-" && =
t3!=3D"")) {=0A=
  if (t!=3D"-" && t!=3D"") c+=3D"utmcid=3D"+_uEC(t);=0A=
  if (t2!=3D"-" && t2!=3D"") { if (c !=3D "") c+=3D"|"; =
c+=3D"utmcsr=3D"+_uEC(t2); }=0A=
  if (t3!=3D"-" && t3!=3D"") { if (c !=3D "") c+=3D"|"; =
c+=3D"utmgclid=3D"+_uEC(t3); }=0A=
  t=3D_uGC(s,_uccn+"=3D","&");=0A=
  if (t!=3D"-" && t!=3D"") c+=3D"|utmccn=3D"+_uEC(t);=0A=
  else c+=3D"|utmccn=3D(not+set)";=0A=
  t=3D_uGC(s,_ucmd+"=3D","&");=0A=
  if (t!=3D"-" && t!=3D"") c+=3D"|utmcmd=3D"+_uEC(t);=0A=
  else  c+=3D"|utmcmd=3D(not+set)";=0A=
  t=3D_uGC(s,_uctr+"=3D","&");=0A=
  if (t!=3D"-" && t!=3D"") c+=3D"|utmctr=3D"+_uEC(t);=0A=
  else { t=3D_uOrg(1); if (t!=3D"-" && t!=3D"") =
c+=3D"|utmctr=3D"+_uEC(t); }=0A=
  t=3D_uGC(s,_ucct+"=3D","&");=0A=
  if (t!=3D"-" && t!=3D"") c+=3D"|utmcct=3D"+_uEC(t);=0A=
  t=3D_uGC(s,_ucno+"=3D","&");=0A=
  if (t=3D=3D"1") o=3D1;=0A=
  if (z!=3D"-" && o=3D=3D1) return "";=0A=
 }=0A=
 if (c=3D=3D"-" || c=3D=3D"") { c=3D_uOrg(); if (z!=3D"-" && =
_ufno=3D=3D1)  return ""; }=0A=
 if (c=3D=3D"-" || c=3D=3D"") { if (_ufns=3D=3D1)  c=3D_uRef(); if =
(z!=3D"-" && _ufno=3D=3D1)  return ""; }=0A=
 if (c=3D=3D"-" || c=3D=3D"") {=0A=
  if (z=3D=3D"-" && _ufns=3D=3D1) { =
c=3D"utmccn=3D(direct)|utmcsr=3D(direct)|utmcmd=3D(none)"; }=0A=
  if (c=3D=3D"-" || c=3D=3D"") return "";=0A=
 }=0A=
 if (z!=3D"-") {=0A=
  i=3Dz.indexOf(".");=0A=
  if (i>-1) i=3Dz.indexOf(".",i+1);=0A=
  if (i>-1) i=3Dz.indexOf(".",i+1);=0A=
  if (i>-1) i=3Dz.indexOf(".",i+1);=0A=
  t=3Dz.substring(i+1,z.length);=0A=
  if (t.toLowerCase()=3D=3Dc.toLowerCase()) cs=3D1;=0A=
  t=3Dz.substring(0,i);=0A=
  if ((i=3Dt.lastIndexOf(".")) > -1) {=0A=
   t=3Dt.substring(i+1,t.length);=0A=
   cn=3D(t*1);=0A=
  }=0A=
 }=0A=
 if (cs=3D=3D0 || _ufns=3D=3D1) {=0A=
  t=3D_uGC(dc,"__utma=3D"+_udh+".",";");=0A=
  if ((i=3Dt.lastIndexOf(".")) > 9) {=0A=
   _uns=3Dt.substring(i+1,t.length);=0A=
   _uns=3D(_uns*1);=0A=
  }=0A=
  cn++;=0A=
  if (_uns=3D=3D0) _uns=3D1;=0A=
  _ubd.cookie=3D"__utmz=3D"+_udh+"."+_ust+"."+_uns+"."+cn+"."+c+"; =
path=3D"+_utcp+"; "+x+_udo;=0A=
 }=0A=
 if (cs=3D=3D0 || _ufns=3D=3D1) return "&utmcn=3D1";=0A=
 else return "&utmcr=3D1";=0A=
}=0A=
function _uRef() {=0A=
 if (_ur=3D=3D"0" || _ur=3D=3D"" || _ur=3D=3D"-") return "";=0A=
 var i=3D0,h,k,n;=0A=
 if ((i=3D_ur.indexOf("://"))<0 || _uGCse()) return "";=0A=
 h=3D_ur.substring(i+3,_ur.length);=0A=
 if (h.indexOf("/") > -1) {=0A=
  k=3Dh.substring(h.indexOf("/"),h.length);=0A=
  if (k.indexOf("?") > -1) k=3Dk.substring(0,k.indexOf("?"));=0A=
  h=3Dh.substring(0,h.indexOf("/"));=0A=
 }=0A=
 h=3Dh.toLowerCase();=0A=
 n=3Dh;=0A=
 if ((i=3Dn.indexOf(":")) > -1) n=3Dn.substring(0,i);=0A=
 for (var ii=3D0;ii<_uRno.length;ii++) {=0A=
  if ((i=3Dn.indexOf(_uRno[ii].toLowerCase())) > -1 && =
n.length=3D=3D(i+_uRno[ii].length)) { _ufno=3D1; break; }=0A=
 }=0A=
 if (h.indexOf("www.")=3D=3D0) h=3Dh.substring(4,h.length);=0A=
 return =
"utmccn=3D(referral)|utmcsr=3D"+_uEC(h)+"|"+"utmcct=3D"+_uEC(k)+"|utmcmd=3D=
referral";=0A=
}=0A=
function _uOrg(t) {=0A=
 if (_ur=3D=3D"0" || _ur=3D=3D"" || _ur=3D=3D"-") return "";=0A=
 var i=3D0,h,k;=0A=
 if ((i=3D_ur.indexOf("://"))<0 || _uGCse()) return "";=0A=
 h=3D_ur.substring(i+3,_ur.length);=0A=
 if (h.indexOf("/") > -1) {=0A=
  h=3Dh.substring(0,h.indexOf("/"));=0A=
 }=0A=
 for (var ii=3D0;ii<_uOsr.length;ii++) {=0A=
  if (h.toLowerCase().indexOf(_uOsr[ii].toLowerCase()) > -1) {=0A=
   if ((i=3D_ur.indexOf("?"+_uOkw[ii]+"=3D")) > -1 || =
(i=3D_ur.indexOf("&"+_uOkw[ii]+"=3D")) > -1) {=0A=
    k=3D_ur.substring(i+_uOkw[ii].length+2,_ur.length);=0A=
    if ((i=3Dk.indexOf("&")) > -1) k=3Dk.substring(0,i);=0A=
    for (var yy=3D0;yy<_uOno.length;yy++) {=0A=
     if (_uOno[yy].toLowerCase()=3D=3Dk.toLowerCase()) { _ufno=3D1; =
break; }=0A=
    }=0A=
    if (t) return _uEC(k);=0A=
    else return =
"utmccn=3D(organic)|utmcsr=3D"+_uEC(_uOsr[ii])+"|"+"utmctr=3D"+_uEC(k)+"|=
utmcmd=3Dorganic";=0A=
   }=0A=
  }=0A=
 }=0A=
 return "";=0A=
}=0A=
function _uGCse() {=0A=
 var h,p;=0A=
 h=3Dp=3D_ur.split("://")[1];=0A=
 if(h.indexOf("/")>-1) {=0A=
  h=3Dh.split("/")[0];=0A=
  p=3Dp.substring(p.indexOf("/")+1,p.length);=0A=
 }=0A=
 if(p.indexOf("?")>-1) {=0A=
  p=3Dp.split("?")[0];=0A=
 }=0A=
 if(h.toLowerCase().indexOf("google")>-1) {=0A=
  if(_ur.indexOf("?q=3D")>-1 || _ur.indexOf("&q=3D")>-1) {=0A=
   if (p.toLowerCase().indexOf("cse")>-1) {=0A=
    return true;=0A=
   }=0A=
  }=0A=
 }=0A=
}=0A=
function _uBInfo() {=0A=
 var sr=3D"-",sc=3D"-",ul=3D"-",fl=3D"-",cs=3D"-",je=3D1;=0A=
 var n=3Dnavigator;=0A=
 if (self.screen) {=0A=
  sr=3Dscreen.width+"x"+screen.height;=0A=
  sc=3Dscreen.colorDepth+"-bit";=0A=
 } else if (self.java) {=0A=
  var j=3Djava.awt.Toolkit.getDefaultToolkit();=0A=
  var s=3Dj.getScreenSize();=0A=
  sr=3Ds.width+"x"+s.height;=0A=
 }=0A=
 if (n.language) { ul=3Dn.language.toLowerCase(); }=0A=
 else if (n.browserLanguage) { ul=3Dn.browserLanguage.toLowerCase(); }=0A=
 je=3Dn.javaEnabled()?1:0;=0A=
 if (_uflash) fl=3D_uFlash();=0A=
 if (_ubd.characterSet) cs=3D_uES(_ubd.characterSet);=0A=
 else if (_ubd.charset) cs=3D_uES(_ubd.charset);=0A=
 return =
"&utmcs=3D"+cs+"&utmsr=3D"+sr+"&utmsc=3D"+sc+"&utmul=3D"+ul+"&utmje=3D"+j=
e+"&utmfl=3D"+fl;=0A=
}=0A=
function __utmSetTrans() {=0A=
 var e;=0A=
 if (_ubd.getElementById) e=3D_ubd.getElementById("utmtrans");=0A=
 else if (_ubd.utmform && _ubd.utmform.utmtrans) =
e=3D_ubd.utmform.utmtrans;=0A=
 if (!e) return;=0A=
 var l=3De.value.split("UTM:");=0A=
 var i,i2,c;=0A=
 if (_userv=3D=3D0 || _userv=3D=3D2) i=3Dnew Array();=0A=
 if (_userv=3D=3D1 || _userv=3D=3D2) { i2=3Dnew Array(); c=3D_uGCS(); }=0A=
=0A=
 for (var ii=3D0;ii<l.length;ii++) {=0A=
  l[ii]=3D_uTrim(l[ii]);=0A=
  if (l[ii].charAt(0)!=3D'T' && l[ii].charAt(0)!=3D'I') continue;=0A=
  var r=3DMath.round(Math.random()*2147483647);=0A=
  if (!_utsp || _utsp=3D=3D"") _utsp=3D"|";=0A=
  var f=3Dl[ii].split(_utsp),s=3D"";=0A=
  if (f[0].charAt(0)=3D=3D'T') {=0A=
   s=3D"&utmt=3Dtran"+"&utmn=3D"+r;=0A=
   f[1]=3D_uTrim(f[1]); if(f[1]&&f[1]!=3D"") =
s+=3D"&utmtid=3D"+_uES(f[1]);=0A=
   f[2]=3D_uTrim(f[2]); if(f[2]&&f[2]!=3D"") =
s+=3D"&utmtst=3D"+_uES(f[2]);=0A=
   f[3]=3D_uTrim(f[3]); if(f[3]&&f[3]!=3D"") =
s+=3D"&utmtto=3D"+_uES(f[3]);=0A=
   f[4]=3D_uTrim(f[4]); if(f[4]&&f[4]!=3D"") =
s+=3D"&utmttx=3D"+_uES(f[4]);=0A=
   f[5]=3D_uTrim(f[5]); if(f[5]&&f[5]!=3D"") =
s+=3D"&utmtsp=3D"+_uES(f[5]);=0A=
   f[6]=3D_uTrim(f[6]); if(f[6]&&f[6]!=3D"") =
s+=3D"&utmtci=3D"+_uES(f[6]);=0A=
   f[7]=3D_uTrim(f[7]); if(f[7]&&f[7]!=3D"") =
s+=3D"&utmtrg=3D"+_uES(f[7]);=0A=
   f[8]=3D_uTrim(f[8]); if(f[8]&&f[8]!=3D"") =
s+=3D"&utmtco=3D"+_uES(f[8]);=0A=
  } else {=0A=
   s=3D"&utmt=3Ditem"+"&utmn=3D"+r;=0A=
   f[1]=3D_uTrim(f[1]); if(f[1]&&f[1]!=3D"") =
s+=3D"&utmtid=3D"+_uES(f[1]);=0A=
   f[2]=3D_uTrim(f[2]); if(f[2]&&f[2]!=3D"") =
s+=3D"&utmipc=3D"+_uES(f[2]);=0A=
   f[3]=3D_uTrim(f[3]); if(f[3]&&f[3]!=3D"") =
s+=3D"&utmipn=3D"+_uES(f[3]);=0A=
   f[4]=3D_uTrim(f[4]); if(f[4]&&f[4]!=3D"") =
s+=3D"&utmiva=3D"+_uES(f[4]);=0A=
   f[5]=3D_uTrim(f[5]); if(f[5]&&f[5]!=3D"") =
s+=3D"&utmipr=3D"+_uES(f[5]);=0A=
   f[6]=3D_uTrim(f[6]); if(f[6]&&f[6]!=3D"") =
s+=3D"&utmiqt=3D"+_uES(f[6]);=0A=
  }=0A=
  if (_udl.hostname && _udl.hostname!=3D"") =
s+=3D"&utmhn=3D"+_uES(_udl.hostname);=0A=
  if (_usample && _usample !=3D 100) s+=3D"&utmsp=3D"+_uES(_usample);=0A=
=0A=
  if ((_userv=3D=3D0 || _userv=3D=3D2) && _uSP()) {=0A=
   i[ii]=3Dnew Image(1,1);=0A=
   i[ii].src=3D_ugifpath+"?"+"utmwv=3D"+_uwv+s;=0A=
   i[ii].onload=3Dfunction() { _uVoid(); }=0A=
  }=0A=
  if ((_userv=3D=3D1 || _userv=3D=3D2) && _uSP()) {=0A=
   i2[ii]=3Dnew Image(1,1);=0A=
   =
i2[ii].src=3D_ugifpath2+"?"+"utmwv=3D"+_uwv+s+"&utmac=3D"+_uacct+"&utmcc=3D=
"+c;=0A=
   i2[ii].onload=3Dfunction() { _uVoid(); }=0A=
  }=0A=
 }=0A=
 return;=0A=
}=0A=
function _uFlash() {=0A=
 var f=3D"-",n=3Dnavigator;=0A=
 if (n.plugins && n.plugins.length) {=0A=
  for (var ii=3D0;ii<n.plugins.length;ii++) {=0A=
   if (n.plugins[ii].name.indexOf('Shockwave Flash')!=3D-1) {=0A=
    f=3Dn.plugins[ii].description.split('Shockwave Flash ')[1];=0A=
    break;=0A=
   }=0A=
  }=0A=
 } else {=0A=
  var fl;=0A=
  try {=0A=
   fl =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");=0A=
   f =3D fl.GetVariable("$version");=0A=
  } catch(e) {}=0A=
  if (f =3D=3D "-") {=0A=
   try {=0A=
    fl =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");=0A=
    f =3D "WIN 6,0,21,0";=0A=
    fl.AllowScriptAccess =3D "always";=0A=
    f =3D fl.GetVariable("$version");=0A=
   } catch(e) {}=0A=
  }=0A=
  if (f =3D=3D "-") {=0A=
   try {=0A=
    fl =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash");=0A=
    f =3D fl.GetVariable("$version");=0A=
   } catch(e) {}=0A=
  }=0A=
  if (f !=3D "-") {=0A=
   f =3D f.split(" ")[1].split(",");=0A=
   f =3D f[0] + "." + f[1] + " r" + f[2];=0A=
  }=0A=
 }=0A=
 return f;=0A=
}=0A=
function __utmLinkerUrl(l,h) {=0A=
 var p,k,a=3D"-",b=3D"-",c=3D"-",x=3D"-",z=3D"-",v=3D"-";=0A=
 var dc=3D_ubd.cookie;=0A=
 var iq =3D l.indexOf("?");=0A=
 var ih =3D l.indexOf("#");=0A=
 var url=3Dl;=0A=
 if (dc) {=0A=
  a=3D_uES(_uGC(dc,"__utma=3D"+_udh+".",";"));=0A=
  b=3D_uES(_uGC(dc,"__utmb=3D"+_udh,";"));=0A=
  c=3D_uES(_uGC(dc,"__utmc=3D"+_udh,";"));=0A=
  x=3D_uES(_uGC(dc,"__utmx=3D"+_udh,";"));=0A=
  z=3D_uES(_uGC(dc,"__utmz=3D"+_udh+".",";"));=0A=
  v=3D_uES(_uGC(dc,"__utmv=3D"+_udh+".",";"));=0A=
  k=3D(_uHash(a+b+c+x+z+v)*1)+(_udh*1);=0A=
  =
p=3D"__utma=3D"+a+"&__utmb=3D"+b+"&__utmc=3D"+c+"&__utmx=3D"+x+"&__utmz=3D=
"+z+"&__utmv=3D"+v+"&__utmk=3D"+k;=0A=
 }=0A=
 if (p) {=0A=
  if (h && ih>-1) return;=0A=
  if (h) { url=3Dl+"#"+p; }=0A=
  else {=0A=
   if (iq=3D=3D-1 && ih=3D=3D-1) url=3Dl+"?"+p;=0A=
   else if (ih=3D=3D-1) url=3Dl+"&"+p;=0A=
   else if (iq=3D=3D-1) url=3Dl.substring(0,ih-1)+"?"+p+l.substring(ih);=0A=
   else url=3Dl.substring(0,ih-1)+"&"+p+l.substring(ih);=0A=
  }=0A=
 }=0A=
 return url;=0A=
}=0A=
function __utmLinker(l,h) {=0A=
 if (!_ulink || !l || l=3D=3D"") return;=0A=
 _udl.href=3D__utmLinkerUrl(l,h);=0A=
}=0A=
function __utmLinkPost(f,h) {=0A=
 if (!_ulink || !f || !f.action) return;=0A=
 f.action=3D__utmLinkerUrl(f.action, h);=0A=
 return;=0A=
}=0A=
function __utmSetVar(v) {=0A=
 if (!v || v=3D=3D"") return;=0A=
 if (!_udo || _udo =3D=3D "") {=0A=
  _udh=3D_uDomain();=0A=
  if (_udn && _udn!=3D"") { _udo=3D" domain=3D"+_udn+";"; }=0A=
 }=0A=
 if (!_uVG()) return;=0A=
 var r=3DMath.round(Math.random() * 2147483647);=0A=
 _ubd.cookie=3D"__utmv=3D"+_udh+"."+_uES(v)+"; path=3D"+_utcp+"; =
expires=3D"+_uNx()+";"+_udo;=0A=
 var s=3D"&utmt=3Dvar&utmn=3D"+r;=0A=
 if (_usample && _usample !=3D 100) s+=3D"&utmsp=3D"+_uES(_usample);=0A=
 if ((_userv=3D=3D0 || _userv=3D=3D2) && _uSP()) {=0A=
  var i=3Dnew Image(1,1);=0A=
  i.src=3D_ugifpath+"?"+"utmwv=3D"+_uwv+s;=0A=
  i.onload=3Dfunction() { _uVoid(); }=0A=
 }=0A=
 if ((_userv=3D=3D1 || _userv=3D=3D2) && _uSP()) {=0A=
  var i2=3Dnew Image(1,1);=0A=
  =
i2.src=3D_ugifpath2+"?"+"utmwv=3D"+_uwv+s+"&utmac=3D"+_uacct+"&utmcc=3D"+=
_uGCS();=0A=
  i2.onload=3Dfunction() { _uVoid(); }=0A=
 }=0A=
}=0A=
function _uGCS() {=0A=
 var t,c=3D"",dc=3D_ubd.cookie;=0A=
 if ((t=3D_uGC(dc,"__utma=3D"+_udh+".",";"))!=3D"-") =
c+=3D_uES("__utma=3D"+t+";+");=0A=
 if ((t=3D_uGC(dc,"__utmx=3D"+_udh,";"))!=3D"-") =
c+=3D_uES("__utmx=3D"+t+";+");=0A=
 if ((t=3D_uGC(dc,"__utmz=3D"+_udh+".",";"))!=3D"-") =
c+=3D_uES("__utmz=3D"+t+";+");=0A=
 if ((t=3D_uGC(dc,"__utmv=3D"+_udh+".",";"))!=3D"-") =
c+=3D_uES("__utmv=3D"+t+";");=0A=
 if (c.charAt(c.length-1)=3D=3D"+") c=3Dc.substring(0,c.length-1);=0A=
 return c;=0A=
}=0A=
function _uGC(l,n,s) {=0A=
 if (!l || l=3D=3D"" || !n || n=3D=3D"" || !s || s=3D=3D"") return "-";=0A=
 var i,i2,i3,c=3D"-";=0A=
 i=3Dl.indexOf(n);=0A=
 i3=3Dn.indexOf("=3D")+1;=0A=
 if (i > -1) {=0A=
  i2=3Dl.indexOf(s,i); if (i2 < 0) { i2=3Dl.length; }=0A=
  c=3Dl.substring((i+i3),i2);=0A=
 }=0A=
 return c;=0A=
}=0A=
function _uDomain() {=0A=
 if (!_udn || _udn=3D=3D"" || _udn=3D=3D"none") { _udn=3D""; return 1; }=0A=
 if (_udn=3D=3D"auto") {=0A=
  var d=3D_ubd.domain;=0A=
  if (d.substring(0,4)=3D=3D"www.") {=0A=
   d=3Dd.substring(4,d.length);=0A=
  }=0A=
  _udn=3Dd;=0A=
 }=0A=
 _udn =3D _udn.toLowerCase(); =0A=
 if (_uhash=3D=3D"off") return 1;=0A=
 return _uHash(_udn);=0A=
}=0A=
function _uHash(d) {=0A=
 if (!d || d=3D=3D"") return 1;=0A=
 var h=3D0,g=3D0;=0A=
 for (var i=3Dd.length-1;i>=3D0;i--) {=0A=
  var c=3DparseInt(d.charCodeAt(i));=0A=
  h=3D((h << 6) & 0xfffffff) + c + (c << 14);=0A=
  if ((g=3Dh & 0xfe00000)!=3D0) h=3D(h ^ (g >> 21));=0A=
 }=0A=
 return h;=0A=
}=0A=
function _uFixA(c,s,t) {=0A=
 if (!c || c=3D=3D"" || !s || s=3D=3D"" || !t || t=3D=3D"") return "-";=0A=
 var a=3D_uGC(c,"__utma=3D"+_udh+".",s);=0A=
 var lt=3D0,i=3D0;=0A=
 if ((i=3Da.lastIndexOf(".")) > 9) {=0A=
  _uns=3Da.substring(i+1,a.length);=0A=
  _uns=3D(_uns*1)+1;=0A=
  a=3Da.substring(0,i);=0A=
  if ((i=3Da.lastIndexOf(".")) > 7) {=0A=
   lt=3Da.substring(i+1,a.length);=0A=
   a=3Da.substring(0,i);=0A=
  }=0A=
  if ((i=3Da.lastIndexOf(".")) > 5) {=0A=
   a=3Da.substring(0,i);=0A=
  }=0A=
  a+=3D"."+lt+"."+t+"."+_uns;=0A=
 }=0A=
 return a;=0A=
}=0A=
function _uTrim(s) {=0A=
  if (!s || s=3D=3D"") return "";=0A=
  while ((s.charAt(0)=3D=3D' ') || (s.charAt(0)=3D=3D'\n') || =
(s.charAt(0,1)=3D=3D'\r')) s=3Ds.substring(1,s.length);=0A=
  while ((s.charAt(s.length-1)=3D=3D' ') || =
(s.charAt(s.length-1)=3D=3D'\n') || (s.charAt(s.length-1)=3D=3D'\r')) =
s=3Ds.substring(0,s.length-1);=0A=
  return s;=0A=
}=0A=
function _uEC(s) {=0A=
  var n=3D"";=0A=
  if (!s || s=3D=3D"") return "";=0A=
  for (var i=3D0;i<s.length;i++) {if (s.charAt(i)=3D=3D" ") n+=3D"+"; =
else n+=3Ds.charAt(i);}=0A=
  return n;=0A=
}=0A=
function __utmVisitorCode(f) {=0A=
 var r=3D0,t=3D0,i=3D0,i2=3D0,m=3D31;=0A=
 var a=3D_uGC(_ubd.cookie,"__utma=3D"+_udh+".",";");=0A=
 if ((i=3Da.indexOf(".",0))<0) return;=0A=
 if ((i2=3Da.indexOf(".",i+1))>0) r=3Da.substring(i+1,i2); else return =
"";  =0A=
 if ((i=3Da.indexOf(".",i2+1))>0) t=3Da.substring(i2+1,i); else return =
"";  =0A=
 if (f) {=0A=
  return r;=0A=
 } else {=0A=
  var c=3Dnew =
Array('A','B','C','D','E','F','G','H','J','K','L','M','N','P','R','S','T'=
,'U','V','W','X','Y','Z','1','2','3','4','5','6','7','8','9');=0A=
  return =
c[r>>28&m]+c[r>>23&m]+c[r>>18&m]+c[r>>13&m]+"-"+c[r>>8&m]+c[r>>3&m]+c[((r=
&7)<<2)+(t>>30&3)]+c[t>>25&m]+c[t>>20&m]+"-"+c[t>>15&m]+c[t>>10&m]+c[t>>5=
&m]+c[t&m];=0A=
 }=0A=
}=0A=
function _uIN(n) {=0A=
 if (!n) return false;=0A=
 for (var i=3D0;i<n.length;i++) {=0A=
  var c=3Dn.charAt(i);=0A=
  if ((c<"0" || c>"9") && (c!=3D".")) return false;=0A=
 }=0A=
 return true;=0A=
}=0A=
function _uES(s,u) {=0A=
 if (typeof(encodeURIComponent) =3D=3D 'function') {=0A=
  if (u) return encodeURI(s);=0A=
  else return encodeURIComponent(s);=0A=
 } else {=0A=
  return escape(s);=0A=
 }=0A=
}=0A=
function _uUES(s) {=0A=
 if (typeof(decodeURIComponent) =3D=3D 'function') {=0A=
  return decodeURIComponent(s);=0A=
 } else {=0A=
  return unescape(s);=0A=
 }=0A=
}=0A=
function _uVG() {=0A=
 if((_udn.indexOf("www.google.") =3D=3D 0 || _udn.indexOf(".google.") =
=3D=3D 0 || _udn.indexOf("google.") =3D=3D 0) && _utcp=3D=3D'/' && =
_udn.indexOf("google.org")=3D=3D-1) {=0A=
  return false;=0A=
 }=0A=
 return true;=0A=
}=0A=
function _uSP() {=0A=
 var s=3D100;=0A=
 if (_usample) s=3D_usample;=0A=
 if(s>=3D100 || s<=3D0) return true;=0A=
 return ((__utmVisitorCode(1)%10000)<(s*100));=0A=
}=0A=
function urchinPathCopy(p){=0A=
 var d=3Ddocument,nx,tx,sx,i,c,cs,t,h,o;=0A=
 cs=3Dnew Array("a","b","c","v","x","z");=0A=
 h=3D_uDomain(); if (_udn && _udn!=3D"") o=3D" domain=3D"+_udn+";";=0A=
 nx=3D_uNx()+";";=0A=
 tx=3Dnew Date(); tx.setTime(tx.getTime()+(_utimeout*1000));=0A=
 tx=3Dtx.toGMTString()+";";=0A=
 sx=3Dnew Date(); sx.setTime(sx.getTime()+(_ucto*1000));=0A=
 sx=3Dsx.toGMTString()+";";=0A=
 for (i=3D0;i<6;i++){=0A=
  t=3D" expires=3D";=0A=
  if (i=3D=3D1) t+=3Dtx; else if (i=3D=3D2) t=3D""; else if (i=3D=3D5) =
t+=3Dsx; else t+=3Dnx;=0A=
  c=3D_uGC(d.cookie,"__utm"+cs[i]+"=3D"+h,";");=0A=
  if (c!=3D"-") d.cookie=3D"__utm"+cs[i]+"=3D"+c+"; path=3D"+p+";"+t+o;=0A=
 }=0A=
}=0A=
function _uCO() {=0A=
 if (!_utk || _utk=3D=3D"" || _utk.length<10) return;=0A=
 var d=3D'www.google.com';=0A=
 if (_utk.charAt(0)=3D=3D'!') d=3D'analytics.corp.google.com';=0A=
 _ubd.cookie=3D"GASO=3D"+_utk+"; path=3D"+_utcp+";"+_udo;=0A=
 var sc=3Ddocument.createElement('script');=0A=
 sc.type=3D'text/javascript';=0A=
 sc.id=3D"_gasojs";=0A=
 =
sc.src=3D'https://'+d+'/analytics/reporting/overlay_js?gaso=3D'+_utk+'&'+=
Math.random();=0A=
 document.getElementsByTagName('head')[0].appendChild(sc);  =0A=
}=0A=
function _uGT() {=0A=
 var h=3Dlocation.hash, a;=0A=
 if (h && h!=3D"" && h.indexOf("#gaso=3D")=3D=3D0) {=0A=
  a=3D_uGC(h,"gaso=3D","&");=0A=
 } else {=0A=
  a=3D_uGC(_ubd.cookie,"GASO=3D",";");=0A=
 }=0A=
 return a;=0A=
}=0A=
var _utk=3D_uGT();=0A=
if (_utk && _utk!=3D"" && _utk.length>10 && _utk.indexOf("=3D")=3D=3D-1) =
{=0A=
 if (window.addEventListener) {=0A=
  window.addEventListener('load', _uCO, false); =0A=
 } else if (window.attachEvent) { =0A=
  window.attachEvent('onload', _uCO);=0A=
 }=0A=
}=0A=
=0A=
function _uNx() {=0A=
  return (new Date((new Date()).getTime()+63072000000)).toGMTString();=0A=
}=0A=

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/javascripts/triggerParams.js

// Customer : Crains Detroit
// Version : Standard Trigger 2.9
// this script implements the survey strategy. After number of pages =
visited is equal to or
// greater than 'stickFactor' apply the 'samplePercentage' rule to =
determine if this visitor
// gets the survey.

function cppUrlPatch(s) {
	var translated =3D "";
	var i;=20
	var found =3D 0;
	for(i =3D 0; (found =3D s.indexOf(':', found)) !=3D -1; ) {
		translated +=3D s.substring(i, found) + "|";
		i =3D found + 1;
		found++;
	}
	translated +=3D s.substring(i, s.length);
	return translated;
}

// ************* configuration variables - change the values, NOT THE =
NAMES **************
// parameter array which defines the behavior of the trigger - this must =
be included
// before the trigger script or if on-exit is  being done, must be =
included before the=20
triggerParms =3D new Array();
triggerParms["trigger_type"] =3D "ST"; // Type of trigger
triggerParms["meas_id"] =3D "pEHVf+iaydiqR8V5M2/xBQ=3D=3D"; // =
measurement id (only used for OnExit)
triggerParms["mid"] =3D "pEHVf+iaydiqR8V5M2/xBQ=3D=3D"; // model =
instance id
triggerParms["cid"] =3D "gGpYUXuWwxJ15wLlMxvNFw"; // customer id
triggerParms["lf"] =3D 3; // loyalty factor
triggerParms["lfcookie"] =3D "ForeseeLoyalty_MID_gGpYUXuWwx";
triggerParms["ascookie"] =3D "ForeseeSurveyShown_gGpYUXuWwx";
triggerParms["sp"] =3D 25.0; // sample percentage (increased from 13 on =
May 13, 2003)
triggerParms["npc"] =3D 0; // no persistent cookies if 1
triggerParms["use_cpp"] =3D 0; // value set to 1, if the client wants =
user url (only used for OnExit)
triggerParms["cpp_1"] =3D "userURL:"+ cppUrlPatch =
(window.location.protocol+"://" + window.location.host + =
window.location.pathname); // customer parameter 1 - optional.
//triggerParms["cpp_2"] =3D "Browser:"+ cppUrlPatch =
(navigator.userAgent); // customer parameter 1 - optional.=20
triggerParms["pu"] =3D 0; // pop-under control
triggerParms["rw"] =3D 86400; // resample wait (value in minutes)
triggerParms["dt"] =3D 0; // disable trigger if 1
triggerParms["width"] =3D 420; // used by version 2 standard trigger to =
resize the survey
triggerParms["height"] =3D 500; // used by version 2 standard trigger to =
resize the survey
triggerParms["domain"] =3D ".crainsdetroit.com"; // domain attached to =
resample wait. Comment out the line if you want to use default domain.
triggerParms["path"] =3D "/"; // cookie path
//triggerParms["omb"] =3D "1505-0186"; // omb number
triggerParms["alt_width"] =3D 580; // used by version 2 standard trigger =
to resize the ADA Complaint survey
triggerParms["alt_height"] =3D 500; // used by version 2 standard =
trigger to resize the ADA Complaint survey
triggerParms["scout_chk"]=3D "ScoutRunningCheck";//check to see if =
scout.html is running or not (only used for OnExit)


// these values will be set to "normal" values until we have version 2 =
triggers in production
// at that point, we will reset winOptWidth, winOptHeight, winOptTop, =
winOptLeft to
// 1, 1, 4000, 4000 respectively.  At that point the width and height =
above will be passed
// to the survey JSP page which will dynamically generate a JavaScript =
onLoad handler to=20
// resize and translate to visible (for normal survey) or close =
off-screen (for failover)
triggerParms["winOptWidth"] =3D 1; // set to 1 for version 2 standard =
trigger
triggerParms["winOptHeight"] =3D 1; // set to 1 for version 2 standard =
trigger
triggerParms["winOptTop"] =3D 4000; // set to 4000 for version 2 =
standard trigger
triggerParms["winOptLeft"] =3D 4000; // set to 4000 for version 2 =
standard trigger

// if window contains one of these paths in its location while browsing=20
// then the survey wont poped up only in Standard Trigger=20
var excludeList =3D new Array();
//excludeList[0] =3D "/exclude/";//trigger script will not work under =
this path

//values for Double cookie solution
//triggerParms["ndc"] =3D 0; //  =20
//triggerParms["fsexp"] =3D 13140000;  //{Pre-defined value by ForeSee =
(in minutes)}; //This will be a value set some time out in the future.
//triggerParms["midexp"] =3D 5; //{Pre-defined value by ForeSee (in =
minutes)}; // This will value be used to expire the model instance id =
that is stored in the ForeSee cookie.  The value should be in minutes, =
same as in trigger parameter "rw"


// values for watchList added (only for OnExit)
var watchList =3D new Array();
// test values - include the "home" page and a page from one other =
subdirectory
// we'll intentionally leave out a second subdirectory for testing
//watchList[1] =3D "OnExitTesting/pop/popup.html"; // home page must be =
in the list

------=_NextPart_000_0000_01CAAB22.69BDBAC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.crainsdetroit.com/javascripts/stdLauncher.js

// Customer : Crains Detroit=0D
// Version : Standard Trigger 2.9=0D
// ************ don't modify below this line *************=0D
// implements the standard survey strategy triggered on load or on =
unload of the page or=0D
// an image=0D
=0D
// *********** These typically will not need to be parameterized from =
the including page ********=0D
=0D
// this is the base URL to the survey engine=0D
var popUpURL =3D "http://www.foreseeresults.com/survey/display";=0D
=0D
// the name of the pop up window=0D
var popUpWinName =3D "survey";=0D
=0D
// the name of the persistent or session cookie to prevent =
multi-surveying in a given time period=0D
var ckAlreadyShown =3D triggerParms["ascookie"];=0D
=0D
// the name of the cookie that counts the minimum pages viewed with the =
trigger code in them=0D
var ckLoyaltyCount =3D triggerParms["lfcookie"];=0D
=0D
// the name of the cookie that implements the surveying =
'sample-percentage' algorithm=0D
var ckSamplePercentage =3D "foreseeSamplePerc";=0D
=0D
// set persistent cookie expiration if we are using it, otherwise it is =
a session cookie=0D
var persistentExpires =3D new Date();=0D
persistentExpires.setTime(persistentExpires.getTime() + =
(triggerParms["rw"]*60*1000));=0D
=0D
function ForeCStdGetCookie (name) {=0D
	var arg =3D name + "=3D";=0D
	var alen =3D arg.length;=0D
	var clen =3D document.cookie.length;=0D
	var i =3D 0;=0D
	while (i < clen) {=0D
		var j =3D i + alen;=0D
		if (document.cookie.substring(i, j) =3D=3D arg) {=0D
			return ForeCStdGetCookieVal (j);=0D
		}=0D
		i =3D document.cookie.indexOf(" ", i) + 1;=0D
		if (i =3D=3D 0) {=0D
			break;=0D
		}=0D
	}=0D
	return null;=0D
}=0D
=0D
function ForeCStdSetCookie (name, value) {=0D
	var argv =3D ForeCStdSetCookie.arguments;=0D
	var argc =3D ForeCStdSetCookie.arguments.length;=0D
	var expires =3D (argc > 2) ? argv[2] : null;=0D
	var path =3D (argc > 3) ? argv[3] : null;=0D
	var domain =3D (argc > 4) ? argv[4] : null;=0D
	var secure =3D (argc > 5) ? argv[5] : false;=0D
	document.cookie =3D name + "=3D" + escape (value) +=0D
	((expires =3D=3D null) ? "" : ("; expires=3D" + expires.toGMTString())) =
+=0D
	((path =3D=3D null) ? "" : ("; path=3D" + path)) +=0D
	((domain =3D=3D null) ? "" : ("; domain=3D" + domain)) +=0D
	((secure =3D=3D true) ? "; secure" : "");=0D
}=0D
=0D
function ForeCStdDeleteCookie (name) {=0D
	var exp =3D new Date();=0D
	exp.setTime (exp.getTime() - 1);=0D
	var cval =3D ForeCStdGetCookie (name);=0D
	document.cookie =3D name + "=3D" + cval + "; expires=3D" + =
exp.toGMTString();=0D
}=0D
=0D
function ForeCStdGetCookieVal(offset) {=0D
	var endstr =3D document.cookie.indexOf (";", offset);=0D
	if (endstr =3D=3D -1) {=0D
		endstr =3D document.cookie.length;=0D
	}=0D
	return unescape(document.cookie.substring(offset, endstr));=0D
}=0D
=0D
// check whether or not this browser supports focus() on windows=0D
function supportsFocus() {=0D
	// get user agent string=0D
	var userAgent =3D navigator.userAgent;=0D
	// find IE version label in user agent string if it exists=0D
	var realMSVersionAt =3D userAgent.indexOf("MSIE");=0D
	if (realMSVersionAt =3D=3D -1) {=0D
		// must be netscape=0D
		return true;=0D
	} else {=0D
		// IE browser, see which one=0D
		var nameAndVersion =3D userAgent.substring(realMSVersionAt, =
realMSVersionAt + 6);=0D
		var realMSVersion =3D nameAndVersion.charAt(5);=0D
		if(realMSVersion >=3D 5) {=0D
			return true;=0D
		} else {=0D
			return false;=0D
		}=0D
	}=0D
}=0D
=0D
function specialEscape(str) {=0D
	var encoded =3D "";=0D
	for(var i =3D 0; i < str.length; i++) {=0D
	encoded +=3D encodeURLChar(str.charAt(i));=0D
	}=0D
	return encoded ;=0D
}=0D
=0D
function encodeURLChar(c) {=0D
	var lookupTable =3D new Array();=0D
	lookupTable[" "] =3D "%20";=0D
	lookupTable["!"] =3D "%21";=0D
	lookupTable["\""] =3D "%22";=0D
	lookupTable["#"] =3D "%23";=0D
	lookupTable["$"] =3D "%24";=0D
	lookupTable["%"] =3D "%25";=0D
	lookupTable["@"] =3D "%40";=0D
	lookupTable["&"] =3D "%26";=0D
	lookupTable["'"] =3D "%27";=0D
	lookupTable["("] =3D "%28";=0D
	lookupTable[")"] =3D "%29";=0D
	lookupTable["*"] =3D "%2A";=0D
	lookupTable["+"] =3D "%2B";=0D
	lookupTable[","] =3D "%2C";=0D
	lookupTable["-"] =3D "%2D";=0D
	lookupTable["."] =3D "%2E";=0D
	lookupTable["/"] =3D "%2F";=0D
	lookupTable[":"] =3D "%3A";=0D
	lookupTable[";"] =3D "%3B";=0D
	lookupTable["<"] =3D "%3C";=0D
	lookupTable["=3D"] =3D "%3D";=0D
	lookupTable[">"] =3D "%3E";=0D
	lookupTable["?"] =3D "%3F";=0D
	lookupTable["["] =3D "%5B";=0D
	lookupTable["\\"] =3D "%5C";=0D
	lookupTable["]"] =3D "%5D";=0D
	lookupTable["^"] =3D "%5E";=0D
	lookupTable["_"] =3D "%5F";=0D
	lookupTable["`"] =3D "%60";=0D
	lookupTable["{"] =3D "%7B";=0D
	lookupTable["|"] =3D "%7C";=0D
	lookupTable["}"] =3D "%7D";=0D
	lookupTable["~"] =3D "%7E";=0D
	lookupTable["0"] =3D "0";=0D
	lookupTable["1"] =3D "1";=0D
	lookupTable["2"] =3D "2";=0D
	lookupTable["3"] =3D "3";=0D
	lookupTable["4"] =3D "4";=0D
	lookupTable["5"] =3D "5";=0D
	lookupTable["6"] =3D "6";=0D
	lookupTable["7"] =3D "7";=0D
	lookupTable["8"] =3D "8";=0D
	lookupTable["9"] =3D "9";=0D
	lookupTable["a"] =3D "a";=0D
	lookupTable["b"] =3D "b";=0D
	lookupTable["c"] =3D "c";=0D
	lookupTable["d"] =3D "d";=0D
	lookupTable["e"] =3D "e";=0D
	lookupTable["f"] =3D "f";=0D
	lookupTable["g"] =3D "g";=0D
	lookupTable["h"] =3D "h";=0D
	lookupTable["i"] =3D "i";=0D
	lookupTable["j"] =3D "j";=0D
	lookupTable["k"] =3D "k";=0D
	lookupTable["l"] =3D "l";=0D
	lookupTable["m"] =3D "m";=0D
	lookupTable["n"] =3D "n";=0D
	lookupTable["o"] =3D "o";=0D
	lookupTable["p"] =3D "p";=0D
	lookupTable["q"] =3D "q";=0D
	lookupTable["r"] =3D "r";=0D
	lookupTable["s"] =3D "s";=0D
	lookupTable["t"] =3D "t";=0D
	lookupTable["u"] =3D "u";=0D
	lookupTable["v"] =3D "v";=0D
	lookupTable["w"] =3D "w";=0D
	lookupTable["x"] =3D "x";=0D
	lookupTable["y"] =3D "y";=0D
	lookupTable["z"] =3D "z";=0D
	lookupTable["A"] =3D "A";=0D
	lookupTable["B"] =3D "B";=0D
	lookupTable["C"] =3D "C";=0D
	lookupTable["D"] =3D "D";=0D
	lookupTable["E"] =3D "E";=0D
	lookupTable["F"] =3D "F";=0D
	lookupTable["G"] =3D "G";=0D
	lookupTable["H"] =3D "H";=0D
	lookupTable["I"] =3D "I";=0D
	lookupTable["J"] =3D "J";=0D
	lookupTable["K"] =3D "K";=0D
	lookupTable["L"] =3D "L";=0D
	lookupTable["M"] =3D "M";=0D
	lookupTable["N"] =3D "N";=0D
	lookupTable["O"] =3D "O";=0D
	lookupTable["P"] =3D "P";=0D
	lookupTable["Q"] =3D "Q";=0D
	lookupTable["R"] =3D "R";=0D
	lookupTable["S"] =3D "S";=0D
	lookupTable["T"] =3D "T";=0D
	lookupTable["U"] =3D "U";=0D
	lookupTable["V"] =3D "V";=0D
	lookupTable["W"] =3D "W";=0D
	lookupTable["X"] =3D "X";=0D
	lookupTable["Y"] =3D "Y";=0D
	lookupTable["Z"] =3D "Z";=0D
	return lookupTable[c];=0D
}=0D
// this function checks to see if we are in path included in the =
excluded list. =0D
function currentLocationExcluded() {	=0D
	if (triggerParms["trigger_type"] =3D=3D "OE" ) {=0D
		return false;	=0D
	} else {=0D
		var parentURLPath =3D window.location.pathname;//location path=0D
		for(key in excludeList) {=0D
			if(parentURLPath.indexOf(excludeList[key]) !=3D -1) {=0D
				return true;=0D
			}=0D
		}=0D
		return false;=0D
	}=0D
}=0D
=0D
// this function has been adapted from the Poll() function in our =
standard launcher. Since=0D
// we are calling this function directly rather than through a load =
event, we don't increment=0D
// loyalty factor, we only interrogate it to see if the loyalty has been =
met.=0D
function Poll() { =0D
	if(triggerParms["dt"] =3D=3D 1) {=0D
		return;=0D
	}=0D
	//checks if we are in path included in the excluded list.=0D
	if(currentLocationExcluded()) {=0D
	    	return;=0D
	}	=0D
	var stickyCounter =3D ForeCStdGetCookie(ckLoyaltyCount); // check =
counter cookie=0D
	var alreadyShown =3D ForeCStdGetCookie(ckAlreadyShown); // check if we =
already have shown survey=0D
	var pageCount;=0D
	var randNum =3D Math.random();=0D
	randNum *=3D 100;=0D
	ForeCStdSetCookie(ckSamplePercentage, randNum); // only for =
diagnostics=0D
	if (stickyCounter =3D=3D null) {=0D
		// this will only create the loyalty factor cookie if we don't =0D
		// already have one=0D
		pageCount =3D 1;=0D
		ForeCStdSetCookie(ckLoyaltyCount, pageCount);=0D
		stickyCounter =3D ForeCStdGetCookie(ckLoyaltyCount);=0D
	}=0D
	if (stickyCounter !=3D null) {=0D
		// already a loyalty cookie - see if we have reached the pages viewed =
requirement=0D
		pageCount =3D stickyCounter;=0D
		if(pageCount >=3D triggerParms["lf"]) {=0D
			// apply the samplingPercentage algorithm=0D
			if(alreadyShown =3D=3D null) {=0D
				// only if we haven't already served them a survey=0D
		                if(randNum <=3D triggerParms["sp"]) {=0D
					// we'll open it offscreen. If the survey loads it will resize and =
translate=0D
					// onscreen, otherwise the failover page will close the offscreen =
window=0D
					var winOptions =3D "width=3D" + triggerParms["winOptWidth"] + =0D
					",height=3D" + triggerParms["winOptHeight"] +=0D
					",top=3D" + triggerParms["winOptTop"] +=0D
					",left=3D" + triggerParms["winOptLeft"] =0D
					+ ",resizable=3Dyes,scrollbars=3Dyes";=0D
					var fullURL =3D popUpURL + "?" + "width=3D" + triggerParms["width"] =
+=0D
					"&height=3D" + triggerParms["height"] +=0D
					"&cid=3D" + specialEscape(triggerParms["cid"]) + "&mid=3D" + =
specialEscape(triggerParms["mid"]);=0D
					if ((triggerParms["alt_width"] )!=3Dnull) {=0D
						fullURL +=3D "&alt_width=3D" + triggerParms["alt_width"];=0D
					}=0D
					if ((triggerParms["alt_height"] )!=3Dnull) {=0D
						fullURL +=3D "&alt_height=3D" + triggerParms["alt_height"];=0D
					}=0D
					if ((triggerParms["omb"] )!=3Dnull) {=0D
						fullURL +=3D "&omb=3D" + specialEscape(triggerParms["omb"]);=0D
					}=0D
					// added for double cookie=0D
					if ((triggerParms["ndc"] )!=3Dnull) {=0D
						fullURL +=3D "&ndc=3D" + triggerParms["ndc"] + "&fsexp=3D" + =
triggerParms["fsexp"] +=0D
							   "&midexp=3D" + triggerParms["midexp"];=0D
					}=0D
					// extract customer passed parameters if any=0D
					var customerParams =3D "";=0D
					for(paramKey in triggerParms) {=0D
						if(paramKey.substring(0,3) =3D=3D "cpp"){=0D
							// append it to full=0D
							fullURL +=3D "&" + paramKey + "=3D" + =
specialEscape(triggerParms[paramKey]);=0D
						}=0D
					}=0D
					var myPopUp =3D window.open(fullURL, popUpWinName,winOptions);=0D
					if(supportsFocus()){						=0D
						switch (triggerParms["pu"]){=0D
							case 0:=0D
								myPopUp.focus();								=0D
							break;=0D
							case 1:=0D
								self.focus();								=0D
							break;=0D
							default:=0D
							break;=0D
						}=0D
					}=0D
					// insure that we only pop up once during the lifetime of the =
cookie=0D
					if(triggerParms["npc"] =3D=3D 1) {=0D
						ForeCStdSetCookie(ckAlreadyShown, =
'true',null,triggerParms["path"],triggerParms["domain"]);=0D
					} else {=0D
						ForeCStdSetCookie(ckAlreadyShown, 'true', =
persistentExpires,triggerParms["path"],triggerParms["domain"]);=0D
					}=0D
				}=0D
			}=0D
		}	=0D
		// increment it and set the new cookie value=0D
		pageCount++;=0D
		ForeCStdSetCookie(ckLoyaltyCount, pageCount);=0D
	}=0D
}
------=_NextPart_000_0000_01CAAB22.69BDBAC0--

