Permalink
Browse files

Meh. I'll just copy them. Git doesn't get symlinks

  • Loading branch information...
1 parent 36be792 commit cb47298040a733b8ae11cee3427e7baeeafec2fa @parrish committed May 13, 2012
View
1 webapp/public/css
View
4 webapp/public/css/chart1.css
@@ -0,0 +1,4 @@
+.chart rect {
+ stroke: black;
+ fill: #B2EB50;
+}
View
7 webapp/public/css/fonts.css
@@ -0,0 +1,7 @@
+@font-face {
+ font-family: 'TitilliumText14L600wt';
+ src: url('../fonts/titilliumtext600wt-webfont.eot');
+ src: local('☺'), url('../fonts/titilliumtext600wt-webfont.woff') format('woff'), url('../fonts/titilliumtext600wt-webfont.ttf') format('truetype'), url('../fonts/titilliumtext600wt-webfont.svg#webfontChPKLcSQ') format('svg');
+ font-weight: normal;
+ font-style: normal;
+}
View
50 webapp/public/css/reset.css
@@ -0,0 +1,50 @@
+html, body, div, span, applet, object, iframe,
+h1, h2, h3, h4, h5, h6, p, blockquote, pre,
+a, abbr, acronym, address, big, cite, code,
+del, dfn, em, font, img, ins, kbd, q, s, samp,
+small, strike, strong, sub, sup, tt, var,
+b, u, i, center,
+dl, dt, dd, ol, ul, li,
+fieldset, form, label, legend,
+table, caption, tbody, tfoot, thead, tr, th, td {
+margin: 0;
+padding: 0;
+border: 0;
+outline: 0;
+vertical-align: baseline;
+background: transparent;
+}
+body {
+line-height: 1;
+}
+div {
+ -moz-box-sizing: border-box; /* Firefox, other Gecko */
+ box-sizing: border-box; /* Opera/IE 8+/WebKit */
+}
+ol, ul {
+list-style: none;
+}
+blockquote, q {
+quotes: none;
+}
+blockquote:before, blockquote:after,
+q:before, q:after {
+content: '';
+content: none;
+}
+
+a:hover, a:active {
+outline: none;
+}
+
+ins {
+text-decoration: none;
+}
+del {
+text-decoration: line-through;
+}
+
+table {
+border-collapse: collapse;
+border-spacing: 0;
+}
View
256 webapp/public/css/styles.css
@@ -0,0 +1,256 @@
+body {
+background-color: black;
+font-family: 'TitilliumText14L600wt', 'Myriad Pro', 'Arial';
+color: white;
+position: relative;
+}
+
+h1 {
+ display: block;
+ font-size: 60px;
+ position: relative;
+ left: -510px;
+ top: -250px;
+}
+
+div#content {
+width: 960px;
+margin: 0 auto;
+}
+
+div#title {
+text-align: center;
+}
+
+div#slider {
+background-color: #555;
+height: 40px;
+margin: 5px 0px;
+}
+
+div#quickstats {
+background-color: #555;
+height: 30px;
+margin: 5px 0px;
+}
+
+div.stat {
+float: left;
+height: 30px;
+margin: 5px 10px 0 10px;
+}
+
+div#charts {
+margin: 5px 0px;
+}
+
+div.chart {
+float: left;
+background-color: #666;
+width: 477px;
+height: 240px;
+}
+
+div.chart.right {
+margin: 0px 0px 5px 0;
+}
+
+div.chart.left {
+margin: 0px 5px 5px 0;
+}
+
+
+#map_canvas {
+height: 500px;
+}
+div#outer_map_cartodb_container {
+position: relative;
+width: 960px;
+height: 500px;
+background: white;
+border-radius: 3px;
+-moz-border-radius: 3px;
+-webkit-border-radius: 3px;
+margin: 5px 0;
+}
+div#map_cartodb_container {
+position: absolute;
+top: 0;
+left: 0;
+right: 0;
+bottom: 0;
+z-index: 0;
+}
+span.cartodb_map_controls {
+position: absolute;
+top: 10px;
+left: 10px;
+width: 26px;
+height: 100px;
+z-index: 10;
+}
+span.cartodb_map_controls a.cartodb_map_embed_zoom_in {
+display: block;
+width: 30px;
+height: 32px;
+text-indent: -9999px;
+line-height: 0;
+font-size: 0;
+background: url('https://cartodb.s3.amazonaws.com/embed/sprite.png') no-repeat -289px -142px;
+}
+span.cartodb_map_controls a.cartodb_map_embed_zoom_in:hover {
+background-position: -320px -142px;
+cursor: pointer;
+}
+span.cartodb_map_controls a.cartodb_map_embed_zoom_out {
+display: block;
+width: 30px;
+height: 32px;
+text-indent: -9999px;
+line-height: 0;
+font-size: 0;
+background: url('https://cartodb.s3.amazonaws.com/embed/sprite.png') no-repeat -289px -174px;
+}
+span.cartodb_map_controls a.cartodb_map_embed_zoom_out:hover {
+background-position: -320px -174px;
+cursor: pointer;
+}
+div.cartodb_infowindow {
+position: absolute;
+display: block;
+width: 214px;
+padding: 0;
+visibility: hidden;
+}
+div.cartodb_infowindow a.close {
+position: absolute;
+right: 3px;
+top: 3px;
+width: 22px;
+height: 15px;
+padding: 4px 0 3px 0;
+text-align: center;
+font: bold 15px "Helvetica",Arial;
+color: #666666;
+text-decoration: none;
+line-height: 15px
+}
+div.cartodb_infowindow a.close:hover {
+color: #333333
+}
+div.cartodb_infowindow div.outer_top {
+width: 186px;
+padding: 25px 18px 5px 10px;
+background: url('https://cartodb.s3.amazonaws.com/embed/sprite.png') 0 top;
+}
+div.cartodb_infowindow div.top {
+width: 186px;
+max-height: 200px;
+overflow-y: auto;
+overflow-x: hidden
+}
+div.cartodb_infowindow div.top label {
+display: block;
+width: auto;
+padding: 0 0 0 5px;
+font: normal 11px Arial;
+color: #B3B3B3;
+text-shadow: 0 1px white
+}
+div.cartodb_infowindow div.top p {
+display: block;
+width: 170px;
+padding: 2px 4px;
+margin: 2px 0 7px;
+font: bold 11px 'Helvetica',Arial;
+color: #666666;
+border: none;
+background: none;
+text-shadow: 0 1px white;
+text-overflow: ellipsis;
+overflow: hidden;
+white-space: nowrap;
+}
+div.cartodb_infowindow div.top p.empty {
+font-weight: normal;
+font-style: italic;
+color: #b7b7b7;
+}
+div.cartodb_infowindow div.bottom {
+width: 180px;
+height: 36px;
+padding: 11px 16px 10px 10px;
+background: url('https://cartodb.s3.amazonaws.com/embed/sprite.png') no-repeat right top;
+}
+div.cartodb_infowindow div.bottom label {
+float: left;
+margin: 5px 0 0 3px;
+font: normal 11px Arial;
+color: #B3B3B3;
+text-shadow: 0 1px white
+}
+div.cartodb_infowindow div.bottom label strong {
+font: bold 11px 'Helvetica',Arial;
+color: #666666;
+text-shadow: 0 1px white;
+}
+div.cartodb_infowindow div.bottom a {
+float: right;
+height: 12px;
+margin: 0 5px 0 0;
+padding: 4px 7px;
+border: 1px solid #999;
+font: bold 11px "Helvetica",Arial;
+color: #333333;
+text-align: center;
+text-decoration: none;
+-webkit-border-radius: 3px;
+-moz-border-radius: 3px;
+border-radius: 3px;
+text-shadow: 0 1px white;
+background: linear-gradient(-90deg, #FFFFFF, #CACBCE);
+background: -webkit-gradient(linear, 50% 0%, 50% 100%, from(#FFFFFF), to(#CACBCE));
+background: -moz-linear-gradient(-90deg, #FFFFFF, #CACBCE);
+background: -o-linear-gradient(#FFFFFF,#CACBCE);
+filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#FFFFFF', endColorstr='#CACBCE');
+}
+div.cartodb_infowindow div.bottom a:hover {
+background: linear-gradient(-90deg, #CACBCE, #FFFFFF);
+background: -webkit-gradient(linear, 50% 0%, 50% 100%, from(#CACBCE), to(#FFFFFF));
+background: -moz-linear-gradient(-90deg, #CACBCE, #FFFFFF);
+background: -o-linear-gradient(#CACBCE,#FFFFFF);
+filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#CACBCE', endColorstr='#FFFFFF');
+cursor: pointer;
+}
+a.cartodb_logo {
+position: absolute;
+bottom: 7px;
+left: 75px;
+display: block;
+width: 71px;
+height: 29px;
+background: url('https://cartodb.s3.amazonaws.com/embed/new_logo.png') no-repeat 0 0;
+text-indent: -9999px;
+line-height: 0;
+font-size: 0;
+text-transform: capitalize;
+}
+
+.rotate {
+
+/* Safari */
+-webkit-transform: rotate(-90deg);
+
+/* Firefox */
+-moz-transform: rotate(-90deg);
+
+/* IE */
+-ms-transform: rotate(-90deg);
+
+/* Opera */
+-o-transform: rotate(-90deg);
+
+/* Internet Explorer */
+filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
+
+}
View
1 webapp/public/fonts
View
BIN webapp/public/fonts/titilliumtext600wt-webfont.eot
Binary file not shown.
View
231 webapp/public/fonts/titilliumtext600wt-webfont.svg
@@ -0,0 +1,231 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
+<svg xmlns="http://www.w3.org/2000/svg">
+<metadata>
+This is a custom SVG webfont generated by Font Squirrel.
+Copyright : Generated in 2009 by FontLab Studio Copyright info pending
+</metadata>
+<defs>
+<font id="webfontChPKLcSQ" horiz-adv-x="1085" >
+<font-face units-per-em="2048" ascent="1536" descent="-512" />
+<missing-glyph horiz-adv-x="481" />
+<glyph unicode=" " horiz-adv-x="481" />
+<glyph unicode="&#x09;" horiz-adv-x="481" />
+<glyph unicode="&#xa0;" horiz-adv-x="481" />
+<glyph unicode="!" d="M451 0v270h208v-270h-208zM451 1434h208l-6 -940h-196z" />
+<glyph unicode="&#x22;" horiz-adv-x="665" d="M82 1421h186l-6 -471h-178zM403 1421h187l-6 -471h-178z" />
+<glyph unicode="#" d="M12 358v164h215v316h-215v163h215v359h172v-359h283v359h172v-359h217v-163h-217v-316h217v-164h-217v-358h-172v358h-283v-358h-172v358h-215zM399 522h283v316h-283v-316z" />
+<glyph unicode="$" d="M125 1034q0 188 112.5 264t331.5 76h41l33 244h72l-33 -248l289 -29l-6 -69q-162 18 -291 28l-74 -567q117 -20 180.5 -39.5t123 -58.5t83 -102.5t23.5 -163.5q0 -199 -109.5 -291t-327.5 -92q-45 0 -71 2l-29 -234q-72 6 -72 15l29 223l-295 26l8 72q156 -20 295 -31 l80 611q-104 18 -166.5 38.5t-120 60.5t-82 104.5t-24.5 160.5zM205 1038.5q0 -147.5 70.5 -204t252.5 -89.5l74 560h-33q-184 0 -274 -59.5t-90 -207zM512 55h59q358 0 359 312q0 66 -14.5 111.5t-37 74.5t-69.5 49.5t-92 30.5t-127 24z" />
+<glyph unicode="%" d="M25 1149q0 287 241 287q240 0 240 -295q0 -285 -240 -285q-241 0 -241 293zM174 1149q0 -88 19.5 -128t72.5 -40q51 0 70.5 40t19.5 128t-19.5 126t-70.5 38q-53 0 -72.5 -38t-19.5 -126zM272 12l420 1446l135 -41l-419 -1448zM596 295q0 289 242 289q240 0 239 -289 q0 -293 -239 -293q-242 0 -242 293zM745 295q0 -88 19.5 -128t73 -40t72 39t18.5 129q0 88 -18.5 126t-72 38t-73 -38t-19.5 -126z" />
+<glyph unicode="&#x26;" horiz-adv-x="1433" d="M86 414q0 158 78 255t227 160q-63 80 -83.5 140.5t-20.5 156.5q0 147 99 233.5t276 86.5q186 0 281 -87t95 -247q0 -139 -67.5 -225t-231.5 -178l250 -250q37 117 55 262l189 -4q-31 -223 -94 -381l252 -240l-117 -133l-234 217q-100 -115 -207.5 -165t-263.5 -50 q-238 0 -360.5 117t-122.5 332zM285 416q0 -129 74.5 -200t215.5 -71q102 0 176 36t144 120l-383 393q-227 -85 -227 -278zM481 1102q0 -127 90 -223l47 -48q123 61 173.5 117t50.5 146q0 172 -180.5 172t-180.5 -164z" />
+<glyph unicode="'" horiz-adv-x="204" d="M0 1419h190l-10 -479h-176z" />
+<glyph unicode="(" horiz-adv-x="532" d="M51 616.5q0 182.5 50.5 411.5t99.5 369l49 139h209q-23 -59 -54.5 -158.5t-86 -344.5t-54.5 -417q0 -342 178 -829l17 -43h-209q-23 51 -55.5 139t-88 319.5t-55.5 414z" />
+<glyph unicode=")" horiz-adv-x="532" d="M41 -246q23 59 54.5 158.5t86 344.5t54.5 417q0 342 -179 829l-16 43h209q23 -51 55.5 -139t88 -319.5t55.5 -413.5t-50.5 -411.5t-99.5 -368.5l-49 -140h-209z" />
+<glyph unicode="*" d="M240 938l219 162l-213 155l71 99l213 -152l84 250l119 -39l-82 -256h262v-119h-264l82 -254l-117 -34l-84 256l-217 -162z" />
+<glyph unicode="+" horiz-adv-x="987" d="M-20 475v176h421v422h181v-422h426v-176h-426v-426h-181v426h-421z" />
+<glyph unicode="," horiz-adv-x="348" d="M31 -252l98 492h211l-117 -492h-192z" />
+<glyph unicode="-" horiz-adv-x="901" d="M135 481v189h631v-189h-631z" />
+<glyph unicode="." horiz-adv-x="507" d="M135 0v270h211v-270h-211z" />
+<glyph unicode="/" d="M158 35l575 1425l185 -65l-576 -1426z" />
+<glyph unicode="0" d="M39 659q0 389 125 552t377 163q254 0 377.5 -161.5t123.5 -555.5q0 -373 -124.5 -526.5t-376.5 -153.5t-377 154.5t-125 527.5zM252 657q0 -283 67.5 -386t223.5 -103q154 0 220 103.5t66 387.5q0 301 -64.5 413t-222 112t-224 -113t-66.5 -414z" />
+<glyph unicode="1" d="M109 1063l432 289h186v-1352h-199v1122l-327 -217z" />
+<glyph unicode="2" d="M104 0v182l363 363q104 106 152.5 160.5t87 128t38.5 145.5q0 106 -65.5 152.5t-204.5 46.5q-147 0 -348 -39l-14 182q215 53 405 53q221 0 326.5 -90t105.5 -280q0 -150 -64.5 -258.5t-213.5 -256.5l-301 -299h610v-190h-877z" />
+<glyph unicode="3" d="M98 27l23 180q223 -37 403 -37q266 2 267 217q0 203 -252 211h-273v182h273q78 0 149.5 62.5t71.5 146.5q0 104 -61.5 148.5t-190.5 44.5q-80 0 -173 -9.5t-147 -17.5l-53 -8l-18 176q221 51 401 51q244 0 345.5 -86t101.5 -272q0 -53 -16.5 -101.5t-30 -74t-52.5 -58 t-44 -36l-44 -29.5q111 -45 164 -112.5t53 -211.5q0 -211 -107.5 -313.5t-338.5 -102.5q-209 1 -451 50z" />
+<glyph unicode="4" d="M53 225v164l379 963h219l-370 -936h397v354h199v-354h151v-191h-151v-237h-199v237h-625z" />
+<glyph unicode="5" d="M90 39l23 180q252 -49 430 -49q117 0 187.5 69.5t70.5 194.5q0 233 -254 234q-66 0 -134.5 -16.5t-105.5 -33.5l-37 -14l-157 33l43 717h800v-193h-620l-35 -370q150 63 264 63q217 0 329 -97.5t112 -312.5q0 -225 -120 -344.5t-337 -119.5q-209 0 -459 59z" />
+<glyph unicode="6" d="M66 678q0 379 132 537.5t394 158.5q76 0 170 -11t149 -22l56 -10l-19 -180q-184 33 -356 33q-166 0 -244 -96.5t-78 -305.5q168 70 299 70q227 0 339 -103.5t112 -320.5q0 -219 -122 -335t-351 -116q-254 0 -367.5 173.5t-113.5 527.5zM268 608q2 -215 64.5 -328.5 t214.5 -113.5q266 0 266 262q0 242 -258 242q-142 -7 -287 -62z" />
+<glyph unicode="7" d="M100 1161v193h848v-248l-512 -1135l-186 56l493 1087v47h-643z" />
+<glyph unicode="8" d="M41 344q0 141 51 216t162 142q-102 61 -146.5 131t-44.5 187q0 172 127 263t359 91q229 0 361 -91t132 -265q0 -123 -44 -188.5t-156 -127.5q113 -63 167 -134.5t54 -200.5q0 -389 -514 -390q-508 0 -508 367zM254 385q0 -217 295 -217q301 0 301 223q0 88 -51 136 t-150 79h-205q-190 -57 -190 -221zM276 991q0 -78 41 -126t127 -83h205q90 35 135 84t45 125q0 102 -68.5 147.5t-209.5 45.5q-139 0 -207 -44.5t-68 -148.5z" />
+<glyph unicode="9" d="M57 932q0 211 129 326.5t349 115.5q252 0 364.5 -181t112.5 -529q0 -379 -130 -533t-393 -154q-76 0 -172 11.5t-153 23.5l-58 11l19 180q193 -33 364 -33q164 0 240 94t78 289l-45 -12q-45 -12 -121 -25.5t-133 -13.5q-219 0 -335 108.5t-116 321.5zM262 932 q0 -248 262 -248q57 0 129 12.5t113 24.5l43 12q-6 455 -274 455q-127 0 -200 -66.5t-73 -189.5z" />
+<glyph unicode=":" horiz-adv-x="397" d="M106 0v270h209v-270h-209zM106 637v270h209v-270h-209z" />
+<glyph unicode=";" horiz-adv-x="436" d="M35 -240h180l141 504h-211zM131 637v270h209v-270h-209z" />
+<glyph unicode="&#x3c;" d="M129 532v201l711 412v-205l-523 -303l523 -318v-204q-78 41 -357.5 208.5t-353.5 208.5z" />
+<glyph unicode="=" d="M59 285v178h949v-178h-949zM59 690v178h949v-178h-949z" />
+<glyph unicode="&#x3e;" d="M129 115v204l522 318l-522 303v205l711 -412v-201q-74 -41 -353.5 -208.5t-357.5 -208.5z" />
+<glyph unicode="?" horiz-adv-x="790" d="M14 1401q236 57 346 57q229 0 335 -85t106 -288q0 -98 -39 -180t-95.5 -133t-112.5 -95t-95 -91t-39 -94v-78h-205v84q0 74 39 136t93 107l110 90q55 45 94 103.5t39 128.5q0 106 -51.5 150t-186.5 44q-100 0 -313 -45zM213 0v270h209v-270h-209z" />
+<glyph unicode="@" horiz-adv-x="2017" d="M98 535q0 950 934 950q455 0 671 -214t216 -646v-35q0 -186 -24.5 -308t-76 -187.5t-115 -90t-155.5 -24.5q-94 0 -152.5 22.5t-95.5 81.5q-199 -102 -342 -102q-82 0 -143 21.5t-114.5 75.5t-82 158.5t-28.5 258.5q0 274 89 410t318 136q82 0 224 -49v31h192v-410 q0 -213 12.5 -306t38 -118.5t84.5 -25.5q63 0 97 25.5t55.5 121t21.5 279.5v37q0 358 -160.5 514.5t-529.5 156.5q-373 0 -555 -184t-182 -579q0 -422 170 -595t567 -173l293 20l8 -186q-203 -20 -301 -21q-238 0 -403.5 46t-288.5 153.5t-182.5 294.5t-59.5 461zM786 494 q0 -186 50.5 -255t136.5 -69q111 0 264 68q-16 98 -16 303v284q-115 35 -187 35q-147 0 -197.5 -80.5t-50.5 -285.5z" />
+<glyph unicode="A" horiz-adv-x="1239" d="M53 0l365 1421h407l361 -1419h-201l-92 317h-553l-88 -319h-199zM383 510h469l-182 727h-101z" />
+<glyph unicode="B" horiz-adv-x="1257" d="M170 0v1421h522q426 0 426 -354q0 -139 -41 -215t-131 -123q104 -39 157.5 -113.5t53.5 -216.5q0 -399 -444 -399h-543zM367 184h338q121 0 184 53.5t63 176.5q0 213 -254 213h-331v-443zM367 807h327q221 0 221 229q0 106 -56 153.5t-175 47.5h-317v-430z" />
+<glyph unicode="C" horiz-adv-x="1095" d="M96 709q0 389 113 562t412 173q82 0 180 -13.5t157 -25.5l58 -12l-6 -179q-231 35 -365 35q-205 0 -273.5 -119.5t-68.5 -420.5q0 -299 67.5 -418t278.5 -119q121 0 361 35l6 -180q-233 -49 -395 -50q-158 0 -262.5 45.5t-161 143.5t-79 225.5t-22.5 317.5z" />
+<glyph unicode="D" horiz-adv-x="1304" d="M170 0v1421h492q309 0 427.5 -171t118.5 -515q0 -174 -23.5 -299t-82 -228.5t-169 -155.5t-271.5 -52h-492zM367 188h295q104 0 174.5 42t105.5 122t48.5 170t13.5 213q0 248 -71 373t-271 125h-295v-1045z" />
+<glyph unicode="E" horiz-adv-x="1148" d="M170 0v1421h874v-190h-677v-426h555v-187h-555v-428h677v-190h-874z" />
+<glyph unicode="F" horiz-adv-x="1122" d="M170 0v1421h874v-190h-677v-504h555v-188h-555v-539h-197z" />
+<glyph unicode="G" horiz-adv-x="1236" d="M98 711q0 379 123 556t428 177q96 0 214 -14.5t188 -28.5l69 -15l-8 -174q-250 37 -436 37q-217 0 -295 -120.5t-78 -417.5t74 -419t293 -122q31 0 67.5 2t67.5 5t57.5 7l43 6.5t18.5 2.5v362h-199v178h395v-706q-291 -49 -465 -50q-311 0 -434 181.5t-123 552.5z" />
+<glyph unicode="H" horiz-adv-x="1392" d="M170 0v1421h199v-606h653v606h201v-1421h-201v625h-653v-625h-199z" />
+<glyph unicode="I" horiz-adv-x="526" d="M164 0v1421h198v-1421h-198z" />
+<glyph unicode="J" horiz-adv-x="634" d="M66 39q123 0 163.5 36t40.5 169v1177h199q0 -217 1 -596t1 -598q0 -121 -22.5 -195.5t-77 -113.5t-123 -51t-182.5 -12v184z" />
+<glyph unicode="K" horiz-adv-x="1218" d="M170 0v1421h199v-639l217 13l317 626h232l-371 -710l389 -711h-233l-330 602l-221 -12v-590h-199z" />
+<glyph unicode="L" horiz-adv-x="1032" d="M170 0v1421h199v-1231h585v-190h-784z" />
+<glyph unicode="M" horiz-adv-x="1738" d="M170 0v1421h334l366 -1138l369 1138h330v-1421h-199v1180h-31l-364 -1127h-211l-365 1127h-30v-1180h-199z" />
+<glyph unicode="N" horiz-adv-x="1423" d="M170 0v1421h336l508 -1179h41v1179h198v-1421h-327l-516 1180h-41v-1180h-199z" />
+<glyph unicode="O" horiz-adv-x="1329" d="M98 702.5q0 374.5 126 558t440 183.5q315 0 441 -183.5t126 -558.5q0 -379 -124 -552t-443 -173q-315 0 -440.5 175.5t-125.5 550zM303 702.5q0 -284.5 75 -408.5t286 -124q213 0 286.5 122t73.5 410q0 285 -76 417t-284.5 132t-284.5 -132t-76 -416.5z" />
+<glyph unicode="P" horiz-adv-x="1230" d="M170 0v1421h516q467 0 467 -469q0 -242 -116.5 -370.5t-350.5 -128.5h-317v-453h-199zM369 643h317q264 0 264 309q0 143 -63.5 211t-200.5 68h-317v-588z" />
+<glyph unicode="Q" horiz-adv-x="1329" d="M98 702.5q0 374.5 126 558t440 183.5q315 0 441 -183.5t126 -558.5q0 -252 -52.5 -408.5t-172.5 -234.5l170 -278l-185 -86l-182 297q-76 -14 -145 -15q-315 0 -440.5 175.5t-125.5 550zM303 702.5q0 -284.5 75 -408.5t286 -124q213 0 286.5 122t73.5 410q0 285 -76 417 t-284.5 132t-284.5 -132t-76 -416.5z" />
+<glyph unicode="R" horiz-adv-x="1269" d="M170 0v1421h530q238 0 351.5 -106.5t113.5 -337.5q0 -315 -241 -412l250 -565h-220l-227 512h-31h-327v-512h-199zM369 700h333q258 0 259 273q0 260 -261 260h-331v-533z" />
+<glyph unicode="S" horiz-adv-x="1089" d="M104 1059q0 195 122 291t333 96q70 0 169 -12.5t165 -24.5l63 -10l-16 -180q-262 33 -381 32q-254 0 -254 -188q0 -111 58.5 -153t248.5 -101q209 -66 291 -144.5t82 -254.5q0 -430 -446 -430q-68 0 -176.5 12t-182.5 24l-74 11l21 182q264 -35 410 -35q125 0 186 53.5 t61 175.5q0 98 -53 140.5t-213 89.5q-125 39 -193.5 69.5t-124 78.5t-76 113t-20.5 165z" />
+<glyph unicode="T" horiz-adv-x="999" d="M-12 1231v190h1024v-190h-410v-1231h-201v1231h-413z" />
+<glyph unicode="U" horiz-adv-x="1310" d="M147 442v979h199v-979q0 -145 79 -205.5t226 -60.5q152 0 232 61.5t80 204.5v979h200v-979q0 -244 -128 -352t-384 -108q-250 0 -377 109t-127 351z" />
+<glyph unicode="V" horiz-adv-x="1226" d="M53 1421h207l303 -1231h103l301 1231h207l-355 -1421h-409z" />
+<glyph unicode="W" horiz-adv-x="1869" d="M66 1421h206l246 -1218h49l256 1210h226l258 -1210h49l241 1218h207l-307 -1421h-330l-233 1124l-225 -1124h-332z" />
+<glyph unicode="X" horiz-adv-x="1189" d="M51 0l414 705l-414 716h223l322 -563l319 563h224l-408 -716l408 -705h-224l-319 555l-322 -555h-223z" />
+<glyph unicode="Y" horiz-adv-x="1144" d="M33 1421h221l319 -590l316 590h223l-438 -813v-608h-199v608z" />
+<glyph unicode="Z" horiz-adv-x="1167" d="M123 0v219l674 973v39h-674v190h921v-221l-673 -973v-37h673v-190h-921z" />
+<glyph unicode="[" horiz-adv-x="614" d="M74 1534h461v-188h-263v-1409h263v-189h-459z" />
+<glyph unicode="\" horiz-adv-x="1705" d="M430 1425l213 13l625 -1426l-213 -12z" />
+<glyph unicode="]" horiz-adv-x="614" d="M-43 -63h262v1409h-262v188h461l-2 -1786h-459v189z" />
+<glyph unicode="^" horiz-adv-x="1333" d="M33 899l370 711h287l373 -711h-287l-225 440l-232 -440h-286z" />
+<glyph unicode="_" horiz-adv-x="1064" d="M55 -10h877v-176h-877v176z" />
+<glyph unicode="`" horiz-adv-x="1116" d="M231 1370l72 180l471 -190l-69 -172z" />
+<glyph unicode="a" horiz-adv-x="1073" d="M94 299q0 152 80 222.5t248 84.5l287 25v74q0 156 -152 155q-68 0 -166 -7t-162 -13l-65 -9l-8 173q256 41 411 40q168 0 252 -79.5t84 -257.5v-463q2 -49 26.5 -70.5t74.5 -28.5l-7 -165q-104 0 -159.5 16t-100.5 57q-178 -76 -356 -76q-137 0 -212 84t-75 238zM291 303 q0 -158 125 -158q131 0 293 52v282l-265 -20q-153 -13 -153 -156z" />
+<glyph unicode="b" horiz-adv-x="1112" d="M166 2v1456h192v-475q147 61 275 61q209 0 298 -117.5t89 -400.5q0 -311 -107.5 -430t-386.5 -119q-114 0 -360 25zM358 164q121 -10 168 -10q180 0 237.5 81.5t57.5 290.5q0 184 -48 262t-163 78q-51 0 -113.5 -11t-99.5 -21l-39 -11v-659z" />
+<glyph unicode="c" horiz-adv-x="892" d="M92 526q0 279 99.5 398.5t328.5 119.5q45 0 119 -8t125 -16l51 -8l-8 -168q-162 18 -240 18q-164 0 -221 -72.5t-57 -263.5q0 -211 54 -287.5t226 -76.5l240 16l6 -168q-199 -33 -299 -33q-238 0 -331 124t-93 425z" />
+<glyph unicode="d" horiz-adv-x="1118" d="M92 512q0 276 101.5 404t324.5 128q37 0 91.5 -5t103.5 -11l47 -8v414h192v-1434h-192v59q-152 -80 -289 -79q-190 0 -284.5 118.5t-94.5 413.5zM289 510q0 -201 53 -275.5t156 -76.5q119 2 262 59v633q-2 0 -46 6t-94.5 10t-89.5 4q-131 0 -186 -86t-55 -274z" />
+<glyph unicode="e" horiz-adv-x="1038" d="M92 504q0 541 436 540q215 0 319.5 -114.5t104.5 -358.5l-12 -141h-651q0 -141 57 -207.5t191 -66.5q158 0 376 18l5 -154q-233 -43 -408 -43q-225 2 -321.5 128.5t-96.5 398.5zM287 582h473q0 158 -53.5 224t-178.5 66q-121 0 -180 -68t-61 -222z" />
+<glyph unicode="f" horiz-adv-x="690" d="M49 848v174h123v80q0 217 62.5 297t222.5 80l215 -19l-2 -160q-106 4 -170 5q-78 0 -105.5 -43t-27.5 -162v-78h280v-174h-280v-848h-195v848h-123z" />
+<glyph unicode="g" horiz-adv-x="1073" d="M88 -178q0 80 37 135t121 119q-63 41 -64 145q0 18 18.5 59.5t37.5 71.5l18 31q-156 82 -156 307q0 182 107.5 268t292.5 86q98 0 211 -26l303 6v-160h-166q53 -63 53 -174q0 -199 -97 -274.5t-310 -75.5q-53 0 -95 8q-31 -80 -30 -106q0 -55 37.5 -69.5t193.5 -14.5 q236 0 324 -62.5t88 -240.5q0 -346 -465 -347q-246 0 -352.5 68t-106.5 246zM281 -160q0 -86 58 -121.5t210 -35.5q137 0 201.5 37.5t64.5 123.5q0 92 -46 118t-185 28l-209 10q-53 -41 -73.5 -75t-20.5 -85zM295 690q0 -98 45 -142t154 -44q117 0 166 41t49 145 q0 109 -47.5 149t-163.5 40q-106 0 -154.5 -43.5t-48.5 -145.5z" />
+<glyph unicode="h" horiz-adv-x="1153" d="M166 0v1475h192v-494q166 63 295 63q205 0 278 -115.5t73 -393.5v-535h-193v532q0 186 -37 259t-156 73q-113 0 -260 -47v-817h-192z" />
+<glyph unicode="i" horiz-adv-x="505" d="M156 0v1022h194v-1022h-194zM156 1221v215h194v-215h-194z" />
+<glyph unicode="j" horiz-adv-x="524" d="M-66 -322q152 86 196 145.5t44 188.5v1010h195v-1012q0 -195 -70 -291t-281 -202zM174 1233v213h195v-213h-195z" />
+<glyph unicode="k" horiz-adv-x="1032" d="M166 0v1458h192v-840l140 13l270 391h219l-315 -475l323 -547h-219l-274 442l-144 -12v-430h-192z" />
+<glyph unicode="l" horiz-adv-x="514" d="M160 0v1458h194v-1458h-194z" />
+<glyph unicode="m" horiz-adv-x="1757" d="M166 0v1022h190v-61q104 59 219 73q42 7 80 8q15 0 29 -2q137 -6 209 -86q231 90 364 90q205 0 278 -112.5t73 -396.5v-535h-193v465q0 240 -32.5 319.5t-159.5 79.5q-53 0 -117 -15t-99.5 -29.5t-39.5 -18.5q20 -51 20 -271v-530h-192v526q0 197 -36 267.5t-157 70.5 q-113 0 -244 -61v-803h-192z" />
+<glyph unicode="n" horiz-adv-x="1159" d="M166 0v1022h192v-59q168 82 295 81q207 0 280 -115.5t73 -393.5v-535h-195v532q0 186 -37 259t-153 73q-115 0 -263 -61v-803h-192z" />
+<glyph unicode="o" horiz-adv-x="1081" d="M92 520q0 266 103.5 395t347.5 129q236 0 341 -131t105 -393q0 -274 -98 -408.5t-348 -134.5q-252 0 -351.5 132t-99.5 411zM289 520q0 -201 51 -283.5t203 -82.5q150 0 200 85t50 281q0 184 -57.5 267t-192.5 83q-145 0 -199.5 -78.5t-54.5 -271.5z" />
+<glyph unicode="p" horiz-adv-x="1114" d="M166 -446v1468h192v-61q145 84 281 83q199 0 291 -121.5t92 -400.5q0 -303 -105.5 -424t-347.5 -121q-111 0 -211 23v-446h-192zM358 170q147 -16 199 -16q150 0 208 82.5t58 287.5q0 184 -54 264t-163 80q-49 0 -110.5 -16t-98.5 -33l-39 -18v-631z" />
+<glyph unicode="q" horiz-adv-x="1099" d="M92 496q0 274 106.5 411t360.5 137l375 -22v-1471h-193v474q-92 -47 -221 -48q-227 0 -327.5 131.5t-100.5 387.5zM287 498q0 -172 55 -258t178 -86q113 0 221 53v655q-123 8 -182 8q-152 0 -212 -88.5t-60 -283.5z" />
+<glyph unicode="r" horiz-adv-x="733" d="M166 0v1022h192v-121q145 109 334 146v-205q-188 -37 -334 -125v-717h-192z" />
+<glyph unicode="s" horiz-adv-x="1005" d="M106 735q0 160 108 234.5t271 74.5q68 0 162 -10t156 -22l61 -11l-4 -163q-236 33 -362 32q-98 0 -147.5 -29.5t-49.5 -101.5q0 -57 46 -82.5t188 -48.5q207 -33 284.5 -95t77.5 -210q0 -172 -103.5 -249t-299.5 -77q-61 0 -154.5 11.5t-157.5 23.5l-63 11l8 165 q246 -35 350 -34q121 0 173 31.5t52 111.5q0 63 -43 88t-182 47q-207 35 -289 94t-82 209z" />
+<glyph unicode="t" horiz-adv-x="735" d="M47 848v174h137v307h193v-307h301v-174h-301v-447q0 -147 21.5 -194t105.5 -47l174 10l10 -168q-137 -25 -209 -25q-168 0 -231.5 80t-63.5 299v492h-137z" />
+<glyph unicode="u" horiz-adv-x="1144" d="M150 489v533h194v-530q0 -201 34 -269.5t157 -68.5q51 0 113.5 15t101.5 32l36 14v807h195v-1022h-195v59q-160 -82 -286 -82q-211 0 -280.5 111.5t-69.5 400.5z" />
+<glyph unicode="v" horiz-adv-x="987" d="M39 1022h201l221 -860h67l224 860h198l-276 -1022h-361z" />
+<glyph unicode="w" horiz-adv-x="1544" d="M45 1022h193l180 -848h39l213 830h204l213 -830h39l181 848h192l-227 -1022h-320l-182 743l-182 -743h-318z" />
+<glyph unicode="x" horiz-adv-x="948" d="M43 0l305 510l-305 512h209l221 -371l223 371h207l-305 -512l305 -510h-209l-221 371l-221 -371h-209z" />
+<glyph unicode="y" horiz-adv-x="989" d="M39 1022h192l232 -836h61l234 836h192l-288 -1047l-113 -419h-193l121 444h-160z" />
+<glyph unicode="z" horiz-adv-x="980" d="M111 0v174l526 676h-526v174h759v-174l-526 -676h526v-174h-759z" />
+<glyph unicode="{" horiz-adv-x="649" d="M29 557v164q115 29 157.5 77t42.5 132q0 27 -7 123t-7 137q0 188 95.5 270t314.5 90l2 -188q-121 -8 -163 -48t-42 -136q0 -35 7 -130.5t7 -123.5q0 -125 -45 -185.5t-160 -97.5q113 -37 159 -102.5t46 -188.5q0 -37 -7 -122t-7 -117q0 -96 42 -138.5t163 -50.5l-2 -188 q-217 8 -313.5 91t-96.5 265q0 43 7 135t7 115q0 84 -43.5 134t-156.5 83z" />
+<glyph unicode="|" d="M432 -332v1827h199v-1827h-199z" />
+<glyph unicode="}" horiz-adv-x="649" d="M14 -86q121 8 163 48t42 136q0 35 -7 130.5t-7 123.5q0 125 45 185.5t160 97.5q-113 37 -159 102.5t-46 188.5q0 37 7 122t7 117q0 96 -42 138.5t-163 50.5l2 188q217 -8 313.5 -91t96.5 -265q0 -43 -7 -135.5t-7 -114.5q0 -84 44 -134t156 -83v-164q-115 -29 -157.5 -77 t-42.5 -132q0 -27 7 -123t7 -137q0 -188 -95 -270t-315 -90z" />
+<glyph unicode="~" horiz-adv-x="1705" />
+<glyph unicode="&#xa2;" horiz-adv-x="894" d="M63 510q0 422 367 444v232h166v-238l188 -20l-6 -170q-178 12 -256 12q-145 0 -202.5 -56.5t-57.5 -203.5q0 -150 56.5 -203t211.5 -53l250 12l6 -170q-106 -14 -190 -20v-238h-166v232q-188 10 -277.5 110.5t-89.5 329.5z" />
+<glyph unicode="&#xa3;" horiz-adv-x="1167" d="M233 0v180h142v525h-94v176h94v118q0 227 73.5 310.5t231.5 83.5q35 0 104.5 -10.5t122.5 -20.5l54 -10v-193q-131 35 -199 35q-82 0 -119 -20.5t-54.5 -86t-21.5 -206.5h299v-179h-299q0 -88 -1 -262t-1 -260h283l153 33l31 -176l-166 -35q-104 0 -315.5 -1t-317.5 -1z " />
+<glyph unicode="&#xa5;" horiz-adv-x="1105" d="M14 1352h222l319 -512l315 512h224l-334 -557h248v-166h-342l-11 -39v-98h353v-166h-353v-326h-198v326h-359v166h359v98l-11 39h-348v166h252z" />
+<glyph unicode="&#xa6;" d="M430 -332v807h199v-807h-199zM430 725v811h199v-811h-199z" />
+<glyph unicode="&#xa7;" d="M176 512q0 115 98 227q-90 66 -90 234q0 156 91.5 224.5t267.5 68.5q129 0 319 -27l-4 -65q-217 27 -315 26q-287 0 -287 -223q0 -72 16.5 -117t61.5 -71.5t91 -39t134 -26.5q182 -29 261 -85t79 -202q0 -129 -78 -258q72 -61 72 -192q0 -324 -354 -324q-55 0 -141.5 7 t-143.5 14l-59 6l6 65q225 -29 338 -28q283 0 282 258q0 61 -16.5 100t-61.5 60.5t-83.5 30.5t-122.5 22q-100 16 -155.5 31.5t-109 48t-75 90t-21.5 145.5zM248 516q0 -72 16.5 -117t61.5 -71.5t91 -39t134 -26.5q158 -25 217 -51q25 37 42 101.5t17 117.5q0 117 -66.5 161 t-215.5 66q-162 27 -219 54q-31 -35 -54.5 -92.5t-23.5 -102.5z" />
+<glyph unicode="&#xa8;" horiz-adv-x="1705" d="M139 1237v233h199v-233h-199zM541 1237v233h198v-233h-198z" />
+<glyph unicode="&#xa9;" d="M20 889q0 227 149.5 386t373 159t374 -159t150.5 -386t-150.5 -385t-374 -158t-373 158t-149.5 385zM86 889q0 -201 130 -339t326.5 -138t327.5 138t131 339t-131 340t-327.5 139t-326.5 -139t-130 -340zM319 887q0 156 47.5 235.5t176.5 79.5q78 0 151 -14l-2 -66 q-84 14 -149 15q-100 0 -129 -57.5t-29 -192.5q0 -127 33 -186.5t125 -59.5l149 16l2 -65q-88 -16 -151 -17q-127 0 -175.5 79t-48.5 233z" />
+<glyph unicode="&#xaa;" horiz-adv-x="1060" d="M283 954q0 143 153 156l209 14v47q0 66 -24.5 89.5t-81.5 23.5l-213 -14l-4 63q141 16 217 17q88 0 129 -42t41 -139v-274q12 -41 75 -47l-4 -57q-66 2 -110 45q-129 -45 -244 -45q-63 0 -103 44.5t-40 118.5zM350 950q0 -94 82 -94q41 0 94.5 8t85.5 17l33 10v174 l-199 -12q-51 -4 -73.5 -28t-22.5 -75z" />
+<glyph unicode="&#xab;" horiz-adv-x="1705" d="M451 520v74l342 264v-80l-277 -217l277 -239v-84q-272 231 -342 282zM874 520v74l343 264v-80l-277 -217l277 -239v-84q-273 231 -343 282z" />
+<glyph unicode="&#xad;" horiz-adv-x="901" d="M135 481v189h631v-189h-631z" />
+<glyph unicode="&#xae;" d="M20 889q0 227 149.5 386t373 159t374 -159t150.5 -386t-150.5 -385t-374 -158t-373 158t-149.5 385zM86 889q0 -201 130 -339t326.5 -138t327.5 138t131 339t-131 340t-327.5 139t-326.5 -139t-130 -340zM334 565v645h186q131 0 183.5 -41t52.5 -143q0 -156 -121 -186 l133 -275h-72l-135 269h-162v-269h-65zM399 899h164q70 0 98.5 27.5t28.5 99.5q0 68 -39 93.5t-125 25.5h-127v-246z" />
+<glyph unicode="&#xaf;" horiz-adv-x="1705" />
+<glyph unicode="&#xb0;" d="M205 1155q0 131 82 213t213 82t213 -82t82 -213t-81 -212t-214 -81t-214 81t-81 212zM324 1155q0 -80 48 -129t128 -49t130 49t50 129t-50 130t-130 50t-128 -50t-48 -130z" />
+<glyph unicode="&#xb1;" d="M66 102v179h966v-179h-966zM66 639v178h389v258h180v-258h397v-178h-397v-254h-180v254h-389z" />
+<glyph unicode="&#xb2;" d="M104 0v182l363 363q104 106 152.5 160.5t87 128t38.5 145.5q0 106 -65.5 152.5t-204.5 46.5q-147 0 -348 -39l-14 182q215 53 405 53q221 0 326.5 -90t105.5 -280q0 -150 -64.5 -258.5t-213.5 -256.5l-301 -299h610v-190h-877z" />
+<glyph unicode="&#xb3;" d="M98 27l23 180q223 -37 403 -37q266 2 267 217q0 203 -252 211h-273v182h273q78 0 149.5 62.5t71.5 146.5q0 104 -61.5 148.5t-190.5 44.5q-80 0 -173 -9.5t-147 -17.5l-53 -8l-18 176q221 51 401 51q244 0 345.5 -86t101.5 -272q0 -53 -16.5 -101.5t-30 -74t-52.5 -58 t-44 -36l-44 -29.5q111 -45 164 -112.5t53 -211.5q0 -211 -107.5 -313.5t-338.5 -102.5q-209 1 -451 50z" />
+<glyph unicode="&#xb4;" horiz-adv-x="1705" d="M219 1360l471 190l72 -180l-473 -182z" />
+<glyph unicode="&#xb5;" d="M141 -475v1499h193v-565q2 -180 38 -242.5t154 -62.5q49 0 112.5 15t102.5 32l37 14v807h195v-1022h-195v59q-160 -82 -286 -82q-102 0 -158 46v-498h-193z" />
+<glyph unicode="&#x3bc;" d="M141 -475v1499h193v-565q2 -180 38 -242.5t154 -62.5q49 0 112.5 15t102.5 32l37 14v807h195v-1022h-195v59q-160 -82 -286 -82q-102 0 -158 46v-498h-193z" />
+<glyph unicode="&#xb6;" horiz-adv-x="1333" d="M55 1047q0 170 106.5 278.5t274.5 108.5h774v-191h-153v-1243h-193v1243h-221v-1243h-192v664h-15q-168 0 -274.5 106.5t-106.5 276.5z" />
+<glyph unicode="&#xb8;" horiz-adv-x="1705" d="M791 -342l4 53q18 -4 57 -4t48 14.5t9 59.5q0 43 -8 54t-49 11h-49v156h67v-98q63 -2 86 -28t23 -95q0 -74 -25.5 -102.5t-99.5 -28.5q-24 0 -63 8z" />
+<glyph unicode="&#xb9;" d="M109 1063l432 289h186v-1352h-199v1122l-327 -217z" />
+<glyph unicode="&#xba;" horiz-adv-x="1077" d="M295 1073q0 276 235 277q119 0 175.5 -66.5t56.5 -210.5q0 -283 -232 -282q-235 -1 -235 282zM365 1073q0 -117 38.5 -167t126.5 -50t125 50t37 167t-37 164t-125 47t-126.5 -48t-38.5 -163z" />
+<glyph unicode="&#xbb;" horiz-adv-x="1705" d="M492 238v84l276 239l-276 217v80l342 -264v-74q-70 -51 -342 -282zM915 238v84l277 239l-277 217v80l342 -264v-74q-70 -51 -342 -282z" />
+<glyph unicode="&#xc0;" horiz-adv-x="1236" d="M57 0l365 1421h407l361 -1419h-201l-92 317h-553l-88 -319h-199zM313 1780l72 180l471 -191l-70 -172zM387 510h469l-182 727h-101z" />
+<glyph unicode="&#xc1;" horiz-adv-x="1236" d="M57 0l365 1421h407l361 -1419h-201l-92 317h-553l-88 -319h-199zM342 1769l471 191l72 -180l-473 -183zM387 510h469l-182 727h-101z" />
+<glyph unicode="&#xc2;" horiz-adv-x="1236" d="M57 0l365 1421h407l361 -1419h-201l-92 317h-553l-88 -319h-199zM283 1602l260 331h155l263 -331h-197l-141 176l-144 -176h-196zM387 510h469l-182 727h-101z" />
+<glyph unicode="&#xc3;" horiz-adv-x="1236" d="M57 0l365 1421h407l361 -1419h-201l-92 317h-553l-88 -319h-199zM307 1763q115 111 195 111q68 0 145.5 -54.5t116.5 -54.5t125 82l45 -35q-104 -113 -170 -112.5t-142.5 55.5t-121.5 55q-53 0 -142 -84zM387 510h469l-182 727h-101z" />
+<glyph unicode="&#xc4;" horiz-adv-x="1236" d="M57 0l365 1421h407l361 -1419h-201l-92 317h-553l-88 -319h-199zM322 1647v233h198v-233h-198zM387 510h469l-182 727h-101zM723 1647v233h199v-233h-199z" />
+<glyph unicode="&#xc5;" horiz-adv-x="1236" d="M57 0l365 1421h407l361 -1419h-201l-92 317h-553l-88 -319h-199zM387 510h469l-182 727h-101zM430 1737q0 82 55.5 137t137.5 55t137 -55t55 -137t-55 -137.5t-137 -55.5t-137.5 55.5t-55.5 137.5zM500 1736.5q0 -53.5 35.5 -90t89.5 -36.5q51 0 87 36.5t36 90t-36 89.5 t-87 36q-53 0 -89 -36t-36 -89.5z" />
+<glyph unicode="&#xc6;" horiz-adv-x="1839" d="M88 0l432 1421h1231v-190h-678v-412h555v-188h-555v-441h678v-190h-874v319h-488l-98 -319h-203zM440 510h437v694h-224z" />
+<glyph unicode="&#xc7;" horiz-adv-x="1099" d="M96 709q0 389 113 562t412 173q82 0 180 -13.5t157 -25.5l58 -12l-6 -179q-231 35 -365 35q-205 0 -273.5 -119.5t-68.5 -420.5q0 -299 67.5 -418t278.5 -119q121 0 361 35l6 -180q-233 -49 -395 -50q-158 0 -262.5 45.5t-161 143.5t-79 225.5t-22.5 317.5zM510 -342 l4 53q18 -4 57 -4t48.5 14.5t9.5 59.5q0 43 -8.5 54t-49.5 11h-49v156h68v-98q63 -2 85.5 -28t22.5 -95q0 -74 -25.5 -102.5t-99.5 -28.5q-24 0 -63 8z" />
+<glyph unicode="&#xc8;" horiz-adv-x="1171" d="M211 0v1434h838v-70h-764v-592h641v-70h-641v-632h764v-70h-838zM414 1845l32 64l394 -197l-31 -55z" />
+<glyph unicode="&#xc9;" horiz-adv-x="1171" d="M176 0v1421h875v-190h-678v-426h555v-187h-555v-428h678v-190h-875zM375 1769l471 191l72 -180l-474 -183z" />
+<glyph unicode="&#xca;" horiz-adv-x="1171" d="M176 0v1421h875v-190h-678v-426h555v-187h-555v-428h678v-190h-875zM297 1602l260 331h156l262 -331h-197l-141 176l-143 -176h-197z" />
+<glyph unicode="&#xcb;" horiz-adv-x="1171" d="M176 0v1421h875v-190h-678v-426h555v-187h-555v-428h678v-190h-875zM336 1647v233h199v-233h-199zM737 1647v233h199v-233h-199z" />
+<glyph unicode="&#xcc;" horiz-adv-x="462" d="M-57 1780l71 180l471 -191l-69 -172zM164 0v1421h198v-1421h-198z" />
+<glyph unicode="&#xcd;" horiz-adv-x="462" d="M-70 1769l471 191l72 -180l-473 -183zM164 0v1421h198v-1421h-198z" />
+<glyph unicode="&#xce;" horiz-adv-x="473" d="M-102 1602l260 331h155l262 -331h-196l-141 176l-144 -176h-196zM168 0v1421h199v-1421h-199z" />
+<glyph unicode="&#xcf;" horiz-adv-x="462" d="M-68 1647v233h199v-233h-199zM164 0v1421h198v-1421h-198zM334 1647v233h198v-233h-198z" />
+<glyph unicode="&#xd0;" horiz-adv-x="1304" d="M41 608v191h623v-191h-623zM170 0v1421h492q309 0 427.5 -171t118.5 -515q0 -174 -23.5 -299t-82 -228.5t-169 -155.5t-271.5 -52h-492zM367 188h295q104 0 174.5 42t105.5 122t48.5 170t13.5 213q0 248 -71 373t-271 125h-295v-1045z" />
+<glyph unicode="&#xd1;" horiz-adv-x="1406" d="M156 0v1421h336l507 -1179h41v1179h199v-1421h-328l-516 1180h-41v-1180h-198zM387 1763q115 111 195 111q70 0 147.5 -54.5t114.5 -54.5t125 82l45 -35q-104 -113 -170 -112.5t-142.5 55.5t-121.5 55q-53 0 -142 -84z" />
+<glyph unicode="&#xd2;" horiz-adv-x="1343" d="M106 702.5q0 374.5 126 558t440 183.5q315 0 441 -183.5t126 -558.5q0 -379 -124 -552t-443 -173q-315 0 -440.5 175.5t-125.5 550zM311 702.5q0 -284.5 75 -408.5t286 -124q213 0 286.5 122t73.5 410q0 285 -75.5 417t-284.5 132t-285 -132t-76 -416.5zM383 1780l72 180 l471 -191l-70 -172z" />
+<glyph unicode="&#xd3;" horiz-adv-x="1343" d="M106 702.5q0 374.5 126 558t440 183.5q315 0 441 -183.5t126 -558.5q0 -379 -124 -552t-443 -173q-315 0 -440.5 175.5t-125.5 550zM311 702.5q0 -284.5 75 -408.5t286 -124q213 0 286.5 122t73.5 410q0 285 -75.5 417t-284.5 132t-285 -132t-76 -416.5zM371 1769 l471 191l71 -180l-473 -183z" />
+<glyph unicode="&#xd4;" horiz-adv-x="1343" d="M106 702.5q0 374.5 126 558t440 183.5q315 0 441 -183.5t126 -558.5q0 -379 -124 -552t-443 -173q-315 0 -440.5 175.5t-125.5 550zM311 702.5q0 -284.5 75 -408.5t286 -124q213 0 286.5 122t73.5 410q0 285 -75.5 417t-284.5 132t-285 -132t-76 -416.5zM334 1602 l260 331h156l262 -331h-197l-141 176l-144 -176h-196z" />
+<glyph unicode="&#xd5;" horiz-adv-x="1343" d="M106 702.5q0 374.5 126 558t440 183.5q315 0 441 -183.5t126 -558.5q0 -379 -124 -552t-443 -173q-315 0 -440.5 175.5t-125.5 550zM311 702.5q0 -284.5 75 -408.5t286 -124q213 0 286.5 122t73.5 410q0 285 -75.5 417t-284.5 132t-285 -132t-76 -416.5zM358 1763 q115 111 195 111q70 0 147.5 -54.5t114.5 -54.5t125 82l45 -35q-104 -113 -169.5 -112.5t-142.5 55.5t-122 55q-53 0 -141 -84z" />
+<glyph unicode="&#xd6;" horiz-adv-x="1343" d="M106 702.5q0 374.5 126 558t440 183.5q315 0 441 -183.5t126 -558.5q0 -379 -124 -552t-443 -173q-315 0 -440.5 175.5t-125.5 550zM311 702.5q0 -284.5 75 -408.5t286 -124q213 0 286.5 122t73.5 410q0 285 -75.5 417t-284.5 132t-285 -132t-76 -416.5zM373 1647v233 h198v-233h-198zM774 1647v233h199v-233h-199z" />
+<glyph unicode="&#xd7;" horiz-adv-x="1333" d="M360 184l377 387l-377 383l129 127l373 -385l375 385l129 -127l-377 -383l379 -387l-129 -125l-377 383l-375 -383z" />
+<glyph unicode="&#xd8;" horiz-adv-x="1343" d="M106 702q0 375 126 558.5t442 183.5q125 0 219 -35l113 240l180 -68l-125 -264q178 -164 178 -615q0 -379 -124 -552t-441 -173q-121 0 -223 31l-121 -258l-176 78l127 272q-175 156 -175 602zM313 702q0 -274 76 -370l418 895q-43 16 -78 20q-70 4 -117 -4 q-172 -18 -235.5 -149.5t-63.5 -391.5zM535 188q59 -18 139 -18q213 0 286.5 122t73.5 410q0 274 -78 388z" />
+<glyph unicode="&#xd9;" horiz-adv-x="1314" d="M154 442v979h198v-979q0 -145 79 -205.5t226 -60.5q152 0 232 61.5t80 204.5v979h200v-979q0 -244 -128 -352t-384 -108q-250 0 -376.5 109t-126.5 351zM375 1780l71 180l472 -191l-70 -172z" />
+<glyph unicode="&#xda;" horiz-adv-x="1314" d="M154 442v979h198v-979q0 -145 79 -205.5t226 -60.5q152 0 232 61.5t80 204.5v979h200v-979q0 -244 -128 -352t-384 -108q-250 0 -376.5 109t-126.5 351zM362 1769l472 191l71 -180l-473 -183z" />
+<glyph unicode="&#xdb;" horiz-adv-x="1314" d="M154 442v979h198v-979q0 -145 79 -205.5t226 -60.5q152 0 232 61.5t80 204.5v979h200v-979q0 -244 -128 -352t-384 -108q-250 0 -376.5 109t-126.5 351zM326 1602l260 331h155l263 -331h-197l-141 176l-144 -176h-196z" />
+<glyph unicode="&#xdc;" horiz-adv-x="1314" d="M154 442v979h198v-979q0 -145 79 -205.5t226 -60.5q152 0 232 61.5t80 204.5v979h200v-979q0 -244 -128 -352t-384 -108q-250 0 -376.5 109t-126.5 351zM367 1647v233h198v-233h-198zM768 1647v233h199v-233h-199z" />
+<glyph unicode="&#xdd;" horiz-adv-x="1105" d="M14 1421h222l319 -590l315 590h224l-439 -813v-608h-198v608zM233 1769l472 191l71 -180l-473 -183z" />
+<glyph unicode="&#xde;" horiz-adv-x="1155" d="M111 0v1421h200v-221h316q471 0 471 -465q0 -242 -119 -373t-352 -131h-316v-231h-200zM311 424h316q266 0 266 311q0 141 -64.5 209t-201.5 68h-316v-588z" />
+<glyph unicode="&#xdf;" horiz-adv-x="1705" d="M436 0v1090q0 213 64.5 288.5t249.5 75.5q211 0 300 -65.5t89 -210.5q0 -88 -31 -133.5t-100 -71.5l-35 -14l-29 -11l-23 -9q-13 -5 -19.5 -8t-13.5 -8t-10.5 -8.5t-6.5 -9.5t-4 -11t-1 -13q0 -20 22.5 -38t149.5 -93l68 -40l58 -36l46 -29q27 -16 39.5 -26.5t27.5 -24.5 t21.5 -25.5t10.5 -25t4 -29.5q0 -145 -18.5 -237.5t-71 -163t-148.5 -101t-250 -30.5l-159 8l8 69q117 -8 151 -8q137 0 221 26.5t125 92.5t52.5 139.5t11.5 204.5q0 25 -54.5 63.5t-193.5 118.5q-137 78 -168 106.5t-31 78.5q0 31 6.5 50t25 33.5t31.5 21.5t52 21.5 l64 24.5q66 29 80 51.5t14 94.5q0 115 -70.5 160.5t-240.5 45.5q-147 0 -193.5 -60t-46.5 -261v-1063h-74z" />
+<glyph unicode="&#xe0;" horiz-adv-x="1097" d="M72 299q0 152 79.5 222.5t247.5 84.5l287 25v74q0 156 -151 155q-68 0 -166.5 -7t-163.5 -13l-64 -9l-8 173q256 41 412 40q168 0 252 -79.5t84 -257.5v-463q2 -49 26.5 -70.5t73.5 -28.5l-6 -165q-104 0 -159.5 16t-100.5 57q-178 -76 -357 -76q-137 0 -211.5 84 t-74.5 238zM209 1370l72 180l471 -190l-70 -172zM268 303q0 -158 125 -158q131 0 293 52v282l-264 -20q-154 -13 -154 -156z" />
+<glyph unicode="&#xe1;" horiz-adv-x="1097" d="M72 299q0 -154 74.5 -238t211.5 -84q176 0 357 76q45 -41 100 -57t160 -16l6 165q-49 6 -73.5 28t-26.5 71v463q0 178 -84 257.5t-252 79.5q-156 0 -412 -40l8 -173q242 29 393.5 29t151.5 -155v-74l-287 -25q-168 -14 -247.5 -84.5t-79.5 -222.5zM268 303q0 143 154 156 l264 20v-282q-162 -51 -293 -52q-125 0 -125 158zM319 1360l472 190l71 -180l-473 -182z" />
+<glyph unicode="&#xe2;" horiz-adv-x="1097" d="M72 299q0 -154 74.5 -238t211.5 -84q176 0 357 76q45 -41 100 -57t160 -16l6 165q-49 6 -73.5 28t-26.5 71v463q0 178 -84 257.5t-252 79.5q-156 0 -412 -40l8 -173q242 29 393.5 29t151.5 -155v-74l-287 -25q-168 -14 -247.5 -84.5t-79.5 -222.5zM164 1192l260 332h156 l262 -332h-197l-141 176l-144 -176h-196zM268 303q0 143 154 156l264 20v-282q-162 -51 -293 -52q-125 0 -125 158z" />
+<glyph unicode="&#xe3;" horiz-adv-x="1097" d="M72 299q0 -154 74.5 -238t211.5 -84q176 0 357 76q45 -41 100 -57t160 -16l6 165q-49 6 -73.5 28t-26.5 71v463q0 178 -84 257.5t-252 79.5q-156 0 -412 -40l8 -173q242 29 393.5 29t151.5 -155v-74l-287 -25q-168 -14 -247.5 -84.5t-79.5 -222.5zM188 1354 q115 111 195 110q68 0 145.5 -54t116.5 -54t125 82l45 -35q-104 -113 -169.5 -113t-142.5 55.5t-122 55.5q-53 0 -141 -84zM268 303q0 143 154 156l264 20v-282q-162 -51 -293 -52q-125 0 -125 158z" />
+<glyph unicode="&#xe4;" horiz-adv-x="1097" d="M72 299q0 -154 74.5 -238t211.5 -84q176 0 357 76q45 -41 100 -57t160 -16l6 165q-49 6 -73.5 28t-26.5 71v463q0 178 -84 257.5t-252 79.5q-156 0 -412 -40l8 -173q242 29 393.5 29t151.5 -155v-74l-287 -25q-168 -14 -247.5 -84.5t-79.5 -222.5zM199 1237v233h198v-233 h-198zM268 303q0 143 154 156l264 20v-282q-162 -51 -293 -52q-125 0 -125 158zM600 1237v233h199v-233h-199z" />
+<glyph unicode="&#xe5;" horiz-adv-x="1097" d="M72 299q0 -154 74.5 -238t211.5 -84q176 0 357 76q45 -41 100 -57t160 -16l6 165q-49 6 -73.5 28t-26.5 71v463q0 178 -84 257.5t-252 79.5q-156 0 -412 -40l8 -173q242 29 393.5 29t151.5 -155v-74l-287 -25q-168 -14 -247.5 -84.5t-79.5 -222.5zM268 303q0 143 154 156 l264 20v-282q-162 -51 -293 -52q-125 0 -125 158zM309 1327q0 82 55.5 137.5t137.5 55.5t137 -55.5t55 -137.5t-55 -137t-137 -55q-84 0 -138.5 55t-54.5 137zM379 1327q0 -53 36 -90t89 -37q51 0 87 37t36 90t-36 89t-87 36q-53 0 -89 -36t-36 -89z" />
+<glyph unicode="&#xe6;" horiz-adv-x="1695" d="M109 299q0 164 86 229.5t280 81.5l250 21v74q0 76 -41 115.5t-113 39.5q-68 0 -165 -5t-160 -11l-66 -4l-8 170q254 35 410 34q201 0 272 -122q102 123 305 122q213 0 317.5 -114.5t104.5 -358.5l-12 -141h-651q2 -141 58 -207.5t189 -66.5q160 0 377 18l4 -154 q-233 -43 -407 -43q-203 0 -305 107l-60 -27q-178 -80 -379 -80q-139 0 -212.5 84t-73.5 238zM305 303q0 -158 125 -158q111 0 318 60q-27 100 -27 274l-260 -20q-80 -6 -118 -43t-38 -113zM918 582h471q0 158 -53.5 224t-176.5 66t-182 -69t-59 -221z" />
+<glyph unicode="&#xe7;" horiz-adv-x="892" d="M92 526q0 279 99.5 398.5t328.5 119.5q45 0 119 -8t125 -16l51 -8l-8 -168q-162 18 -240 18q-164 0 -221 -72.5t-57 -263.5q0 -211 54 -287.5t226 -76.5l240 16l6 -168q-199 -33 -299 -33q-238 0 -331 124t-93 425zM436 -342l4 53q18 -4 57.5 -4t48.5 14.5t9 59.5 q0 43 -8 54t-49 11h-49v156h67v-98q63 -2 86 -28t23 -95q0 -74 -26 -102.5t-99 -28.5q-25 0 -64 8z" />
+<glyph unicode="&#xe8;" horiz-adv-x="1017" d="M90 504q0 541 436 540q215 0 319.5 -114.5t104.5 -358.5l-12 -141h-651q0 -141 57 -207.5t191 -66.5q158 0 376 18l4 -154q-233 -43 -407 -43q-225 2 -321.5 128.5t-96.5 398.5zM193 1370l71 180l471 -190l-69 -172zM285 582h473q0 158 -53.5 224t-178.5 66 q-121 0 -180 -68t-61 -222z" />
+<glyph unicode="&#xe9;" horiz-adv-x="1017" d="M90 504q0 541 436 540q215 0 319.5 -114.5t104.5 -358.5l-12 -141h-651q0 -141 57 -207.5t191 -66.5q158 0 376 18l4 -154q-233 -43 -407 -43q-225 2 -321.5 128.5t-96.5 398.5zM266 1360l471 190l72 -180l-473 -182zM285 582h473q0 158 -53.5 224t-178.5 66 q-121 0 -180 -68t-61 -222z" />
+<glyph unicode="&#xea;" horiz-adv-x="1017" d="M90 504q0 541 436 540q215 0 319.5 -114.5t104.5 -358.5l-12 -141h-651q0 -141 57 -207.5t191 -66.5q158 0 376 18l4 -154q-233 -43 -407 -43q-225 2 -321.5 128.5t-96.5 398.5zM205 1192l260 332h156l262 -332h-197l-141 176l-144 -176h-196zM285 582h473 q0 158 -53.5 224t-178.5 66q-121 0 -180 -68t-61 -222z" />
+<glyph unicode="&#xeb;" horiz-adv-x="1017" d="M90 504q0 541 436 540q215 0 319.5 -114.5t104.5 -358.5l-12 -141h-651q0 -141 57 -207.5t191 -66.5q158 0 376 18l4 -154q-233 -43 -407 -43q-225 2 -321.5 128.5t-96.5 398.5zM248 1237v233h198v-233h-198zM285 582h473q0 158 -53.5 224t-178.5 66q-121 0 -180 -68 t-61 -222zM649 1237v233h199v-233h-199z" />
+<glyph unicode="&#xec;" horiz-adv-x="534" d="M-86 1370l72 180l471 -190l-70 -172zM174 0v1022h195v-1022h-195z" />
+<glyph unicode="&#xed;" horiz-adv-x="534" d="M29 1360l471 190l71 -180l-473 -182zM174 0v1022h195v-1022h-195z" />
+<glyph unicode="&#xee;" horiz-adv-x="534" d="M-72 1192l260 332h156l262 -332h-196l-142 176l-143 -176h-197zM174 0v1022h195v-1022h-195z" />
+<glyph unicode="&#xef;" horiz-adv-x="534" d="M-33 1237v233h199v-233h-199zM174 0v1022h195v-1022h-195zM369 1237v233h198v-233h-198z" />
+<glyph unicode="&#xf0;" />
+<glyph unicode="&#xf1;" horiz-adv-x="1175" d="M178 0h193v803q147 61 262 61q117 0 153.5 -72.5t36.5 -259.5v-532h195v535q0 279 -73 394t-279 115q-57 0 -131 -20t-119 -41l-45 -20v59h-193v-1022zM297 1354q115 111 195 110q70 0 147.5 -54t114.5 -54t125 82l45 -35q-104 -113 -170 -113t-142.5 55.5t-122.5 55.5 q-53 0 -141 -84z" />
+<glyph unicode="&#xf2;" horiz-adv-x="1097" d="M158 520q0 266 103.5 395t346.5 129q236 0 341.5 -131t105.5 -393q0 -274 -98.5 -408.5t-348.5 -134.5q-252 0 -351 132t-99 411zM209 1370l72 180l471 -190l-70 -172zM354 520q0 -201 51.5 -283.5t202.5 -82.5q150 0 200 85t50 281q0 184 -57.5 267t-192.5 83 q-145 0 -199.5 -78.5t-54.5 -271.5z" />
+<glyph unicode="&#xf3;" horiz-adv-x="1097" d="M158 520q0 -279 99 -411t351 -132q250 0 348.5 134.5t98.5 408.5q0 262 -105.5 393t-341.5 131q-244 0 -347 -129t-103 -395zM279 1360l471 190l71 -180l-473 -182zM354 520q0 193 54.5 271.5t199.5 78.5q135 0 192.5 -82.5t57.5 -267.5q0 -197 -50 -281.5t-200 -84.5 q-152 0 -203 82.5t-51 283.5z" />
+<glyph unicode="&#xf4;" horiz-adv-x="1097" d="M158 520q0 -279 99 -411t351 -132q250 0 348.5 134.5t98.5 408.5q0 262 -105.5 393t-341.5 131q-244 0 -347 -129t-103 -395zM201 1192l260 332h155l263 -332h-197l-141 176l-144 -176h-196zM354 520q0 193 54.5 271.5t199.5 78.5q135 0 192.5 -82.5t57.5 -267.5 q0 -197 -50 -281.5t-200 -84.5q-152 0 -203 82.5t-51 283.5z" />
+<glyph unicode="&#xf5;" horiz-adv-x="1097" d="M158 520q0 -279 99 -411t351 -132q250 0 348.5 134.5t98.5 408.5q0 262 -105.5 393t-341.5 131q-244 0 -347 -129t-103 -395zM225 1354q115 111 195 110q68 0 145.5 -54t116.5 -54t125 82l45 -35q-104 -113 -170 -113t-142.5 55.5t-121.5 55.5q-53 0 -142 -84zM354 520 q0 193 54.5 271.5t199.5 78.5q135 0 192.5 -82.5t57.5 -267.5q0 -197 -50 -281.5t-200 -84.5q-152 0 -203 82.5t-51 283.5z" />
+<glyph unicode="&#xf6;" horiz-adv-x="1097" d="M158 520q0 -279 99 -411t351 -132q250 0 348.5 134.5t98.5 408.5q0 262 -105.5 393t-341.5 131q-244 0 -347 -129t-103 -395zM240 1237v233h198v-233h-198zM354 520q0 193 54.5 271.5t199.5 78.5q135 0 192.5 -82.5t57.5 -267.5q0 -197 -50 -281.5t-200 -84.5 q-152 0 -203 82.5t-51 283.5zM641 1237v233h199v-233h-199z" />
+<glyph unicode="&#xf7;" d="M160 678v215h655v-215h-655zM274 768v190h437v-190h-437zM395 170v227h195v-227h-195z" />
+<glyph unicode="&#xf8;" horiz-adv-x="1077" d="M123 535q0 283 95 395t325 112q96 0 170 -24l82 196l61 -22l-82 -201q180 -104 180 -461q0 -301 -84 -424.5t-327 -123.5q-100 0 -174 18l-86 -213l-62 20l86 213q-104 47 -144 166.5t-40 348.5zM199 535q0 -201 26.5 -303.5t108.5 -145.5l354 868q-68 23 -145 23 q-199 0 -271.5 -93t-72.5 -349zM395 61q57 -14 148 -14q111 0 179.5 27.5t102 94.5t44 146.5t10.5 214.5q0 299 -134 394z" />
+<glyph unicode="&#xf9;" horiz-adv-x="1046" d="M168 489v533h194v-530q0 -201 34 -269.5t157 -68.5q51 0 113.5 15t99.5 32l39 14v807h194v-1022h-194v59q-160 -82 -287 -82q-211 0 -280.5 111.5t-69.5 400.5zM227 1370l72 180l471 -190l-70 -172z" />
+<glyph unicode="&#xfa;" horiz-adv-x="1046" d="M168 489q0 -289 69.5 -400.5t280.5 -111.5q57 0 129 20.5t115 41.5l43 20v-59h194v1022h-194v-807q-137 -61 -252 -61q-123 0 -157 68.5t-34 269.5v530h-194v-533zM297 1360l471 190l72 -180l-473 -182z" />
+<glyph unicode="&#xfb;" horiz-adv-x="1046" d="M168 489q0 -289 69.5 -400.5t280.5 -111.5q57 0 129 20.5t115 41.5l43 20v-59h194v1022h-194v-807q-137 -61 -252 -61q-123 0 -157 68.5t-34 269.5v530h-194v-533zM219 1192l260 332h156l262 -332h-197l-141 176l-143 -176h-197z" />
+<glyph unicode="&#xfc;" horiz-adv-x="1046" d="M168 489q0 -289 69.5 -400.5t280.5 -111.5q57 0 129 20.5t115 41.5l43 20v-59h194v1022h-194v-807q-137 -61 -252 -61q-123 0 -157 68.5t-34 269.5v530h-194v-533zM258 1237v233h199v-233h-199zM659 1237v233h199v-233h-199z" />
+<glyph unicode="&#xfd;" horiz-adv-x="983" d="M25 1022h192l232 -836h61l233 836h193l-289 -1047l-112 -419h-193l121 444h-160zM244 1360l471 190l71 -180l-473 -182z" />
+<glyph unicode="&#xfe;" horiz-adv-x="1101" d="M205 -446v1904h194v-475q145 61 273 61q209 0 298 -117.5t89 -400.5q0 -311 -107.5 -430t-384.5 -119q-29 0 -90 4.5t-78 4.5v-432h-194zM399 164q119 -10 166 -10q180 0 238.5 82.5t58.5 289.5q0 184 -48 262t-165 78q-49 0 -111.5 -11t-99.5 -21l-39 -11v-659z" />
+<glyph unicode="&#xff;" horiz-adv-x="983" d="M61 1024l318 -1024h125l-148 -471h76l469 1495h-76l-303 -958h-84l-301 958h-76zM281 1307v127h71v-127h-71zM629 1307v127h71v-127h-71z" />
+<glyph unicode="&#x152;" horiz-adv-x="1933" d="M123 707q0 391 118.5 564t420.5 173q133 0 272 -23h866v-192h-670v-410h547v-190h-547v-436h670v-193h-862q-150 -23 -276 -23q-311 0 -425 172.5t-114 557.5zM328 709q0 -301 72.5 -419t291.5 -118q55 0 242 16v1043q-215 18 -248 18q-209 0 -283.5 -118.5t-74.5 -421.5 z" />
+<glyph unicode="&#x153;" horiz-adv-x="1794" d="M121 520q0 266 103.5 395t346.5 129q250 0 351 -163q100 164 335 163q215 0 319.5 -114.5t104.5 -358.5l-12 -141h-651q0 -141 56 -207.5t192 -66.5q158 0 376 18l5 -154q-233 -43 -408 -43q-229 0 -326 148q-98 -147 -342 -148q-252 0 -351 132t-99 411zM317 520 q0 -201 51.5 -283.5t202.5 -82.5q150 0 200 85t50 281q0 184 -57 267t-193 83q-145 0 -199.5 -78.5t-54.5 -271.5zM1016 582h473q0 158 -53.5 224t-178.5 66q-121 0 -181 -69t-60 -221z" />
+<glyph unicode="&#x178;" horiz-adv-x="1105" d="M51 1434h84l420 -736l414 736h86l-463 -818v-616h-74v616zM342 1716v127h72v-127h-72zM690 1716v127h72v-127h-72z" />
+<glyph unicode="&#x2c6;" horiz-adv-x="1705" d="M502 1192l260 332h156l262 -332h-197l-141 176l-144 -176h-196z" />
+<glyph unicode="&#x2dc;" horiz-adv-x="1705" d="M160 1354q115 111 194 110q68 0 146 -54t116.5 -54t124.5 82l45 -35q-104 -113 -169.5 -113t-142.5 55.5t-122 55.5q-53 0 -141 -84z" />
+<glyph unicode="&#x2000;" horiz-adv-x="978" />
+<glyph unicode="&#x2001;" horiz-adv-x="1959" />
+<glyph unicode="&#x2002;" horiz-adv-x="978" />
+<glyph unicode="&#x2003;" horiz-adv-x="1959" />
+<glyph unicode="&#x2004;" horiz-adv-x="653" />
+<glyph unicode="&#x2005;" horiz-adv-x="489" />
+<glyph unicode="&#x2006;" horiz-adv-x="325" />
+<glyph unicode="&#x2007;" horiz-adv-x="325" />
+<glyph unicode="&#x2008;" horiz-adv-x="243" />
+<glyph unicode="&#x2009;" horiz-adv-x="391" />
+<glyph unicode="&#x200a;" horiz-adv-x="108" />
+<glyph unicode="&#x2010;" horiz-adv-x="901" d="M135 481v189h631v-189h-631z" />
+<glyph unicode="&#x2011;" horiz-adv-x="901" d="M135 481v189h631v-189h-631z" />
+<glyph unicode="&#x2013;" horiz-adv-x="1705" />
+<glyph unicode="&#x2014;" horiz-adv-x="1705" />
+<glyph unicode="&#x2018;" horiz-adv-x="348" d="M2 1022l111 467h184l-94 -467h-201z" />
+<glyph unicode="&#x2019;" horiz-adv-x="348" d="M49 1079l94 467h201l-111 -467h-184z" />
+<glyph unicode="&#x201c;" horiz-adv-x="1705" />
+<glyph unicode="&#x201d;" horiz-adv-x="665" d="M82 1421h186l-6 -471h-178zM403 1421h187l-6 -471h-178z" />
+<glyph unicode="&#x2022;" d="M506 0v164h82v-164h-82z" />
+<glyph unicode="&#x2026;" horiz-adv-x="1523" d="M1151 0v270h211v-270h-211zM643 0v270h211v-270h-211zM135 0v270h211v-270h-211z" />
+<glyph unicode="&#x202f;" horiz-adv-x="391" />
+<glyph unicode="&#x2039;" horiz-adv-x="1705" />
+<glyph unicode="&#x203a;" d="M129 115v204l522 318l-522 303v205l711 -412v-201q-74 -41 -353.5 -208.5t-357.5 -208.5z" />
+<glyph unicode="&#x205f;" horiz-adv-x="489" />
+<glyph unicode="&#x20ac;" horiz-adv-x="1163" d="M88 434v156h115v86v86h-115v156h125q29 246 141.5 354t360.5 108q182 0 362 -39l-8 -178q-199 23 -330 23q-158 0 -227.5 -61.5t-89.5 -209.5h512v-153h-524q-2 -27 -2 -86.5t2 -85.5h524v-156h-512q20 -141 91 -201.5t230 -60.5q119 0 326 23l6 -181q-199 -37 -360 -37 q-254 0 -364.5 108t-137.5 349h-125z" />
+<glyph unicode="&#x2122;" d="M14 1208v64h410v-64h-170v-528h-68v528h-172zM496 678v594h102l172 -496l178 496h103v-594h-66v528l-180 -506h-72l-172 506v-528h-65z" />
+<glyph horiz-adv-x="481" />
+</font>
+</defs></svg>
View
BIN webapp/public/fonts/titilliumtext600wt-webfont.ttf
Binary file not shown.
View
BIN webapp/public/fonts/titilliumtext600wt-webfont.woff
Binary file not shown.
View
1 webapp/public/img
View
BIN webapp/public/img/bg.jpg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
1 webapp/public/index.html
View
60 webapp/public/index.html
@@ -0,0 +1,60 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
+ <link rel="shortcut icon" href="//cartodb.com/assets/favicon.ico" />
+
+ <script src="./js/carto.js" type="text/javascript" charset="utf-8"></script>
+ <script src="//maps.google.com/maps/api/js?sensor=true" type="text/javascript" charset="utf-8"></script>
+ <script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript" charset="utf-8"></script>
+ <script src="//parrish.cartodb.com/javascripts/admin/show/helpers.js" type="text/javascript" charset="utf-8"></script>
+ <script src="//cartodb.s3.amazonaws.com/embed/wax.g.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/map.js" type="text/javascript" charset="utf-8"></script>
+
+ <script src="//documentcloud.github.com/underscore/underscore.js" type="text/javascript" charset="utf-8"></script>
+ <script src="//d3js.org/d3.v2.js" type="text/javascript" charset="utf-8"></script>
+ <script src="//jashkenas.github.com/coffee-script/extras/coffee-script.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/graph.coffee" type="text/coffeescript" charset="utf-8"></script>
+
+ <link href="/css/reset.css" rel="stylesheet" type="text/css" />
+ <link href="/css/styles.css" rel="stylesheet" type="text/css" />
+ <link href="/css/fonts.css" rel="stylesheet" type="text/css" />
+ <link href="css/chart1.css" rel="stylesheet" type="text/css" />
+
+ </head>
+ <body>
+ <div id="content">
+
+ <div id="slider">
+ <div id="dateSlider"></div>
+ </div>
+
+ <div id="outer_map_cartodb_container">
+ <h1 class="rotate">Geo Stats</h1>
+ <div id="map_cartodb_container"></div>
+ <span class="cartodb_map_controls">
+ <a href="#zoom_in" class="cartodb_map_embed_zoom_in">+</a>
+ <a href="#zoom_out" class="cartodb_map_embed_zoom_out">-</a>
+ </span>
+ <a href="https://cartodb.com" class="cartodb_logo" target="_blank">CartoDB</a>
+ </div>
+
+ <div id="quickstats">
+ <div class="stat" id="distance"><span class="label">Distance:</span> 12,053 km</div>
+ <div class="stat" id="speed"><span class="label">Average Speed:</span> 9.8 mph</div>
+ </div>
+
+ <div id="charts">
+ <div class="chart left" id="chart1"></div>
+ <div class="chart right" id="chart2"></div>
+ <div class="chart left" id="chart3"></div>
+ <!-- <div class="chart right" id="chart4"></div> -->
+ </div>
+
+ </div>
+
+ </body>
+ <script type="text/javascript" src="js/chart1.js"></script>
+
+</html>
View
1 webapp/public/js
View
22 webapp/public/js/carto.js
@@ -0,0 +1,22 @@
+var cartodb_table_name = "segments_export",
+ cartodb_table_id = "2636",
+ cartodb_user_name = "parrish",
+ TILEHTTP = "https",
+ TILESERVER = "cartodb.com",
+ SQL_SERVER = 'cartodb.com',
+ global_api_url = '/api/v2/';
+
+
+var cartodb_sql,
+ cartodb_style,
+ cartodb_params = [];
+
+// Getting vars
+for (var i = 0, length = cartodb_params.length; i<length; i++) {
+ if (cartodb_params[i].search('style=%23') != -1) {
+ cartodb_style = cartodb_params[i].replace('style=','');
+ }
+ if (cartodb_params[i].search('sql=') != -1) {
+ cartodb_sql = cartodb_params[i].replace('sql=','');
+ }
+}
View
18 webapp/public/js/chart1.js
@@ -0,0 +1,18 @@
+var data = [4, 8, 15, 16, 23, 42, 65, 23, 78, 55];
+
+var chart = d3.select("#charts").append("svg")
+ .attr("class", "chart right")
+ .attr("id", "chart1")
+ .attr("width", 477)
+ .attr("height", 240);
+
+var x = d3.scale.linear()
+ .domain([0, d3.max(data)])
+ .range([0, 477]);
+
+chart.selectAll("rect")
+ .data(data)
+ .enter().append("rect")
+ .attr("y", function(d, i) { return i * 24; })
+ .attr("width", x)
+ .attr("height", 24);
View
77 webapp/public/js/graph.coffee
@@ -0,0 +1,77 @@
+class SegmentGroup
+ @distanceTolerance = 100
+ @speedTolerance = 5
+ @groups = []
+
+ @add: (segment) ->
+ if @last is undefined
+ @last = new SegmentGroup(segment)
+ @groups.push @last
+ else if Math.abs( segment.distance - _(@last.records).last().distance ) > SegmentGroup.distanceTolerance && Math.abs( segment.speed - @last.average('speed') ) > SegmentGroup.speedTolerance
+ @last = new SegmentGroup(segment)
+ @groups.push @last
+ else
+ @last.add segment
+
+ constructor: (@records...) ->
+
+ total: (prop) ->
+ _(@records).reduce (total, record) ->
+ total + record[prop]
+ , 0
+
+ average: (prop) ->
+ @total(prop) / @records.length
+
+ bounds: ->
+ lats = _(@records).map (r) -> [r.start[0], r.end[0]]
+ lons = _(@records).map (r) -> [r.start[1], r.end[1]]
+ [lats, lons] = [_(lats).flatten(), _(lons).flatten()]
+
+ [
+ [_(lats).min(), _(lons).min()],
+ [_(lats).max(), _(lons).max()]
+ ]
+
+ add: (segment) ->
+ @records.push segment
+
+
+class Segment
+ @records = []
+
+ @total: (prop) ->
+ _(@records).reduce (total, record) ->
+ total + record[prop]
+ , 0
+
+ @average: (prop) ->
+ @total(prop) / @records.length
+
+ @bounds: ->
+ lats = _(@records).map (r) -> [r.start[0], r.end[0]]
+ lons = _(@records).map (r) -> [r.start[1], r.end[1]]
+ [lats, lons] = [_(lats).flatten(), _(lons).flatten()]
+
+ [
+ [_(lats).min(), _(lons).min()],
+ [_(lats).max(), _(lons).max()]
+ ]
+
+ constructor: (hash) ->
+ @start = hash.geometry.coordinates[0][0]
+ @end = hash.geometry.coordinates[0][1]
+ @[prop] = val for prop, val of hash.properties
+ Segment.records.push @
+ SegmentGroup.add @
+ @
+
+processData = (data) ->
+ new Segment(hash) for hash in data.features when hash.geometry isnt null
+
+$ ->
+ $.getJSON "http://parrish.cartodb.com/api/v2/sql?format=geojson&q=select * from segments_export limit 100", processData
+
+
+window.Segment = Segment
+window.SegmentGroup = SegmentGroup
View
387 webapp/public/js/map.js
@@ -0,0 +1,387 @@
+$(function() {
+ var cartodbMapOptions = {
+ zoom: 2,
+ center: new google.maps.LatLng(0,0),
+ disableDefaultUI: true,
+ mapTypeId: google.maps.MapTypeId.ROADMAP
+ };
+
+
+ // Init the map
+ var carto_embed_map = new google.maps.Map(document.getElementById("map_cartodb_container"),cartodbMapOptions);
+ window.carto_embed_map = carto_embed_map;
+
+ // Setup your map styles
+ $.ajax({
+ url:TILEHTTP + '://' + cartodb_user_name + '.' + TILESERVER + '/tiles/' + cartodb_table_name + '/map_metadata',
+ type: 'GET',
+ dataType: 'jsonp',
+ success:function(result){
+ map_style = $.parseJSON(result.map_metadata);
+ if (map_style!=null) {
+ if (map_style.google_maps_base_type=="satellite") {
+ carto_embed_map.setOptions({mapTypeId: google.maps.MapTypeId.SATELLITE});
+ } else if (map_style.google_maps_base_type=="terrain") {
+ carto_embed_map.setOptions({mapTypeId: google.maps.MapTypeId.TERRAIN});
+ } else {
+ carto_embed_map.setOptions({mapTypeId: google.maps.MapTypeId.ROADMAP});
+ }
+
+ // Get coordinates and zoom
+ if (map_style.zoom && map_style.longitude && map_style.latitude) {
+ carto_embed_map.setZoom(map_style.zoom);
+ carto_embed_map.setCenter(new google.maps.LatLng(map_style.latitude,map_style.longitude));
+ } else {
+ getCartoDBBBox();
+ }
+ } else {
+ getCartoDBBBox();
+ carto_embed_map.setOptions({mapTypeId: google.maps.MapTypeId.ROADMAP});
+ map_style = {};
+ map_style.google_maps_customization_style = [ { stylers: [ { saturation: -65 }, { gamma: 1.52 } ] }, { featureType: "administrative", stylers: [ { saturation: -95 },{ gamma: 2.26 } ] }, { featureType: "water", elementType: "labels", stylers: [ { visibility: "off" } ] }, { featureType: "administrative.locality", stylers: [ { visibility: 'off' } ] }, { featureType: "road", stylers: [ { visibility: "simplified" }, { saturation: -99 }, { gamma: 2.22 } ] }, { featureType: "poi", elementType: "labels", stylers: [ { visibility: "off" } ] }, { featureType: "road.arterial", stylers: [ { visibility: 'off' } ] }, { featureType: "road.local", elementType: "labels", stylers: [ { visibility: 'off' } ] }, { featureType: "transit", stylers: [ { visibility: 'off' } ] }, { featureType: "road", elementType: "labels", stylers: [ { visibility: 'off' } ] },{ featureType: "poi", stylers: [ { saturation: -55 } ] } ];
+ }
+
+ // Custom tiles
+ carto_embed_map.setOptions({styles: map_style.google_maps_customization_style});
+ },
+ error: function(e){}
+ });
+
+
+ // Necessary params for wax and infowindow
+ var cartodb_params = {
+ cartodb_sql : cartodb_sql,
+ cartodb_style : cartodb_style,
+ cartodb_user_name : cartodb_user_name,
+ cartodb_table_name : cartodb_table_name,
+ cartodb_table_id : cartodb_table_id,
+ cartodb_map : carto_embed_map,
+ cartodb_map_canvas : 'map_cartodb_container'
+ }
+
+
+ // Add wax interaction
+ addCartoDBInteraction(cartodb_params);
+
+
+ function getCartoDBBBox(corners) {
+ // If request getCartoDBBox, get from helpers
+ if (!corners) {
+ gettingTableBounds(cartodb_table_name,getCartoDBBBox);
+ } else {
+ if (!$.isEmptyObject(corners)) {
+ var bounds = new google.maps.LatLngBounds(corners.sw, corners.ne);
+ carto_embed_map.fitBounds(bounds);
+ }
+ }
+ }
+
+
+ // Wax interaction
+ function addCartoDBInteraction(params) {
+ var currentCartoDbId,
+ tilejson = generateTileJson(params);
+ infowindow = new CartoDBInfowindow(params);
+ cache_buster = 0;
+
+ var waxOptions = {
+ callbacks: {
+ out: function(){
+ params.cartodb_map.setOptions({draggableCursor: 'default'});
+ },
+ over: function(feature, div, opt3, evt){
+ params.cartodb_map.setOptions({draggableCursor: 'pointer'});
+ },
+ click: function(feature, div, opt3, evt){
+ infowindow.open(feature,evt.latLng);
+ }
+ },
+ clickAction: 'full'
+ };
+
+ var wax_tile = new wax.g.connector(tilejson);
+ params.cartodb_map.overlayMapTypes.insertAt(0,wax_tile);
+ var interaction = wax.g.interaction(params.cartodb_map, tilejson, waxOptions);
+
+
+ // Generate tilejson
+ function generateTileJson(params) {
+ var core_url = TILEHTTP + '://' + params.cartodb_user_name + '.' + TILESERVER;
+ var base_url = core_url + '/tiles/' + params.cartodb_table_name + '/{z}/{x}/{y}';
+ var tile_url = base_url + '.png?cache_buster=0';
+ var grid_url = base_url + '.grid.json';
+
+ // SQL?
+ if (params.cartodb_sql) {
+ var query = 'sql=' + params.cartodb_sql;
+ tile_url = wax.util.addUrlData(tile_url, query);
+ grid_url = wax.util.addUrlData(grid_url, query);
+ }
+
+ // Style
+ if (params.cartodb_style) {
+ var style = 'style=' + params.cartodb_style;
+ tile_url = wax.util.addUrlData(tile_url,style);
+ grid_url = wax.util.addUrlData(grid_url,style);
+ }
+
+
+ // Build up the tileJSON
+ return {
+ blankImage: TILEHTTP + '://cartodb.s3.amazonaws.com/embed/blank_tile.png',
+ tilejson: '1.0.0',
+ scheme: 'xyz',
+ tiles: [tile_url],
+ grids: [grid_url],
+ tiles_base: tile_url,
+ grids_base: grid_url,
+ formatter: function(options, data) {
+ currentCartoDbId = data.cartodb_id;
+ return data.cartodb_id;
+ },
+ cache_buster: function(){
+ return params.cache_buster;
+ }
+ };
+ };
+ };
+
+
+ // Zoom bindings
+ $('a.cartodb_map_embed_zoom_in').click(function(ev){
+ ev.preventDefault();
+ carto_embed_map.setZoom(carto_embed_map.getZoom()+1);
+ });
+ $('a.cartodb_map_embed_zoom_out').click(function(ev){
+ ev.preventDefault();
+ carto_embed_map.setZoom(carto_embed_map.getZoom()-1);
+ });
+});
+
+
+
+/**
+ * CartoDB Infowindow
+ * Needed:
+ * user_name, table_name, map_canvas, map_key??(no)
+ **/
+
+function CartoDBInfowindow(params) {
+ this.latlng_ = new google.maps.LatLng(0,0);
+ this.feature_;
+ this.map_ = params.cartodb_map;
+ this.columns_;
+ this.offsetHorizontal_ = -107;
+ this.width_ = 214;
+ this.setMap(params.cartodb_map);
+ this.params_ = params;
+ this.getActiveColumns(params);
+};
+
+
+CartoDBInfowindow.prototype = new google.maps.OverlayView();
+
+
+CartoDBInfowindow.prototype.getActiveColumns = function(params) {
+ var that = this;
+ $.ajax({
+ url: TILEHTTP + '://' + params.cartodb_user_name + '.' + TILESERVER + '/tiles/' + params.cartodb_table_name + '/infowindow?'+ 'map_key=' + (params.cartodb_map_key || '')+'&callback=?',
+ dataType: 'jsonp',
+ success:function(result){
+ var columns = $.parseJSON(result.infowindow);
+ if (columns) {
+ that.columns_ = parseColumns(columns);
+ } else {
+ that.columns_ = "*";
+ }
+
+ },
+ error: function(e){}
+ });
+
+ function parseColumns(columns) {
+ var str = '';
+ for (p in columns) {
+ if (columns[p] && p!='the_geom_webmercator' && p!='the_geom') {
+ str+=p+',';
+ }
+ }
+ return str.substr(0,str.length-1);
+ }
+}
+
+
+CartoDBInfowindow.prototype.draw = function() {
+ var me = this;
+
+ var div = this.div_;
+ if (!div) {
+ div = this.div_ = document.createElement('DIV');
+ div.className = "cartodb_infowindow";
+
+ div.innerHTML = '<a href="#close" class="close">x</a>'+
+ '<div class="outer_top">'+
+ '<div class="top">'+
+ '</div>'+
+ '</div>'+
+ '<div class="bottom">'+
+ '<label>id:1</label>'+
+ '</div>';
+
+ $(div).find('a.close').click(function(ev){
+ ev.preventDefault();
+ ev.stopPropagation();
+ me.hide();
+ });
+
+ google.maps.event.addDomListener(div, 'click', function (ev) {
+ ev.preventDefault ? ev.preventDefault() : ev.returnValue = false;
+ });
+ google.maps.event.addDomListener(div, 'dblclick', function (ev) {
+ ev.preventDefault ? ev.preventDefault() : ev.returnValue = false;
+ });
+ google.maps.event.addDomListener(div, 'mousedown', function (ev) {
+ ev.preventDefault ? ev.preventDefault() : ev.returnValue = false;
+ ev.stopPropagation ? ev.stopPropagation() : window.event.cancelBubble = true;
+ });
+ google.maps.event.addDomListener(div, 'mouseup', function (ev) {
+ ev.preventDefault ? ev.preventDefault() : ev.returnValue = false;
+ });
+ google.maps.event.addDomListener(div, 'mousewheel', function (ev) {
+ ev.stopPropagation ? ev.stopPropagation() : window.event.cancelBubble = true;
+ });
+ google.maps.event.addDomListener(div, 'DOMMouseScroll', function (ev) {
+ ev.stopPropagation ? ev.stopPropagation() : window.event.cancelBubble = true;
+ });
+
+ var panes = this.getPanes();
+ panes.floatPane.appendChild(div);
+
+ div.style.opacity = 0;
+ }
+
+ var pixPosition = this.getProjection().fromLatLngToDivPixel(this.latlng_);
+ if (pixPosition) {
+ div.style.width = this.width_ + 'px';
+ div.style.left = (pixPosition.x - 49) + 'px';
+ var actual_height = - $(div).height();
+ div.style.top = (pixPosition.y + actual_height + 5) + 'px';
+ }
+};
+
+
+CartoDBInfowindow.prototype.setPosition = function() {
+ if (this.div_) {
+ var div = this.div_;
+ var pixPosition = this.getProjection().fromLatLngToDivPixel(this.latlng_);
+ if (pixPosition) {
+ div.style.width = this.width_ + 'px';
+ div.style.left = (pixPosition.x - 49) + 'px';
+ var actual_height = - $(div).height();
+ div.style.top = (pixPosition.y + actual_height + 5) + 'px';
+ }
+ this.show();
+ }
+}
+
+
+CartoDBInfowindow.prototype.open = function(feature,latlng){
+ var that = this;
+ that.feature_ = feature;
+ that.latlng_ = latlng;
+
+ // If the table is private, you can't run any api methods without being
+ $.ajax({
+ method:'get',
+ url: TILEHTTP + '://'+ this.params_.cartodb_user_name + '.' + SQL_SERVER + '/api/v1/sql/?q='+escape('select '+that.columns_+' from '+ this.params_.cartodb_table_name + ' where cartodb_id=' + feature)+'&callback=?',
+ dataType: 'jsonp',
+ success: function(result) {
+ positionateInfowindow(result.rows[0]);
+ },
+ error: function(e) {}
+ });
+
+ function positionateInfowindow(variables) {
+ if (that.div_) {
+ var div = that.div_;
+
+ // Remove the list items
+ $('div.cartodb_infowindow div.outer_top div.top').html('');
+
+ for (p in variables) {
+ if (p!='cartodb_id' && p!='cdb_centre') {
+ $('div.cartodb_infowindow div.outer_top div.top').append('<label>'+p+'</label><p class="'+((variables[p]!=null)?'':'empty')+'">'+(variables[p] || 'empty')+'</p>');
+ }
+ }
+
+ $('div.cartodb_infowindow div.bottom label').html('id: <strong>'+feature+'</strong>');
+ that.moveMaptoOpen();
+ that.setPosition();
+ }
+ }
+}
+
+
+CartoDBInfowindow.prototype.hide = function() {
+ if (this.div_) {
+ var div = this.div_;
+ $(div).animate({
+ top: '+=' + 10 + 'px',
+ opacity: 0},
+ 100, 'swing',
+ function () {
+ div.style.visibility = "hidden";
+ }
+ );
+ }
+}
+
+
+CartoDBInfowindow.prototype.show = function() {
+ if (this.div_) {
+ var div = this.div_;
+ div.style.opacity = 0;
+ div.style.visibility = "visible";
+ $(div).animate({
+ top: '-=' + 10 + 'px',
+ opacity: 1},
+ 250
+ );
+ }
+}
+
+
+CartoDBInfowindow.prototype.isVisible = function(marker_id) {
+ if (this.div_) {
+ var div = this.div_;
+ if (div.style.visibility == 'visible' && this.feature_!=null) {
+ return true;
+ } else {
+ return false;
+ }
+ } else {
+ return false;
+ }
+}
+
+
+CartoDBInfowindow.prototype.moveMaptoOpen = function() {
+ var left = 0;
+ var top = 0;
+ var div = this.div_;
+ var pixPosition = this.getProjection().fromLatLngToContainerPixel(this.latlng_);
+
+ if ((pixPosition.x + this.offsetHorizontal_) < 0) {
+ left = (pixPosition.x + this.offsetHorizontal_ - 20);
+ }
+
+ if ((pixPosition.x + 180) >= ($('#'+this.params_.cartodb_map_canvas).width())) {
+ left = (pixPosition.x + 180 - $('#'+this.params_.cartodb_map_canvas).width());
+ }
+
+ if ((pixPosition.y - $(div).height()) < 0) {
+ top = (pixPosition.y - $(div).height() - 30);
+ }
+
+ this.map_.panBy(left,top);
+}

0 comments on commit cb47298

Please sign in to comment.