src/cm/media/js/lib/yui/yui3-3.15.0/build/graphics-canvas/graphics-canvas-coverage.js
author Yves-Marie Haussonne <ymh.work+github@gmail.com>
Fri, 09 May 2014 18:35:26 +0200
changeset 656 a84519031134
parent 602 e16a97fb364a
permissions -rw-r--r--
add link to "privacy policy" in the header test

if (typeof __coverage__ === 'undefined') { __coverage__ = {}; }
if (!__coverage__['build/graphics-canvas/graphics-canvas.js']) {
   __coverage__['build/graphics-canvas/graphics-canvas.js'] = {"path":"build/graphics-canvas/graphics-canvas.js","s":{"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":0,"65":0,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0,"72":0,"73":0,"74":0,"75":0,"76":0,"77":0,"78":0,"79":0,"80":0,"81":0,"82":0,"83":0,"84":0,"85":0,"86":0,"87":0,"88":0,"89":0,"90":0,"91":0,"92":0,"93":0,"94":0,"95":0,"96":0,"97":0,"98":0,"99":0,"100":0,"101":0,"102":0,"103":0,"104":0,"105":0,"106":0,"107":0,"108":0,"109":0,"110":0,"111":0,"112":0,"113":0,"114":0,"115":0,"116":0,"117":0,"118":0,"119":0,"120":0,"121":0,"122":0,"123":0,"124":0,"125":0,"126":0,"127":0,"128":0,"129":0,"130":0,"131":0,"132":0,"133":0,"134":0,"135":0,"136":0,"137":0,"138":0,"139":0,"140":0,"141":0,"142":0,"143":0,"144":0,"145":0,"146":0,"147":0,"148":0,"149":0,"150":0,"151":0,"152":0,"153":0,"154":0,"155":0,"156":0,"157":0,"158":0,"159":0,"160":0,"161":0,"162":0,"163":0,"164":0,"165":0,"166":0,"167":0,"168":0,"169":0,"170":0,"171":0,"172":0,"173":0,"174":0,"175":0,"176":0,"177":0,"178":0,"179":0,"180":0,"181":0,"182":0,"183":0,"184":0,"185":0,"186":0,"187":0,"188":0,"189":0,"190":0,"191":0,"192":0,"193":0,"194":0,"195":0,"196":0,"197":0,"198":0,"199":0,"200":0,"201":0,"202":0,"203":0,"204":0,"205":0,"206":0,"207":0,"208":0,"209":0,"210":0,"211":0,"212":0,"213":0,"214":0,"215":0,"216":0,"217":0,"218":0,"219":0,"220":0,"221":0,"222":0,"223":0,"224":0,"225":0,"226":0,"227":0,"228":0,"229":0,"230":0,"231":0,"232":0,"233":0,"234":0,"235":0,"236":0,"237":0,"238":0,"239":0,"240":0,"241":0,"242":0,"243":0,"244":0,"245":0,"246":0,"247":0,"248":0,"249":0,"250":0,"251":0,"252":0,"253":0,"254":0,"255":0,"256":0,"257":0,"258":0,"259":0,"260":0,"261":0,"262":0,"263":0,"264":0,"265":0,"266":0,"267":0,"268":0,"269":0,"270":0,"271":0,"272":0,"273":0,"274":0,"275":0,"276":0,"277":0,"278":0,"279":0,"280":0,"281":0,"282":0,"283":0,"284":0,"285":0,"286":0,"287":0,"288":0,"289":0,"290":0,"291":0,"292":0,"293":0,"294":0,"295":0,"296":0,"297":0,"298":0,"299":0,"300":0,"301":0,"302":0,"303":0,"304":0,"305":0,"306":0,"307":0,"308":0,"309":0,"310":0,"311":0,"312":0,"313":0,"314":0,"315":0,"316":0,"317":0,"318":0,"319":0,"320":0,"321":0,"322":0,"323":0,"324":0,"325":0,"326":0,"327":0,"328":0,"329":0,"330":0,"331":0,"332":0,"333":0,"334":0,"335":0,"336":0,"337":0,"338":0,"339":0,"340":0,"341":0,"342":0,"343":0,"344":0,"345":0,"346":0,"347":0,"348":0,"349":0,"350":0,"351":0,"352":0,"353":0,"354":0,"355":0,"356":0,"357":0,"358":0,"359":0,"360":0,"361":0,"362":0,"363":0,"364":0,"365":0,"366":0,"367":0,"368":0,"369":0,"370":0,"371":0,"372":0,"373":0,"374":0,"375":0,"376":0,"377":0,"378":0,"379":0,"380":0,"381":0,"382":0,"383":0,"384":0,"385":0,"386":0,"387":0,"388":0,"389":0,"390":0,"391":0,"392":0,"393":0,"394":0,"395":0,"396":0,"397":0,"398":0,"399":0,"400":0,"401":0,"402":0,"403":0,"404":0,"405":0,"406":0,"407":0,"408":0,"409":0,"410":0,"411":0,"412":0,"413":0,"414":0,"415":0,"416":0,"417":0,"418":0,"419":0,"420":0,"421":0,"422":0,"423":0,"424":0,"425":0,"426":0,"427":0,"428":0,"429":0,"430":0,"431":0,"432":0,"433":0,"434":0,"435":0,"436":0,"437":0,"438":0,"439":0,"440":0,"441":0,"442":0,"443":0,"444":0,"445":0,"446":0,"447":0,"448":0,"449":0,"450":0,"451":0,"452":0,"453":0,"454":0,"455":0,"456":0,"457":0,"458":0,"459":0,"460":0,"461":0,"462":0,"463":0,"464":0,"465":0,"466":0,"467":0,"468":0,"469":0,"470":0,"471":0,"472":0,"473":0,"474":0,"475":0,"476":0,"477":0,"478":0,"479":0,"480":0,"481":0,"482":0,"483":0,"484":0,"485":0,"486":0,"487":0,"488":0,"489":0,"490":0,"491":0,"492":0,"493":0,"494":0,"495":0,"496":0,"497":0,"498":0,"499":0,"500":0,"501":0,"502":0,"503":0,"504":0,"505":0,"506":0,"507":0,"508":0,"509":0,"510":0,"511":0,"512":0,"513":0,"514":0,"515":0,"516":0,"517":0,"518":0,"519":0,"520":0,"521":0,"522":0,"523":0,"524":0,"525":0,"526":0,"527":0,"528":0,"529":0,"530":0,"531":0,"532":0,"533":0,"534":0,"535":0,"536":0,"537":0,"538":0,"539":0,"540":0,"541":0,"542":0,"543":0,"544":0,"545":0,"546":0,"547":0,"548":0,"549":0,"550":0,"551":0,"552":0,"553":0,"554":0,"555":0,"556":0,"557":0,"558":0,"559":0,"560":0,"561":0,"562":0,"563":0,"564":0,"565":0,"566":0,"567":0,"568":0,"569":0,"570":0,"571":0,"572":0,"573":0,"574":0,"575":0,"576":0,"577":0,"578":0,"579":0,"580":0,"581":0,"582":0,"583":0,"584":0,"585":0,"586":0,"587":0,"588":0,"589":0,"590":0,"591":0,"592":0,"593":0,"594":0,"595":0,"596":0,"597":0,"598":0,"599":0,"600":0,"601":0,"602":0,"603":0,"604":0,"605":0,"606":0,"607":0,"608":0,"609":0,"610":0,"611":0,"612":0,"613":0,"614":0,"615":0,"616":0,"617":0,"618":0,"619":0,"620":0,"621":0,"622":0,"623":0,"624":0,"625":0,"626":0,"627":0,"628":0,"629":0,"630":0,"631":0,"632":0,"633":0,"634":0,"635":0,"636":0,"637":0,"638":0,"639":0,"640":0,"641":0,"642":0,"643":0,"644":0,"645":0,"646":0,"647":0,"648":0,"649":0,"650":0,"651":0,"652":0,"653":0,"654":0,"655":0,"656":0,"657":0,"658":0,"659":0,"660":0,"661":0,"662":0,"663":0,"664":0,"665":0,"666":0,"667":0,"668":0,"669":0,"670":0,"671":0,"672":0,"673":0,"674":0,"675":0,"676":0,"677":0,"678":0,"679":0,"680":0,"681":0,"682":0,"683":0,"684":0,"685":0,"686":0,"687":0,"688":0,"689":0,"690":0,"691":0,"692":0,"693":0,"694":0,"695":0,"696":0,"697":0,"698":0,"699":0,"700":0,"701":0,"702":0,"703":0,"704":0,"705":0,"706":0,"707":0,"708":0,"709":0,"710":0,"711":0,"712":0,"713":0,"714":0,"715":0,"716":0,"717":0,"718":0,"719":0,"720":0,"721":0,"722":0,"723":0,"724":0,"725":0,"726":0,"727":0,"728":0,"729":0,"730":0,"731":0,"732":0,"733":0,"734":0,"735":0,"736":0,"737":0,"738":0,"739":0,"740":0,"741":0,"742":0,"743":0,"744":0,"745":0,"746":0,"747":0,"748":0,"749":0,"750":0,"751":0,"752":0,"753":0,"754":0,"755":0,"756":0,"757":0,"758":0,"759":0,"760":0,"761":0,"762":0,"763":0,"764":0,"765":0,"766":0,"767":0,"768":0,"769":0,"770":0,"771":0,"772":0,"773":0,"774":0,"775":0,"776":0,"777":0,"778":0,"779":0,"780":0,"781":0,"782":0,"783":0,"784":0,"785":0,"786":0,"787":0,"788":0,"789":0,"790":0,"791":0,"792":0,"793":0,"794":0,"795":0,"796":0,"797":0,"798":0,"799":0,"800":0,"801":0,"802":0,"803":0,"804":0,"805":0,"806":0,"807":0,"808":0,"809":0,"810":0,"811":0,"812":0,"813":0,"814":0,"815":0,"816":0,"817":0,"818":0,"819":0,"820":0,"821":0,"822":0,"823":0,"824":0,"825":0,"826":0,"827":0,"828":0,"829":0,"830":0,"831":0,"832":0,"833":0,"834":0,"835":0,"836":0,"837":0,"838":0,"839":0,"840":0,"841":0,"842":0,"843":0,"844":0,"845":0,"846":0,"847":0,"848":0,"849":0,"850":0,"851":0,"852":0,"853":0,"854":0,"855":0,"856":0,"857":0,"858":0,"859":0,"860":0,"861":0,"862":0,"863":0,"864":0,"865":0,"866":0,"867":0,"868":0,"869":0,"870":0,"871":0,"872":0,"873":0,"874":0,"875":0,"876":0,"877":0,"878":0,"879":0,"880":0,"881":0,"882":0,"883":0,"884":0,"885":0,"886":0,"887":0,"888":0,"889":0,"890":0,"891":0,"892":0,"893":0,"894":0,"895":0,"896":0,"897":0,"898":0,"899":0,"900":0,"901":0,"902":0,"903":0,"904":0,"905":0,"906":0,"907":0},"b":{"1":[0,0],"2":[0,0],"3":[0,0],"4":[0,0],"5":[0,0],"6":[0,0],"7":[0,0],"8":[0,0],"9":[0,0],"10":[0,0],"11":[0,0],"12":[0,0],"13":[0,0],"14":[0,0],"15":[0,0],"16":[0,0],"17":[0,0],"18":[0,0],"19":[0,0],"20":[0,0],"21":[0,0],"22":[0,0],"23":[0,0],"24":[0,0],"25":[0,0],"26":[0,0],"27":[0,0],"28":[0,0],"29":[0,0],"30":[0,0],"31":[0,0],"32":[0,0],"33":[0,0],"34":[0,0],"35":[0,0],"36":[0,0],"37":[0,0],"38":[0,0],"39":[0,0],"40":[0,0],"41":[0,0],"42":[0,0],"43":[0,0],"44":[0,0],"45":[0,0],"46":[0,0],"47":[0,0],"48":[0,0],"49":[0,0],"50":[0,0],"51":[0,0],"52":[0,0],"53":[0,0],"54":[0,0],"55":[0,0],"56":[0,0],"57":[0,0],"58":[0,0],"59":[0,0],"60":[0,0],"61":[0,0],"62":[0,0],"63":[0,0],"64":[0,0],"65":[0,0],"66":[0,0],"67":[0,0],"68":[0,0],"69":[0,0],"70":[0,0,0],"71":[0,0],"72":[0,0],"73":[0,0],"74":[0,0],"75":[0,0],"76":[0,0],"77":[0,0],"78":[0,0],"79":[0,0],"80":[0,0],"81":[0,0],"82":[0,0],"83":[0,0],"84":[0,0],"85":[0,0],"86":[0,0],"87":[0,0],"88":[0,0],"89":[0,0],"90":[0,0],"91":[0,0],"92":[0,0],"93":[0,0],"94":[0,0],"95":[0,0],"96":[0,0],"97":[0,0],"98":[0,0],"99":[0,0],"100":[0,0,0],"101":[0,0],"102":[0,0],"103":[0,0],"104":[0,0],"105":[0,0],"106":[0,0],"107":[0,0],"108":[0,0],"109":[0,0],"110":[0,0],"111":[0,0],"112":[0,0],"113":[0,0],"114":[0,0],"115":[0,0],"116":[0,0],"117":[0,0],"118":[0,0],"119":[0,0],"120":[0,0],"121":[0,0],"122":[0,0],"123":[0,0],"124":[0,0],"125":[0,0],"126":[0,0],"127":[0,0],"128":[0,0],"129":[0,0],"130":[0,0],"131":[0,0],"132":[0,0],"133":[0,0],"134":[0,0],"135":[0,0],"136":[0,0],"137":[0,0],"138":[0,0],"139":[0,0],"140":[0,0],"141":[0,0],"142":[0,0],"143":[0,0],"144":[0,0],"145":[0,0],"146":[0,0],"147":[0,0],"148":[0,0],"149":[0,0],"150":[0,0],"151":[0,0],"152":[0,0],"153":[0,0],"154":[0,0],"155":[0,0],"156":[0,0],"157":[0,0],"158":[0,0],"159":[0,0],"160":[0,0],"161":[0,0],"162":[0,0],"163":[0,0],"164":[0,0],"165":[0,0],"166":[0,0],"167":[0,0],"168":[0,0],"169":[0,0],"170":[0,0],"171":[0,0],"172":[0,0],"173":[0,0],"174":[0,0],"175":[0,0],"176":[0,0],"177":[0,0],"178":[0,0],"179":[0,0],"180":[0,0],"181":[0,0],"182":[0,0],"183":[0,0],"184":[0,0],"185":[0,0],"186":[0,0],"187":[0,0],"188":[0,0],"189":[0,0],"190":[0,0],"191":[0,0],"192":[0,0],"193":[0,0],"194":[0,0,0],"195":[0,0],"196":[0,0],"197":[0,0],"198":[0,0],"199":[0,0],"200":[0,0],"201":[0,0],"202":[0,0],"203":[0,0],"204":[0,0],"205":[0,0],"206":[0,0],"207":[0,0],"208":[0,0],"209":[0,0],"210":[0,0],"211":[0,0],"212":[0,0],"213":[0,0],"214":[0,0],"215":[0,0],"216":[0,0]},"f":{"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":0,"65":0,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0,"72":0,"73":0,"74":0,"75":0,"76":0,"77":0,"78":0,"79":0,"80":0,"81":0,"82":0,"83":0,"84":0,"85":0,"86":0,"87":0,"88":0,"89":0,"90":0,"91":0,"92":0,"93":0,"94":0,"95":0,"96":0,"97":0,"98":0,"99":0,"100":0,"101":0,"102":0,"103":0,"104":0,"105":0,"106":0,"107":0,"108":0,"109":0,"110":0,"111":0,"112":0,"113":0,"114":0,"115":0,"116":0,"117":0,"118":0,"119":0,"120":0,"121":0,"122":0,"123":0,"124":0,"125":0,"126":0,"127":0,"128":0,"129":0,"130":0,"131":0,"132":0,"133":0,"134":0,"135":0,"136":0,"137":0,"138":0,"139":0,"140":0,"141":0,"142":0,"143":0,"144":0,"145":0,"146":0,"147":0,"148":0},"fnMap":{"1":{"name":"(anonymous_1)","line":1,"loc":{"start":{"line":1,"column":27},"end":{"line":1,"column":46}}},"2":{"name":"CanvasDrawing","line":37,"loc":{"start":{"line":37,"column":0},"end":{"line":38,"column":0}}},"3":{"name":"(anonymous_3)","line":88,"loc":{"start":{"line":88,"column":13},"end":{"line":88,"column":34}}},"4":{"name":"(anonymous_4)","line":111,"loc":{"start":{"line":111,"column":12},"end":{"line":111,"column":26}}},"5":{"name":"(anonymous_5)","line":123,"loc":{"start":{"line":123,"column":10},"end":{"line":123,"column":25}}},"6":{"name":"(anonymous_6)","line":147,"loc":{"start":{"line":147,"column":19},"end":{"line":148,"column":4}}},"7":{"name":"(anonymous_7)","line":161,"loc":{"start":{"line":161,"column":27},"end":{"line":162,"column":4}}},"8":{"name":"(anonymous_8)","line":174,"loc":{"start":{"line":174,"column":25},"end":{"line":175,"column":4}}},"9":{"name":"(anonymous_9)","line":194,"loc":{"start":{"line":194,"column":25},"end":{"line":195,"column":4}}},"10":{"name":"(anonymous_10)","line":207,"loc":{"start":{"line":207,"column":12},"end":{"line":208,"column":4}}},"11":{"name":"(anonymous_11)","line":221,"loc":{"start":{"line":221,"column":20},"end":{"line":222,"column":4}}},"12":{"name":"(anonymous_12)","line":235,"loc":{"start":{"line":235,"column":13},"end":{"line":236,"column":4}}},"13":{"name":"(anonymous_13)","line":287,"loc":{"start":{"line":287,"column":12},"end":{"line":288,"column":4}}},"14":{"name":"(anonymous_14)","line":301,"loc":{"start":{"line":301,"column":20},"end":{"line":302,"column":4}}},"15":{"name":"(anonymous_15)","line":315,"loc":{"start":{"line":315,"column":13},"end":{"line":315,"column":38}}},"16":{"name":"(anonymous_16)","line":341,"loc":{"start":{"line":341,"column":13},"end":{"line":341,"column":24}}},"17":{"name":"(anonymous_17)","line":358,"loc":{"start":{"line":358,"column":21},"end":{"line":358,"column":32}}},"18":{"name":"(anonymous_18)","line":371,"loc":{"start":{"line":371,"column":14},"end":{"line":371,"column":39}}},"19":{"name":"(anonymous_19)","line":423,"loc":{"start":{"line":423,"column":22},"end":{"line":423,"column":33}}},"20":{"name":"(anonymous_20)","line":438,"loc":{"start":{"line":438,"column":30},"end":{"line":438,"column":41}}},"21":{"name":"(anonymous_21)","line":451,"loc":{"start":{"line":451,"column":23},"end":{"line":451,"column":48}}},"22":{"name":"(anonymous_22)","line":498,"loc":{"start":{"line":498,"column":13},"end":{"line":498,"column":36}}},"23":{"name":"(anonymous_23)","line":523,"loc":{"start":{"line":523,"column":17},"end":{"line":524,"column":4}}},"24":{"name":"(anonymous_24)","line":546,"loc":{"start":{"line":546,"column":14},"end":{"line":546,"column":35}}},"25":{"name":"(anonymous_25)","line":588,"loc":{"start":{"line":588,"column":14},"end":{"line":588,"column":35}}},"26":{"name":"(anonymous_26)","line":610,"loc":{"start":{"line":610,"column":19},"end":{"line":610,"column":48}}},"27":{"name":"(anonymous_27)","line":637,"loc":{"start":{"line":637,"column":15},"end":{"line":638,"column":4}}},"28":{"name":"(anonymous_28)","line":712,"loc":{"start":{"line":712,"column":9},"end":{"line":712,"column":20}}},"29":{"name":"(anonymous_29)","line":723,"loc":{"start":{"line":723,"column":15},"end":{"line":724,"column":4}}},"30":{"name":"(anonymous_30)","line":736,"loc":{"start":{"line":736,"column":11},"end":{"line":736,"column":22}}},"31":{"name":"(anonymous_31)","line":753,"loc":{"start":{"line":753,"column":24},"end":{"line":753,"column":35}}},"32":{"name":"(anonymous_32)","line":833,"loc":{"start":{"line":833,"column":24},"end":{"line":833,"column":35}}},"33":{"name":"(anonymous_33)","line":924,"loc":{"start":{"line":924,"column":16},"end":{"line":924,"column":27}}},"34":{"name":"(anonymous_34)","line":955,"loc":{"start":{"line":955,"column":20},"end":{"line":955,"column":31}}},"35":{"name":"(anonymous_35)","line":969,"loc":{"start":{"line":969,"column":19},"end":{"line":969,"column":39}}},"36":{"name":"(anonymous_36)","line":997,"loc":{"start":{"line":997,"column":26},"end":{"line":998,"column":4}}},"37":{"name":"(anonymous_37)","line":1032,"loc":{"start":{"line":1032,"column":16},"end":{"line":1032,"column":31}}},"38":{"name":"(anonymous_38)","line":1064,"loc":{"start":{"line":1064,"column":14},"end":{"line":1065,"column":0}}},"39":{"name":"(anonymous_39)","line":1081,"loc":{"start":{"line":1081,"column":10},"end":{"line":1082,"column":1}}},"40":{"name":"(anonymous_40)","line":1092,"loc":{"start":{"line":1092,"column":14},"end":{"line":1093,"column":1}}},"41":{"name":"(anonymous_41)","line":1121,"loc":{"start":{"line":1121,"column":17},"end":{"line":1122,"column":4}}},"42":{"name":"(anonymous_42)","line":1144,"loc":{"start":{"line":1144,"column":11},"end":{"line":1145,"column":1}}},"43":{"name":"(anonymous_43)","line":1156,"loc":{"start":{"line":1156,"column":14},"end":{"line":1157,"column":1}}},"44":{"name":"(anonymous_44)","line":1168,"loc":{"start":{"line":1168,"column":8},"end":{"line":1169,"column":1}}},"45":{"name":"(anonymous_45)","line":1183,"loc":{"start":{"line":1183,"column":8},"end":{"line":1184,"column":1}}},"46":{"name":"(anonymous_46)","line":1201,"loc":{"start":{"line":1201,"column":11},"end":{"line":1202,"column":1}}},"47":{"name":"(anonymous_47)","line":1214,"loc":{"start":{"line":1214,"column":7},"end":{"line":1215,"column":1}}},"48":{"name":"(anonymous_48)","line":1226,"loc":{"start":{"line":1226,"column":12},"end":{"line":1226,"column":30}}},"49":{"name":"(anonymous_49)","line":1238,"loc":{"start":{"line":1238,"column":18},"end":{"line":1238,"column":29}}},"50":{"name":"(anonymous_50)","line":1257,"loc":{"start":{"line":1257,"column":20},"end":{"line":1258,"column":1}}},"51":{"name":"(anonymous_51)","line":1310,"loc":{"start":{"line":1310,"column":13},"end":{"line":1311,"column":1}}},"52":{"name":"(anonymous_52)","line":1347,"loc":{"start":{"line":1347,"column":5},"end":{"line":1348,"column":1}}},"53":{"name":"(anonymous_53)","line":1363,"loc":{"start":{"line":1363,"column":18},"end":{"line":1364,"column":1}}},"54":{"name":"(anonymous_54)","line":1428,"loc":{"start":{"line":1428,"column":6},"end":{"line":1429,"column":1}}},"55":{"name":"(anonymous_55)","line":1445,"loc":{"start":{"line":1445,"column":16},"end":{"line":1446,"column":1}}},"56":{"name":"(anonymous_56)","line":1494,"loc":{"start":{"line":1494,"column":12},"end":{"line":1495,"column":1}}},"57":{"name":"(anonymous_57)","line":1508,"loc":{"start":{"line":1508,"column":13},"end":{"line":1509,"column":4}}},"58":{"name":"(anonymous_58)","line":1521,"loc":{"start":{"line":1521,"column":13},"end":{"line":1522,"column":4}}},"59":{"name":"(anonymous_59)","line":1534,"loc":{"start":{"line":1534,"column":10},"end":{"line":1535,"column":4}}},"60":{"name":"(anonymous_60)","line":1545,"loc":{"start":{"line":1545,"column":11},"end":{"line":1546,"column":4}}},"61":{"name":"(anonymous_61)","line":1556,"loc":{"start":{"line":1556,"column":11},"end":{"line":1557,"column":4}}},"62":{"name":"(anonymous_62)","line":1567,"loc":{"start":{"line":1567,"column":12},"end":{"line":1568,"column":4}}},"63":{"name":"(anonymous_63)","line":1578,"loc":{"start":{"line":1578,"column":11},"end":{"line":1579,"column":4}}},"64":{"name":"(anonymous_64)","line":1600,"loc":{"start":{"line":1600,"column":16},"end":{"line":1601,"column":1}}},"65":{"name":"(anonymous_65)","line":1618,"loc":{"start":{"line":1618,"column":19},"end":{"line":1619,"column":1}}},"66":{"name":"(anonymous_66)","line":1657,"loc":{"start":{"line":1657,"column":17},"end":{"line":1658,"column":1}}},"67":{"name":"(anonymous_67)","line":1669,"loc":{"start":{"line":1669,"column":8},"end":{"line":1670,"column":1}}},"68":{"name":"(anonymous_68)","line":1684,"loc":{"start":{"line":1684,"column":13},"end":{"line":1685,"column":1}}},"69":{"name":"(anonymous_69)","line":1771,"loc":{"start":{"line":1771,"column":20},"end":{"line":1772,"column":4}}},"70":{"name":"(anonymous_70)","line":1817,"loc":{"start":{"line":1817,"column":18},"end":{"line":1818,"column":1}}},"71":{"name":"(anonymous_71)","line":1866,"loc":{"start":{"line":1866,"column":12},"end":{"line":1867,"column":1}}},"72":{"name":"(anonymous_72)","line":1893,"loc":{"start":{"line":1893,"column":21},"end":{"line":1894,"column":4}}},"73":{"name":"(anonymous_73)","line":1932,"loc":{"start":{"line":1932,"column":13},"end":{"line":1933,"column":4}}},"74":{"name":"(anonymous_74)","line":1946,"loc":{"start":{"line":1946,"column":12},"end":{"line":1947,"column":4}}},"75":{"name":"(anonymous_75)","line":1962,"loc":{"start":{"line":1962,"column":20},"end":{"line":1963,"column":4}}},"76":{"name":"(anonymous_76)","line":2003,"loc":{"start":{"line":2003,"column":13},"end":{"line":2004,"column":4}}},"77":{"name":"(anonymous_77)","line":2022,"loc":{"start":{"line":2022,"column":14},"end":{"line":2023,"column":4}}},"78":{"name":"(anonymous_78)","line":2047,"loc":{"start":{"line":2047,"column":11},"end":{"line":2048,"column":2}}},"79":{"name":"(anonymous_79)","line":2084,"loc":{"start":{"line":2084,"column":10},"end":{"line":2085,"column":2}}},"80":{"name":"(anonymous_80)","line":2092,"loc":{"start":{"line":2092,"column":16},"end":{"line":2093,"column":8}}},"81":{"name":"(anonymous_81)","line":2108,"loc":{"start":{"line":2108,"column":10},"end":{"line":2109,"column":2}}},"82":{"name":"(anonymous_82)","line":2121,"loc":{"start":{"line":2121,"column":11},"end":{"line":2122,"column":2}}},"83":{"name":"(anonymous_83)","line":2126,"loc":{"start":{"line":2126,"column":10},"end":{"line":2127,"column":2}}},"84":{"name":"(anonymous_84)","line":2186,"loc":{"start":{"line":2186,"column":10},"end":{"line":2186,"column":23}}},"85":{"name":"(anonymous_85)","line":2249,"loc":{"start":{"line":2249,"column":10},"end":{"line":2250,"column":2}}},"86":{"name":"(anonymous_86)","line":2297,"loc":{"start":{"line":2297,"column":10},"end":{"line":2298,"column":2}}},"87":{"name":"(anonymous_87)","line":2340,"loc":{"start":{"line":2340,"column":16},"end":{"line":2341,"column":8}}},"88":{"name":"(anonymous_88)","line":2359,"loc":{"start":{"line":2359,"column":10},"end":{"line":2360,"column":2}}},"89":{"name":"(anonymous_89)","line":2377,"loc":{"start":{"line":2377,"column":13},"end":{"line":2378,"column":0}}},"90":{"name":"(anonymous_90)","line":2398,"loc":{"start":{"line":2398,"column":11},"end":{"line":2399,"column":4}}},"91":{"name":"(anonymous_91)","line":2411,"loc":{"start":{"line":2411,"column":13},"end":{"line":2412,"column":1}}},"92":{"name":"(anonymous_92)","line":2442,"loc":{"start":{"line":2442,"column":9},"end":{"line":2443,"column":4}}},"93":{"name":"(anonymous_93)","line":2457,"loc":{"start":{"line":2457,"column":10},"end":{"line":2458,"column":2}}},"94":{"name":"(anonymous_94)","line":2463,"loc":{"start":{"line":2463,"column":10},"end":{"line":2464,"column":2}}},"95":{"name":"(anonymous_95)","line":2477,"loc":{"start":{"line":2477,"column":10},"end":{"line":2478,"column":2}}},"96":{"name":"(anonymous_96)","line":2483,"loc":{"start":{"line":2483,"column":10},"end":{"line":2484,"column":2}}},"97":{"name":"(anonymous_97)","line":2500,"loc":{"start":{"line":2500,"column":10},"end":{"line":2501,"column":2}}},"98":{"name":"(anonymous_98)","line":2518,"loc":{"start":{"line":2518,"column":13},"end":{"line":2519,"column":0}}},"99":{"name":"(anonymous_99)","line":2539,"loc":{"start":{"line":2539,"column":8},"end":{"line":2540,"column":1}}},"100":{"name":"(anonymous_100)","line":2561,"loc":{"start":{"line":2561,"column":16},"end":{"line":2562,"column":0}}},"101":{"name":"(anonymous_101)","line":2584,"loc":{"start":{"line":2584,"column":8},"end":{"line":2585,"column":1}}},"102":{"name":"(anonymous_102)","line":2601,"loc":{"start":{"line":2601,"column":10},"end":{"line":2602,"column":2}}},"103":{"name":"(anonymous_103)","line":2606,"loc":{"start":{"line":2606,"column":10},"end":{"line":2607,"column":2}}},"104":{"name":"(anonymous_104)","line":2625,"loc":{"start":{"line":2625,"column":10},"end":{"line":2626,"column":2}}},"105":{"name":"(anonymous_105)","line":2630,"loc":{"start":{"line":2630,"column":10},"end":{"line":2631,"column":2}}},"106":{"name":"(anonymous_106)","line":2653,"loc":{"start":{"line":2653,"column":15},"end":{"line":2654,"column":0}}},"107":{"name":"(anonymous_107)","line":2676,"loc":{"start":{"line":2676,"column":8},"end":{"line":2677,"column":1}}},"108":{"name":"(anonymous_108)","line":2696,"loc":{"start":{"line":2696,"column":16},"end":{"line":2697,"column":8}}},"109":{"name":"(anonymous_109)","line":2702,"loc":{"start":{"line":2702,"column":10},"end":{"line":2703,"column":2}}},"110":{"name":"(anonymous_110)","line":2715,"loc":{"start":{"line":2715,"column":16},"end":{"line":2716,"column":8}}},"111":{"name":"(anonymous_111)","line":2721,"loc":{"start":{"line":2721,"column":10},"end":{"line":2722,"column":2}}},"112":{"name":"(anonymous_112)","line":2745,"loc":{"start":{"line":2745,"column":17},"end":{"line":2746,"column":0}}},"113":{"name":"(anonymous_113)","line":2766,"loc":{"start":{"line":2766,"column":8},"end":{"line":2767,"column":1}}},"114":{"name":"CanvasGraphic","line":2832,"loc":{"start":{"line":2832,"column":0},"end":{"line":2832,"column":25}}},"115":{"name":"(anonymous_115)","line":2856,"loc":{"start":{"line":2856,"column":11},"end":{"line":2857,"column":2}}},"116":{"name":"(anonymous_116)","line":2861,"loc":{"start":{"line":2861,"column":10},"end":{"line":2862,"column":2}}},"117":{"name":"(anonymous_117)","line":2882,"loc":{"start":{"line":2882,"column":16},"end":{"line":2883,"column":8}}},"118":{"name":"(anonymous_118)","line":2898,"loc":{"start":{"line":2898,"column":16},"end":{"line":2899,"column":8}}},"119":{"name":"(anonymous_119)","line":2914,"loc":{"start":{"line":2914,"column":16},"end":{"line":2915,"column":8}}},"120":{"name":"(anonymous_120)","line":2927,"loc":{"start":{"line":2927,"column":16},"end":{"line":2928,"column":8}}},"121":{"name":"(anonymous_121)","line":2944,"loc":{"start":{"line":2944,"column":16},"end":{"line":2945,"column":8}}},"122":{"name":"(anonymous_122)","line":3021,"loc":{"start":{"line":3021,"column":16},"end":{"line":3022,"column":8}}},"123":{"name":"(anonymous_123)","line":3026,"loc":{"start":{"line":3026,"column":16},"end":{"line":3027,"column":8}}},"124":{"name":"(anonymous_124)","line":3044,"loc":{"start":{"line":3044,"column":16},"end":{"line":3045,"column":8}}},"125":{"name":"(anonymous_125)","line":3049,"loc":{"start":{"line":3049,"column":16},"end":{"line":3050,"column":8}}},"126":{"name":"(anonymous_126)","line":3082,"loc":{"start":{"line":3082,"column":16},"end":{"line":3083,"column":8}}},"127":{"name":"(anonymous_127)","line":3100,"loc":{"start":{"line":3100,"column":6},"end":{"line":3101,"column":1}}},"128":{"name":"(anonymous_128)","line":3161,"loc":{"start":{"line":3161,"column":11},"end":{"line":3162,"column":4}}},"129":{"name":"(anonymous_129)","line":3179,"loc":{"start":{"line":3179,"column":17},"end":{"line":3179,"column":28}}},"130":{"name":"(anonymous_130)","line":3209,"loc":{"start":{"line":3209,"column":12},"end":{"line":3209,"column":29}}},"131":{"name":"(anonymous_131)","line":3240,"loc":{"start":{"line":3240,"column":13},"end":{"line":3241,"column":4}}},"132":{"name":"(anonymous_132)","line":3261,"loc":{"start":{"line":3261,"column":14},"end":{"line":3262,"column":4}}},"133":{"name":"(anonymous_133)","line":3281,"loc":{"start":{"line":3281,"column":18},"end":{"line":3282,"column":4}}},"134":{"name":"(anonymous_134)","line":3301,"loc":{"start":{"line":3301,"column":17},"end":{"line":3302,"column":4}}},"135":{"name":"(anonymous_135)","line":3327,"loc":{"start":{"line":3327,"column":21},"end":{"line":3328,"column":4}}},"136":{"name":"(anonymous_136)","line":3346,"loc":{"start":{"line":3346,"column":11},"end":{"line":3346,"column":22}}},"137":{"name":"(anonymous_137)","line":3357,"loc":{"start":{"line":3357,"column":21},"end":{"line":3358,"column":4}}},"138":{"name":"(anonymous_138)","line":3378,"loc":{"start":{"line":3378,"column":20},"end":{"line":3379,"column":4}}},"139":{"name":"(anonymous_139)","line":3407,"loc":{"start":{"line":3407,"column":20},"end":{"line":3408,"column":4}}},"140":{"name":"(anonymous_140)","line":3439,"loc":{"start":{"line":3439,"column":18},"end":{"line":3440,"column":4}}},"141":{"name":"(anonymous_141)","line":3451,"loc":{"start":{"line":3451,"column":11},"end":{"line":3452,"column":4}}},"142":{"name":"(anonymous_142)","line":3466,"loc":{"start":{"line":3466,"column":17},"end":{"line":3467,"column":4}}},"143":{"name":"(anonymous_143)","line":3481,"loc":{"start":{"line":3481,"column":13},"end":{"line":3482,"column":4}}},"144":{"name":"(anonymous_144)","line":3556,"loc":{"start":{"line":3556,"column":25},"end":{"line":3557,"column":4}}},"145":{"name":"(anonymous_145)","line":3583,"loc":{"start":{"line":3583,"column":22},"end":{"line":3584,"column":4}}},"146":{"name":"(anonymous_146)","line":3611,"loc":{"start":{"line":3611,"column":30},"end":{"line":3612,"column":4}}},"147":{"name":"(anonymous_147)","line":3645,"loc":{"start":{"line":3645,"column":14},"end":{"line":3646,"column":4}}},"148":{"name":"(anonymous_148)","line":3665,"loc":{"start":{"line":3665,"column":13},"end":{"line":3666,"column":4}}}},"statementMap":{"1":{"start":{"line":1,"column":0},"end":{"line":3691,"column":44}},"2":{"start":{"line":3,"column":0},"end":{"line":24,"column":52}},"3":{"start":{"line":37,"column":0},"end":{"line":39,"column":1}},"4":{"start":{"line":41,"column":0},"end":{"line":1051,"column":2}},"5":{"start":{"line":89,"column":8},"end":{"line":89,"column":50}},"6":{"start":{"line":90,"column":8},"end":{"line":92,"column":9}},"7":{"start":{"line":91,"column":12},"end":{"line":91,"column":29}},"8":{"start":{"line":94,"column":8},"end":{"line":100,"column":9}},"9":{"start":{"line":95,"column":12},"end":{"line":99,"column":44}},"10":{"start":{"line":101,"column":8},"end":{"line":101,"column":19}},"11":{"start":{"line":112,"column":8},"end":{"line":112,"column":26}},"12":{"start":{"line":124,"column":8},"end":{"line":136,"column":9}},"13":{"start":{"line":126,"column":12},"end":{"line":130,"column":13}},"14":{"start":{"line":128,"column":16},"end":{"line":128,"column":49}},"15":{"start":{"line":129,"column":16},"end":{"line":129,"column":51}},"16":{"start":{"line":131,"column":12},"end":{"line":135,"column":13}},"17":{"start":{"line":133,"column":16},"end":{"line":133,"column":50}},"18":{"start":{"line":134,"column":16},"end":{"line":134,"column":52}},"19":{"start":{"line":149,"column":8},"end":{"line":149,"column":30}},"20":{"start":{"line":150,"column":8},"end":{"line":150,"column":30}},"21":{"start":{"line":151,"column":8},"end":{"line":151,"column":27}},"22":{"start":{"line":152,"column":8},"end":{"line":152,"column":27}},"23":{"start":{"line":163,"column":8},"end":{"line":164,"column":41}},"24":{"start":{"line":165,"column":8},"end":{"line":165,"column":33}},"25":{"start":{"line":176,"column":8},"end":{"line":178,"column":30}},"26":{"start":{"line":179,"column":8},"end":{"line":179,"column":41}},"27":{"start":{"line":180,"column":8},"end":{"line":180,"column":50}},"28":{"start":{"line":181,"column":8},"end":{"line":181,"column":48}},"29":{"start":{"line":196,"column":8},"end":{"line":196,"column":32}},"30":{"start":{"line":209,"column":8},"end":{"line":209,"column":62}},"31":{"start":{"line":210,"column":8},"end":{"line":210,"column":20}},"32":{"start":{"line":223,"column":8},"end":{"line":223,"column":61}},"33":{"start":{"line":224,"column":8},"end":{"line":224,"column":20}},"34":{"start":{"line":237,"column":8},"end":{"line":244,"column":66}},"35":{"start":{"line":245,"column":8},"end":{"line":248,"column":9}},"36":{"start":{"line":247,"column":12},"end":{"line":247,"column":37}},"37":{"start":{"line":249,"column":8},"end":{"line":249,"column":30}},"38":{"start":{"line":250,"column":8},"end":{"line":274,"column":9}},"39":{"start":{"line":251,"column":12},"end":{"line":260,"column":13}},"40":{"start":{"line":252,"column":16},"end":{"line":252,"column":40}},"41":{"start":{"line":253,"column":16},"end":{"line":253,"column":44}},"42":{"start":{"line":254,"column":16},"end":{"line":254,"column":34}},"43":{"start":{"line":255,"column":16},"end":{"line":255,"column":34}},"44":{"start":{"line":256,"column":16},"end":{"line":256,"column":59}},"45":{"start":{"line":257,"column":16},"end":{"line":257,"column":48}},"46":{"start":{"line":258,"column":16},"end":{"line":258,"column":48}},"47":{"start":{"line":259,"column":16},"end":{"line":259,"column":41}},"48":{"start":{"line":264,"column":12},"end":{"line":273,"column":13}},"49":{"start":{"line":266,"column":16},"end":{"line":266,"column":43}},"50":{"start":{"line":267,"column":16},"end":{"line":267,"column":43}},"51":{"start":{"line":268,"column":16},"end":{"line":268,"column":59}},"52":{"start":{"line":269,"column":16},"end":{"line":269,"column":106}},"53":{"start":{"line":270,"column":16},"end":{"line":270,"column":48}},"54":{"start":{"line":271,"column":16},"end":{"line":271,"column":48}},"55":{"start":{"line":272,"column":16},"end":{"line":272,"column":41}},"56":{"start":{"line":275,"column":8},"end":{"line":275,"column":38}},"57":{"start":{"line":276,"column":8},"end":{"line":276,"column":20}},"58":{"start":{"line":289,"column":8},"end":{"line":289,"column":62}},"59":{"start":{"line":290,"column":8},"end":{"line":290,"column":20}},"60":{"start":{"line":303,"column":8},"end":{"line":303,"column":61}},"61":{"start":{"line":304,"column":8},"end":{"line":304,"column":20}},"62":{"start":{"line":316,"column":8},"end":{"line":320,"column":48}},"63":{"start":{"line":321,"column":8},"end":{"line":321,"column":51}},"64":{"start":{"line":322,"column":8},"end":{"line":322,"column":40}},"65":{"start":{"line":323,"column":8},"end":{"line":323,"column":40}},"66":{"start":{"line":324,"column":8},"end":{"line":324,"column":33}},"67":{"start":{"line":325,"column":8},"end":{"line":325,"column":38}},"68":{"start":{"line":326,"column":8},"end":{"line":326,"column":20}},"69":{"start":{"line":342,"column":8},"end":{"line":342,"column":63}},"70":{"start":{"line":343,"column":8},"end":{"line":343,"column":20}},"71":{"start":{"line":359,"column":8},"end":{"line":359,"column":62}},"72":{"start":{"line":360,"column":8},"end":{"line":360,"column":20}},"73":{"start":{"line":372,"column":8},"end":{"line":388,"column":66}},"74":{"start":{"line":389,"column":8},"end":{"line":389,"column":30}},"75":{"start":{"line":390,"column":8},"end":{"line":410,"column":9}},"76":{"start":{"line":392,"column":12},"end":{"line":392,"column":51}},"77":{"start":{"line":393,"column":12},"end":{"line":393,"column":55}},"78":{"start":{"line":394,"column":12},"end":{"line":394,"column":55}},"79":{"start":{"line":395,"column":12},"end":{"line":395,"column":55}},"80":{"start":{"line":396,"column":12},"end":{"line":396,"column":52}},"81":{"start":{"line":397,"column":12},"end":{"line":397,"column":52}},"82":{"start":{"line":398,"column":12},"end":{"line":398,"column":86}},"83":{"start":{"line":399,"column":12},"end":{"line":399,"column":42}},"84":{"start":{"line":400,"column":12},"end":{"line":400,"column":54}},"85":{"start":{"line":401,"column":12},"end":{"line":401,"column":55}},"86":{"start":{"line":402,"column":12},"end":{"line":402,"column":53}},"87":{"start":{"line":403,"column":12},"end":{"line":403,"column":52}},"88":{"start":{"line":404,"column":12},"end":{"line":404,"column":39}},"89":{"start":{"line":405,"column":12},"end":{"line":405,"column":39}},"90":{"start":{"line":406,"column":12},"end":{"line":406,"column":90}},"91":{"start":{"line":407,"column":12},"end":{"line":407,"column":49}},"92":{"start":{"line":408,"column":12},"end":{"line":408,"column":31}},"93":{"start":{"line":409,"column":12},"end":{"line":409,"column":31}},"94":{"start":{"line":424,"column":8},"end":{"line":424,"column":72}},"95":{"start":{"line":425,"column":8},"end":{"line":425,"column":20}},"96":{"start":{"line":439,"column":8},"end":{"line":439,"column":71}},"97":{"start":{"line":440,"column":8},"end":{"line":440,"column":20}},"98":{"start":{"line":452,"column":8},"end":{"line":466,"column":66}},"99":{"start":{"line":467,"column":8},"end":{"line":484,"column":9}},"100":{"start":{"line":469,"column":12},"end":{"line":469,"column":50}},"101":{"start":{"line":470,"column":12},"end":{"line":470,"column":54}},"102":{"start":{"line":471,"column":12},"end":{"line":471,"column":52}},"103":{"start":{"line":472,"column":12},"end":{"line":472,"column":52}},"104":{"start":{"line":473,"column":12},"end":{"line":473,"column":42}},"105":{"start":{"line":474,"column":12},"end":{"line":474,"column":37}},"106":{"start":{"line":475,"column":12},"end":{"line":475,"column":38}},"107":{"start":{"line":476,"column":12},"end":{"line":476,"column":36}},"108":{"start":{"line":477,"column":12},"end":{"line":477,"column":35}},"109":{"start":{"line":478,"column":12},"end":{"line":478,"column":39}},"110":{"start":{"line":479,"column":12},"end":{"line":479,"column":39}},"111":{"start":{"line":480,"column":12},"end":{"line":480,"column":74}},"112":{"start":{"line":481,"column":12},"end":{"line":481,"column":49}},"113":{"start":{"line":482,"column":12},"end":{"line":482,"column":75}},"114":{"start":{"line":483,"column":12},"end":{"line":483,"column":37}},"115":{"start":{"line":485,"column":8},"end":{"line":485,"column":20}},"116":{"start":{"line":499,"column":8},"end":{"line":502,"column":32}},"117":{"start":{"line":503,"column":12},"end":{"line":503,"column":25}},"118":{"start":{"line":504,"column":8},"end":{"line":504,"column":38}},"119":{"start":{"line":505,"column":8},"end":{"line":505,"column":48}},"120":{"start":{"line":506,"column":8},"end":{"line":506,"column":40}},"121":{"start":{"line":507,"column":8},"end":{"line":507,"column":33}},"122":{"start":{"line":508,"column":8},"end":{"line":508,"column":103}},"123":{"start":{"line":509,"column":8},"end":{"line":509,"column":20}},"124":{"start":{"line":525,"column":8},"end":{"line":526,"column":37}},"125":{"start":{"line":527,"column":8},"end":{"line":527,"column":37}},"126":{"start":{"line":528,"column":8},"end":{"line":528,"column":46}},"127":{"start":{"line":529,"column":8},"end":{"line":529,"column":46}},"128":{"start":{"line":530,"column":8},"end":{"line":530,"column":38}},"129":{"start":{"line":531,"column":8},"end":{"line":531,"column":37}},"130":{"start":{"line":532,"column":8},"end":{"line":532,"column":20}},"131":{"start":{"line":547,"column":8},"end":{"line":557,"column":77}},"132":{"start":{"line":559,"column":8},"end":{"line":559,"column":44}},"133":{"start":{"line":560,"column":8},"end":{"line":560,"column":45}},"134":{"start":{"line":561,"column":8},"end":{"line":561,"column":28}},"135":{"start":{"line":562,"column":8},"end":{"line":571,"column":9}},"136":{"start":{"line":564,"column":12},"end":{"line":564,"column":27}},"137":{"start":{"line":565,"column":12},"end":{"line":565,"column":43}},"138":{"start":{"line":566,"column":12},"end":{"line":566,"column":52}},"139":{"start":{"line":567,"column":12},"end":{"line":567,"column":53}},"140":{"start":{"line":568,"column":12},"end":{"line":568,"column":79}},"141":{"start":{"line":569,"column":12},"end":{"line":569,"column":80}},"142":{"start":{"line":570,"column":12},"end":{"line":570,"column":75}},"143":{"start":{"line":572,"column":8},"end":{"line":572,"column":48}},"144":{"start":{"line":573,"column":8},"end":{"line":573,"column":40}},"145":{"start":{"line":574,"column":8},"end":{"line":574,"column":33}},"146":{"start":{"line":575,"column":8},"end":{"line":575,"column":20}},"147":{"start":{"line":589,"column":8},"end":{"line":589,"column":38}},"148":{"start":{"line":590,"column":8},"end":{"line":590,"column":26}},"149":{"start":{"line":591,"column":8},"end":{"line":591,"column":30}},"150":{"start":{"line":592,"column":8},"end":{"line":592,"column":34}},"151":{"start":{"line":593,"column":8},"end":{"line":593,"column":30}},"152":{"start":{"line":594,"column":8},"end":{"line":594,"column":26}},"153":{"start":{"line":595,"column":8},"end":{"line":595,"column":20}},"154":{"start":{"line":611,"column":8},"end":{"line":611,"column":38}},"155":{"start":{"line":612,"column":8},"end":{"line":612,"column":32}},"156":{"start":{"line":613,"column":8},"end":{"line":613,"column":35}},"157":{"start":{"line":614,"column":8},"end":{"line":614,"column":55}},"158":{"start":{"line":615,"column":8},"end":{"line":615,"column":39}},"159":{"start":{"line":616,"column":8},"end":{"line":616,"column":63}},"160":{"start":{"line":617,"column":8},"end":{"line":617,"column":35}},"161":{"start":{"line":618,"column":8},"end":{"line":618,"column":55}},"162":{"start":{"line":619,"column":8},"end":{"line":619,"column":31}},"163":{"start":{"line":620,"column":8},"end":{"line":620,"column":47}},"164":{"start":{"line":621,"column":8},"end":{"line":621,"column":20}},"165":{"start":{"line":639,"column":8},"end":{"line":651,"column":18}},"166":{"start":{"line":652,"column":8},"end":{"line":652,"column":36}},"167":{"start":{"line":654,"column":8},"end":{"line":654,"column":38}},"168":{"start":{"line":656,"column":8},"end":{"line":656,"column":51}},"169":{"start":{"line":658,"column":8},"end":{"line":658,"column":36}},"170":{"start":{"line":661,"column":8},"end":{"line":664,"column":9}},"171":{"start":{"line":663,"column":12},"end":{"line":663,"column":22}},"172":{"start":{"line":668,"column":8},"end":{"line":668,"column":45}},"173":{"start":{"line":671,"column":8},"end":{"line":671,"column":30}},"174":{"start":{"line":675,"column":8},"end":{"line":675,"column":44}},"175":{"start":{"line":678,"column":8},"end":{"line":678,"column":45}},"176":{"start":{"line":681,"column":8},"end":{"line":700,"column":9}},"177":{"start":{"line":684,"column":12},"end":{"line":684,"column":67}},"178":{"start":{"line":685,"column":12},"end":{"line":685,"column":68}},"179":{"start":{"line":686,"column":12},"end":{"line":686,"column":32}},"180":{"start":{"line":688,"column":12},"end":{"line":697,"column":13}},"181":{"start":{"line":690,"column":16},"end":{"line":690,"column":31}},"182":{"start":{"line":691,"column":16},"end":{"line":691,"column":47}},"183":{"start":{"line":692,"column":16},"end":{"line":692,"column":50}},"184":{"start":{"line":693,"column":16},"end":{"line":693,"column":51}},"185":{"start":{"line":694,"column":16},"end":{"line":694,"column":77}},"186":{"start":{"line":695,"column":16},"end":{"line":695,"column":78}},"187":{"start":{"line":696,"column":16},"end":{"line":696,"column":79}},"188":{"start":{"line":699,"column":12},"end":{"line":699,"column":55}},"189":{"start":{"line":701,"column":8},"end":{"line":701,"column":35}},"190":{"start":{"line":702,"column":8},"end":{"line":702,"column":62}},"191":{"start":{"line":703,"column":8},"end":{"line":703,"column":20}},"192":{"start":{"line":713,"column":8},"end":{"line":713,"column":26}},"193":{"start":{"line":714,"column":8},"end":{"line":714,"column":20}},"194":{"start":{"line":725,"column":8},"end":{"line":725,"column":48}},"195":{"start":{"line":726,"column":8},"end":{"line":726,"column":48}},"196":{"start":{"line":727,"column":8},"end":{"line":727,"column":20}},"197":{"start":{"line":737,"column":2},"end":{"line":737,"column":20}},"198":{"start":{"line":738,"column":8},"end":{"line":741,"column":9}},"199":{"start":{"line":740,"column":12},"end":{"line":740,"column":77}},"200":{"start":{"line":742,"column":8},"end":{"line":742,"column":20}},"201":{"start":{"line":754,"column":8},"end":{"line":773,"column":81}},"202":{"start":{"line":774,"column":8},"end":{"line":803,"column":9}},"203":{"start":{"line":776,"column":12},"end":{"line":785,"column":13}},"204":{"start":{"line":778,"column":16},"end":{"line":778,"column":23}},"205":{"start":{"line":779,"column":16},"end":{"line":779,"column":27}},"206":{"start":{"line":783,"column":16},"end":{"line":783,"column":27}},"207":{"start":{"line":784,"column":16},"end":{"line":784,"column":23}},"208":{"start":{"line":786,"column":12},"end":{"line":786,"column":45}},"209":{"start":{"line":787,"column":12},"end":{"line":787,"column":45}},"210":{"start":{"line":791,"column":12},"end":{"line":800,"column":13}},"211":{"start":{"line":793,"column":16},"end":{"line":793,"column":27}},"212":{"start":{"line":794,"column":16},"end":{"line":794,"column":23}},"213":{"start":{"line":798,"column":16},"end":{"line":798,"column":23}},"214":{"start":{"line":799,"column":16},"end":{"line":799,"column":27}},"215":{"start":{"line":801,"column":12},"end":{"line":801,"column":54}},"216":{"start":{"line":802,"column":12},"end":{"line":802,"column":54}},"217":{"start":{"line":804,"column":8},"end":{"line":804,"column":70}},"218":{"start":{"line":805,"column":8},"end":{"line":822,"column":9}},"219":{"start":{"line":807,"column":12},"end":{"line":807,"column":28}},"220":{"start":{"line":808,"column":12},"end":{"line":808,"column":35}},"221":{"start":{"line":809,"column":12},"end":{"line":809,"column":31}},"222":{"start":{"line":810,"column":12},"end":{"line":810,"column":33}},"223":{"start":{"line":811,"column":12},"end":{"line":819,"column":13}},"224":{"start":{"line":813,"column":16},"end":{"line":813,"column":60}},"225":{"start":{"line":814,"column":16},"end":{"line":814,"column":53}},"226":{"start":{"line":818,"column":16},"end":{"line":818,"column":37}},"227":{"start":{"line":820,"column":12},"end":{"line":820,"column":48}},"228":{"start":{"line":821,"column":12},"end":{"line":821,"column":49}},"229":{"start":{"line":823,"column":8},"end":{"line":823,"column":24}},"230":{"start":{"line":834,"column":8},"end":{"line":854,"column":27}},"231":{"start":{"line":855,"column":8},"end":{"line":855,"column":21}},"232":{"start":{"line":856,"column":8},"end":{"line":856,"column":21}},"233":{"start":{"line":857,"column":8},"end":{"line":857,"column":20}},"234":{"start":{"line":858,"column":8},"end":{"line":858,"column":20}},"235":{"start":{"line":859,"column":8},"end":{"line":859,"column":21}},"236":{"start":{"line":860,"column":8},"end":{"line":860,"column":21}},"237":{"start":{"line":861,"column":8},"end":{"line":861,"column":19}},"238":{"start":{"line":862,"column":8},"end":{"line":862,"column":89}},"239":{"start":{"line":863,"column":8},"end":{"line":877,"column":9}},"240":{"start":{"line":865,"column":12},"end":{"line":865,"column":25}},"241":{"start":{"line":867,"column":12},"end":{"line":870,"column":13}},"242":{"start":{"line":869,"column":16},"end":{"line":869,"column":29}},"243":{"start":{"line":871,"column":12},"end":{"line":871,"column":33}},"244":{"start":{"line":872,"column":12},"end":{"line":872,"column":33}},"245":{"start":{"line":873,"column":12},"end":{"line":873,"column":57}},"246":{"start":{"line":874,"column":12},"end":{"line":874,"column":57}},"247":{"start":{"line":875,"column":12},"end":{"line":875,"column":25}},"248":{"start":{"line":876,"column":12},"end":{"line":876,"column":25}},"249":{"start":{"line":882,"column":8},"end":{"line":891,"column":9}},"250":{"start":{"line":884,"column":12},"end":{"line":884,"column":84}},"251":{"start":{"line":885,"column":12},"end":{"line":885,"column":31}},"252":{"start":{"line":889,"column":12},"end":{"line":889,"column":82}},"253":{"start":{"line":890,"column":12},"end":{"line":890,"column":35}},"254":{"start":{"line":892,"column":8},"end":{"line":913,"column":9}},"255":{"start":{"line":894,"column":12},"end":{"line":894,"column":28}},"256":{"start":{"line":895,"column":12},"end":{"line":895,"column":35}},"257":{"start":{"line":896,"column":12},"end":{"line":896,"column":31}},"258":{"start":{"line":897,"column":12},"end":{"line":897,"column":33}},"259":{"start":{"line":898,"column":12},"end":{"line":906,"column":13}},"260":{"start":{"line":900,"column":16},"end":{"line":900,"column":60}},"261":{"start":{"line":901,"column":16},"end":{"line":901,"column":53}},"262":{"start":{"line":905,"column":16},"end":{"line":905,"column":37}},"263":{"start":{"line":907,"column":12},"end":{"line":907,"column":48}},"264":{"start":{"line":908,"column":12},"end":{"line":908,"column":37}},"265":{"start":{"line":909,"column":12},"end":{"line":912,"column":13}},"266":{"start":{"line":911,"column":16},"end":{"line":911,"column":53}},"267":{"start":{"line":914,"column":8},"end":{"line":914,"column":24}},"268":{"start":{"line":925,"column":8},"end":{"line":925,"column":27}},"269":{"start":{"line":926,"column":8},"end":{"line":926,"column":33}},"270":{"start":{"line":927,"column":8},"end":{"line":927,"column":28}},"271":{"start":{"line":928,"column":2},"end":{"line":928,"column":22}},"272":{"start":{"line":929,"column":2},"end":{"line":929,"column":18}},"273":{"start":{"line":930,"column":8},"end":{"line":930,"column":25}},"274":{"start":{"line":931,"column":8},"end":{"line":931,"column":23}},"275":{"start":{"line":932,"column":8},"end":{"line":932,"column":22}},"276":{"start":{"line":933,"column":8},"end":{"line":933,"column":24}},"277":{"start":{"line":934,"column":8},"end":{"line":934,"column":25}},"278":{"start":{"line":935,"column":8},"end":{"line":935,"column":27}},"279":{"start":{"line":936,"column":8},"end":{"line":936,"column":27}},"280":{"start":{"line":956,"column":8},"end":{"line":956,"column":59}},"281":{"start":{"line":957,"column":8},"end":{"line":957,"column":23}},"282":{"start":{"line":970,"column":8},"end":{"line":973,"column":14}},"283":{"start":{"line":975,"column":8},"end":{"line":977,"column":9}},"284":{"start":{"line":976,"column":12},"end":{"line":976,"column":50}},"285":{"start":{"line":979,"column":8},"end":{"line":984,"column":9}},"286":{"start":{"line":980,"column":12},"end":{"line":983,"column":13}},"287":{"start":{"line":981,"column":16},"end":{"line":981,"column":82}},"288":{"start":{"line":982,"column":16},"end":{"line":982,"column":82}},"289":{"start":{"line":985,"column":8},"end":{"line":985,"column":40}},"290":{"start":{"line":999,"column":8},"end":{"line":1007,"column":15}},"291":{"start":{"line":1008,"column":8},"end":{"line":1015,"column":9}},"292":{"start":{"line":1010,"column":12},"end":{"line":1010,"column":48}},"293":{"start":{"line":1011,"column":12},"end":{"line":1011,"column":63}},"294":{"start":{"line":1012,"column":12},"end":{"line":1012,"column":66}},"295":{"start":{"line":1013,"column":12},"end":{"line":1013,"column":60}},"296":{"start":{"line":1014,"column":12},"end":{"line":1014,"column":69}},"297":{"start":{"line":1016,"column":8},"end":{"line":1016,"column":40}},"298":{"start":{"line":1017,"column":8},"end":{"line":1017,"column":42}},"299":{"start":{"line":1018,"column":8},"end":{"line":1018,"column":38}},"300":{"start":{"line":1019,"column":8},"end":{"line":1019,"column":44}},"301":{"start":{"line":1020,"column":8},"end":{"line":1020,"column":49}},"302":{"start":{"line":1021,"column":8},"end":{"line":1021,"column":45}},"303":{"start":{"line":1033,"column":8},"end":{"line":1035,"column":9}},"304":{"start":{"line":1034,"column":12},"end":{"line":1034,"column":28}},"305":{"start":{"line":1036,"column":8},"end":{"line":1039,"column":9}},"306":{"start":{"line":1038,"column":12},"end":{"line":1038,"column":27}},"307":{"start":{"line":1040,"column":8},"end":{"line":1043,"column":9}},"308":{"start":{"line":1042,"column":12},"end":{"line":1042,"column":26}},"309":{"start":{"line":1044,"column":8},"end":{"line":1047,"column":9}},"310":{"start":{"line":1046,"column":12},"end":{"line":1046,"column":29}},"311":{"start":{"line":1048,"column":8},"end":{"line":1048,"column":47}},"312":{"start":{"line":1049,"column":8},"end":{"line":1049,"column":48}},"313":{"start":{"line":1052,"column":0},"end":{"line":1052,"column":32}},"314":{"start":{"line":1064,"column":0},"end":{"line":1069,"column":2}},"315":{"start":{"line":1066,"column":4},"end":{"line":1066,"column":26}},"316":{"start":{"line":1067,"column":4},"end":{"line":1067,"column":33}},"317":{"start":{"line":1068,"column":4},"end":{"line":1068,"column":62}},"318":{"start":{"line":1071,"column":0},"end":{"line":1071,"column":27}},"319":{"start":{"line":1073,"column":0},"end":{"line":2036,"column":31}},"320":{"start":{"line":1083,"column":2},"end":{"line":1083,"column":42}},"321":{"start":{"line":1094,"column":2},"end":{"line":1096,"column":36}},"322":{"start":{"line":1097,"column":8},"end":{"line":1097,"column":26}},"323":{"start":{"line":1098,"column":2},"end":{"line":1098,"column":20}},"324":{"start":{"line":1099,"column":2},"end":{"line":1099,"column":22}},"325":{"start":{"line":1100,"column":2},"end":{"line":1100,"column":22}},"326":{"start":{"line":1101,"column":8},"end":{"line":1104,"column":9}},"327":{"start":{"line":1103,"column":12},"end":{"line":1103,"column":38}},"328":{"start":{"line":1105,"column":8},"end":{"line":1108,"column":9}},"329":{"start":{"line":1107,"column":12},"end":{"line":1107,"column":38}},"330":{"start":{"line":1109,"column":2},"end":{"line":1109,"column":24}},"331":{"start":{"line":1123,"column":8},"end":{"line":1123,"column":20}},"332":{"start":{"line":1124,"column":8},"end":{"line":1135,"column":9}},"333":{"start":{"line":1126,"column":12},"end":{"line":1126,"column":35}},"334":{"start":{"line":1130,"column":12},"end":{"line":1132,"column":15}},"335":{"start":{"line":1133,"column":12},"end":{"line":1133,"column":39}},"336":{"start":{"line":1134,"column":12},"end":{"line":1134,"column":36}},"337":{"start":{"line":1146,"column":2},"end":{"line":1146,"column":30}},"338":{"start":{"line":1147,"column":2},"end":{"line":1147,"column":34}},"339":{"start":{"line":1158,"column":2},"end":{"line":1158,"column":30}},"340":{"start":{"line":1159,"column":2},"end":{"line":1159,"column":37}},"341":{"start":{"line":1170,"column":2},"end":{"line":1173,"column":21}},"342":{"start":{"line":1174,"column":2},"end":{"line":1174,"column":44}},"343":{"start":{"line":1185,"column":2},"end":{"line":1188,"column":27}},"344":{"start":{"line":1189,"column":2},"end":{"line":1189,"column":20}},"345":{"start":{"line":1190,"column":2},"end":{"line":1190,"column":20}},"346":{"start":{"line":1191,"column":2},"end":{"line":1191,"column":33}},"347":{"start":{"line":1203,"column":2},"end":{"line":1203,"column":62}},"348":{"start":{"line":1204,"column":8},"end":{"line":1204,"column":34}},"349":{"start":{"line":1216,"column":2},"end":{"line":1216,"column":46}},"350":{"start":{"line":1227,"column":2},"end":{"line":1227,"column":23}},"351":{"start":{"line":1228,"column":2},"end":{"line":1228,"column":26}},"352":{"start":{"line":1239,"column":2},"end":{"line":1247,"column":4}},"353":{"start":{"line":1259,"column":2},"end":{"line":1264,"column":4}},"354":{"start":{"line":1312,"column":2},"end":{"line":1316,"column":29}},"355":{"start":{"line":1317,"column":2},"end":{"line":1317,"column":40}},"356":{"start":{"line":1318,"column":2},"end":{"line":1318,"column":43}},"357":{"start":{"line":1319,"column":8},"end":{"line":1319,"column":40}},"358":{"start":{"line":1320,"column":8},"end":{"line":1323,"column":9}},"359":{"start":{"line":1322,"column":12},"end":{"line":1322,"column":45}},"360":{"start":{"line":1324,"column":2},"end":{"line":1324,"column":30}},"361":{"start":{"line":1325,"column":2},"end":{"line":1325,"column":16}},"362":{"start":{"line":1326,"column":8},"end":{"line":1326,"column":25}},"363":{"start":{"line":1327,"column":2},"end":{"line":1335,"column":10}},"364":{"start":{"line":1349,"column":2},"end":{"line":1352,"column":3}},"365":{"start":{"line":1351,"column":12},"end":{"line":1351,"column":56}},"366":{"start":{"line":1353,"column":2},"end":{"line":1353,"column":37}},"367":{"start":{"line":1365,"column":2},"end":{"line":1370,"column":13}},"368":{"start":{"line":1371,"column":8},"end":{"line":1416,"column":9}},"369":{"start":{"line":1373,"column":12},"end":{"line":1373,"column":33}},"370":{"start":{"line":1374,"column":12},"end":{"line":1374,"column":48}},"371":{"start":{"line":1375,"column":12},"end":{"line":1375,"column":50}},"372":{"start":{"line":1376,"column":12},"end":{"line":1376,"column":50}},"373":{"start":{"line":1377,"column":12},"end":{"line":1377,"column":47}},"374":{"start":{"line":1378,"column":12},"end":{"line":1378,"column":41}},"375":{"start":{"line":1379,"column":12},"end":{"line":1379,"column":36}},"376":{"start":{"line":1380,"column":12},"end":{"line":1380,"column":114}},"377":{"start":{"line":1381,"column":12},"end":{"line":1381,"column":40}},"378":{"start":{"line":1383,"column":12},"end":{"line":1390,"column":13}},"379":{"start":{"line":1385,"column":16},"end":{"line":1385,"column":33}},"380":{"start":{"line":1389,"column":16},"end":{"line":1389,"column":33}},"381":{"start":{"line":1391,"column":12},"end":{"line":1397,"column":13}},"382":{"start":{"line":1392,"column":16},"end":{"line":1392,"column":65}},"383":{"start":{"line":1396,"column":16},"end":{"line":1396,"column":42}},"384":{"start":{"line":1398,"column":12},"end":{"line":1398,"column":36}},"385":{"start":{"line":1399,"column":12},"end":{"line":1411,"column":13}},"386":{"start":{"line":1401,"column":16},"end":{"line":1401,"column":42}},"387":{"start":{"line":1405,"column":16},"end":{"line":1405,"column":50}},"388":{"start":{"line":1406,"column":16},"end":{"line":1410,"column":17}},"389":{"start":{"line":1408,"column":20},"end":{"line":1408,"column":62}},"390":{"start":{"line":1409,"column":20},"end":{"line":1409,"column":45}},"391":{"start":{"line":1415,"column":12},"end":{"line":1415,"column":29}},"392":{"start":{"line":1430,"column":2},"end":{"line":1430,"column":18}},"393":{"start":{"line":1431,"column":2},"end":{"line":1431,"column":53}},"394":{"start":{"line":1432,"column":2},"end":{"line":1435,"column":3}},"395":{"start":{"line":1434,"column":3},"end":{"line":1434,"column":25}},"396":{"start":{"line":1447,"column":2},"end":{"line":1450,"column":8}},"397":{"start":{"line":1451,"column":8},"end":{"line":1484,"column":3}},"398":{"start":{"line":1453,"column":12},"end":{"line":1453,"column":31}},"399":{"start":{"line":1454,"column":12},"end":{"line":1454,"column":29}},"400":{"start":{"line":1455,"column":12},"end":{"line":1478,"column":13}},"401":{"start":{"line":1457,"column":16},"end":{"line":1457,"column":38}},"402":{"start":{"line":1459,"column":17},"end":{"line":1478,"column":13}},"403":{"start":{"line":1461,"column":16},"end":{"line":1461,"column":39}},"404":{"start":{"line":1462,"column":16},"end":{"line":1470,"column":17}},"405":{"start":{"line":1464,"column":20},"end":{"line":1464,"column":64}},"406":{"start":{"line":1465,"column":20},"end":{"line":1465,"column":57}},"407":{"start":{"line":1469,"column":20},"end":{"line":1469,"column":41}},"408":{"start":{"line":1472,"column":16},"end":{"line":1472,"column":40}},"409":{"start":{"line":1473,"column":16},"end":{"line":1473,"column":41}},"410":{"start":{"line":1477,"column":16},"end":{"line":1477,"column":39}},"411":{"start":{"line":1482,"column":12},"end":{"line":1482,"column":34}},"412":{"start":{"line":1483,"column":3},"end":{"line":1483,"column":26}},"413":{"start":{"line":1496,"column":2},"end":{"line":1496,"column":24}},"414":{"start":{"line":1497,"column":2},"end":{"line":1497,"column":24}},"415":{"start":{"line":1498,"column":2},"end":{"line":1498,"column":45}},"416":{"start":{"line":1510,"column":8},"end":{"line":1510,"column":30}},"417":{"start":{"line":1511,"column":8},"end":{"line":1511,"column":52}},"418":{"start":{"line":1523,"column":8},"end":{"line":1523,"column":30}},"419":{"start":{"line":1524,"column":8},"end":{"line":1524,"column":52}},"420":{"start":{"line":1536,"column":8},"end":{"line":1536,"column":46}},"421":{"start":{"line":1547,"column":8},"end":{"line":1547,"column":47}},"422":{"start":{"line":1558,"column":8},"end":{"line":1558,"column":47}},"423":{"start":{"line":1569,"column":8},"end":{"line":1569,"column":48}},"424":{"start":{"line":1580,"column":8},"end":{"line":1580,"column":47}},"425":{"start":{"line":1602,"column":8},"end":{"line":1602,"column":29}},"426":{"start":{"line":1603,"column":8},"end":{"line":1603,"column":98}},"427":{"start":{"line":1604,"column":8},"end":{"line":1604,"column":27}},"428":{"start":{"line":1605,"column":8},"end":{"line":1605,"column":36}},"429":{"start":{"line":1606,"column":8},"end":{"line":1609,"column":9}},"430":{"start":{"line":1608,"column":12},"end":{"line":1608,"column":36}},"431":{"start":{"line":1620,"column":2},"end":{"line":1626,"column":42}},"432":{"start":{"line":1628,"column":8},"end":{"line":1639,"column":9}},"433":{"start":{"line":1630,"column":12},"end":{"line":1637,"column":13}},"434":{"start":{"line":1632,"column":16},"end":{"line":1632,"column":50}},"435":{"start":{"line":1633,"column":16},"end":{"line":1636,"column":17}},"436":{"start":{"line":1635,"column":20},"end":{"line":1635,"column":67}},"437":{"start":{"line":1638,"column":12},"end":{"line":1638,"column":43}},"438":{"start":{"line":1641,"column":8},"end":{"line":1641,"column":45}},"439":{"start":{"line":1642,"column":2},"end":{"line":1642,"column":89}},"440":{"start":{"line":1643,"column":8},"end":{"line":1643,"column":65}},"441":{"start":{"line":1644,"column":8},"end":{"line":1647,"column":3}},"442":{"start":{"line":1646,"column":12},"end":{"line":1646,"column":57}},"443":{"start":{"line":1648,"column":8},"end":{"line":1648,"column":30}},"444":{"start":{"line":1659,"column":2},"end":{"line":1659,"column":15}},"445":{"start":{"line":1660,"column":2},"end":{"line":1660,"column":26}},"446":{"start":{"line":1671,"column":8},"end":{"line":1671,"column":29}},"447":{"start":{"line":1672,"column":8},"end":{"line":1672,"column":21}},"448":{"start":{"line":1673,"column":2},"end":{"line":1673,"column":20}},"449":{"start":{"line":1674,"column":2},"end":{"line":1674,"column":41}},"450":{"start":{"line":1675,"column":2},"end":{"line":1675,"column":40}},"451":{"start":{"line":1686,"column":2},"end":{"line":1689,"column":3}},"452":{"start":{"line":1688,"column":3},"end":{"line":1688,"column":10}},"453":{"start":{"line":1690,"column":2},"end":{"line":1701,"column":11}},"454":{"start":{"line":1702,"column":2},"end":{"line":1702,"column":57}},"455":{"start":{"line":1703,"column":8},"end":{"line":1761,"column":3}},"456":{"start":{"line":1705,"column":3},"end":{"line":1705,"column":30}},"457":{"start":{"line":1706,"column":3},"end":{"line":1709,"column":4}},"458":{"start":{"line":1708,"column":4},"end":{"line":1708,"column":11}},"459":{"start":{"line":1710,"column":3},"end":{"line":1726,"column":4}},"460":{"start":{"line":1712,"column":4},"end":{"line":1712,"column":43}},"461":{"start":{"line":1713,"column":4},"end":{"line":1713,"column":22}},"462":{"start":{"line":1714,"column":16},"end":{"line":1714,"column":108}},"463":{"start":{"line":1715,"column":4},"end":{"line":1725,"column":5}},"464":{"start":{"line":1717,"column":5},"end":{"line":1724,"column":6}},"465":{"start":{"line":1719,"column":6},"end":{"line":1719,"column":36}},"466":{"start":{"line":1723,"column":6},"end":{"line":1723,"column":37}},"467":{"start":{"line":1727,"column":12},"end":{"line":1727,"column":58}},"468":{"start":{"line":1728,"column":12},"end":{"line":1728,"column":59}},"469":{"start":{"line":1729,"column":12},"end":{"line":1729,"column":32}},"470":{"start":{"line":1730,"column":3},"end":{"line":1754,"column":4}},"471":{"start":{"line":1732,"column":4},"end":{"line":1732,"column":31}},"472":{"start":{"line":1733,"column":4},"end":{"line":1753,"column":5}},"473":{"start":{"line":1735,"column":5},"end":{"line":1735,"column":27}},"474":{"start":{"line":1736,"column":5},"end":{"line":1752,"column":6}},"475":{"start":{"line":1738,"column":24},"end":{"line":1751,"column":7}},"476":{"start":{"line":1740,"column":28},"end":{"line":1740,"column":48}},"477":{"start":{"line":1741,"column":28},"end":{"line":1741,"column":57}},"478":{"start":{"line":1743,"column":11},"end":{"line":1751,"column":7}},"479":{"start":{"line":1745,"column":7},"end":{"line":1745,"column":81}},"480":{"start":{"line":1746,"column":7},"end":{"line":1746,"column":46}},"481":{"start":{"line":1750,"column":28},"end":{"line":1750,"column":65}},"482":{"start":{"line":1756,"column":12},"end":{"line":1756,"column":41}},"483":{"start":{"line":1757,"column":3},"end":{"line":1757,"column":32}},"484":{"start":{"line":1758,"column":3},"end":{"line":1758,"column":32}},"485":{"start":{"line":1759,"column":3},"end":{"line":1759,"column":30}},"486":{"start":{"line":1760,"column":3},"end":{"line":1760,"column":33}},"487":{"start":{"line":1773,"column":8},"end":{"line":1789,"column":9}},"488":{"start":{"line":1775,"column":12},"end":{"line":1786,"column":13}},"489":{"start":{"line":1777,"column":16},"end":{"line":1777,"column":62}},"490":{"start":{"line":1779,"column":17},"end":{"line":1786,"column":13}},"491":{"start":{"line":1781,"column":16},"end":{"line":1781,"column":62}},"492":{"start":{"line":1785,"column":16},"end":{"line":1785,"column":52}},"493":{"start":{"line":1787,"column":12},"end":{"line":1787,"column":32}},"494":{"start":{"line":1788,"column":12},"end":{"line":1788,"column":27}},"495":{"start":{"line":1791,"column":8},"end":{"line":1804,"column":9}},"496":{"start":{"line":1792,"column":12},"end":{"line":1795,"column":13}},"497":{"start":{"line":1794,"column":16},"end":{"line":1794,"column":55}},"498":{"start":{"line":1796,"column":12},"end":{"line":1796,"column":44}},"499":{"start":{"line":1797,"column":12},"end":{"line":1797,"column":46}},"500":{"start":{"line":1798,"column":12},"end":{"line":1801,"column":13}},"501":{"start":{"line":1800,"column":16},"end":{"line":1800,"column":54}},"502":{"start":{"line":1802,"column":12},"end":{"line":1802,"column":52}},"503":{"start":{"line":1803,"column":12},"end":{"line":1803,"column":29}},"504":{"start":{"line":1819,"column":2},"end":{"line":1830,"column":5}},"505":{"start":{"line":1831,"column":2},"end":{"line":1831,"column":45}},"506":{"start":{"line":1832,"column":2},"end":{"line":1832,"column":45}},"507":{"start":{"line":1834,"column":2},"end":{"line":1840,"column":3}},"508":{"start":{"line":1836,"column":3},"end":{"line":1836,"column":38}},"509":{"start":{"line":1837,"column":3},"end":{"line":1837,"column":100}},"510":{"start":{"line":1838,"column":3},"end":{"line":1838,"column":22}},"511":{"start":{"line":1839,"column":3},"end":{"line":1839,"column":22}},"512":{"start":{"line":1842,"column":2},"end":{"line":1842,"column":37}},"513":{"start":{"line":1843,"column":2},"end":{"line":1843,"column":99}},"514":{"start":{"line":1845,"column":2},"end":{"line":1852,"column":3}},"515":{"start":{"line":1847,"column":3},"end":{"line":1847,"column":100}},"516":{"start":{"line":1849,"column":7},"end":{"line":1852,"column":3}},"517":{"start":{"line":1851,"column":3},"end":{"line":1851,"column":94}},"518":{"start":{"line":1854,"column":2},"end":{"line":1854,"column":29}},"519":{"start":{"line":1868,"column":2},"end":{"line":1872,"column":21}},"520":{"start":{"line":1873,"column":8},"end":{"line":1879,"column":9}},"521":{"start":{"line":1875,"column":12},"end":{"line":1875,"column":31}},"522":{"start":{"line":1876,"column":12},"end":{"line":1876,"column":30}},"523":{"start":{"line":1877,"column":12},"end":{"line":1877,"column":41}},"524":{"start":{"line":1878,"column":12},"end":{"line":1878,"column":41}},"525":{"start":{"line":1880,"column":8},"end":{"line":1880,"column":48}},"526":{"start":{"line":1895,"column":8},"end":{"line":1904,"column":24}},"527":{"start":{"line":1905,"column":8},"end":{"line":1909,"column":9}},"528":{"start":{"line":1907,"column":12},"end":{"line":1907,"column":40}},"529":{"start":{"line":1908,"column":12},"end":{"line":1908,"column":40}},"530":{"start":{"line":1910,"column":8},"end":{"line":1910,"column":57}},"531":{"start":{"line":1911,"column":8},"end":{"line":1911,"column":57}},"532":{"start":{"line":1912,"column":8},"end":{"line":1912,"column":49}},"533":{"start":{"line":1913,"column":8},"end":{"line":1921,"column":9}},"534":{"start":{"line":1915,"column":12},"end":{"line":1915,"column":38}},"535":{"start":{"line":1916,"column":12},"end":{"line":1916,"column":36}},"536":{"start":{"line":1917,"column":12},"end":{"line":1920,"column":13}},"537":{"start":{"line":1919,"column":16},"end":{"line":1919,"column":53}},"538":{"start":{"line":1922,"column":8},"end":{"line":1922,"column":51}},"539":{"start":{"line":1923,"column":8},"end":{"line":1923,"column":56}},"540":{"start":{"line":1924,"column":8},"end":{"line":1924,"column":27}},"541":{"start":{"line":1934,"column":8},"end":{"line":1934,"column":42}},"542":{"start":{"line":1935,"column":8},"end":{"line":1938,"column":9}},"543":{"start":{"line":1937,"column":12},"end":{"line":1937,"column":35}},"544":{"start":{"line":1948,"column":8},"end":{"line":1948,"column":42}},"545":{"start":{"line":1949,"column":8},"end":{"line":1952,"column":9}},"546":{"start":{"line":1951,"column":12},"end":{"line":1951,"column":34}},"547":{"start":{"line":1964,"column":8},"end":{"line":1971,"column":54}},"548":{"start":{"line":1972,"column":8},"end":{"line":1995,"column":9}},"549":{"start":{"line":1974,"column":12},"end":{"line":1974,"column":25}},"550":{"start":{"line":1975,"column":12},"end":{"line":1975,"column":43}},"551":{"start":{"line":1976,"column":12},"end":{"line":1993,"column":13}},"552":{"start":{"line":1978,"column":16},"end":{"line":1978,"column":38}},"553":{"start":{"line":1979,"column":16},"end":{"line":1979,"column":48}},"554":{"start":{"line":1980,"column":16},"end":{"line":1980,"column":61}},"555":{"start":{"line":1981,"column":16},"end":{"line":1981,"column":54}},"556":{"start":{"line":1982,"column":16},"end":{"line":1992,"column":17}},"557":{"start":{"line":1984,"column":20},"end":{"line":1991,"column":21}},"558":{"start":{"line":1986,"column":24},"end":{"line":1986,"column":55}},"559":{"start":{"line":1990,"column":24},"end":{"line":1990,"column":49}},"560":{"start":{"line":1994,"column":12},"end":{"line":1994,"column":23}},"561":{"start":{"line":2005,"column":8},"end":{"line":2005,"column":42}},"562":{"start":{"line":2006,"column":8},"end":{"line":2013,"column":9}},"563":{"start":{"line":2008,"column":12},"end":{"line":2008,"column":38}},"564":{"start":{"line":2012,"column":12},"end":{"line":2012,"column":28}},"565":{"start":{"line":2024,"column":8},"end":{"line":2034,"column":9}},"566":{"start":{"line":2026,"column":12},"end":{"line":2026,"column":50}},"567":{"start":{"line":2027,"column":12},"end":{"line":2031,"column":13}},"568":{"start":{"line":2029,"column":16},"end":{"line":2029,"column":48}},"569":{"start":{"line":2030,"column":16},"end":{"line":2030,"column":60}},"570":{"start":{"line":2032,"column":12},"end":{"line":2032,"column":33}},"571":{"start":{"line":2033,"column":12},"end":{"line":2033,"column":29}},"572":{"start":{"line":2038,"column":0},"end":{"line":2364,"column":2}},"573":{"start":{"line":2049,"column":3},"end":{"line":2049,"column":21}},"574":{"start":{"line":2086,"column":12},"end":{"line":2086,"column":31}},"575":{"start":{"line":2087,"column":12},"end":{"line":2087,"column":66}},"576":{"start":{"line":2088,"column":12},"end":{"line":2088,"column":34}},"577":{"start":{"line":2089,"column":12},"end":{"line":2089,"column":23}},"578":{"start":{"line":2094,"column":12},"end":{"line":2094,"column":35}},"579":{"start":{"line":2110,"column":3},"end":{"line":2110,"column":20}},"580":{"start":{"line":2123,"column":3},"end":{"line":2123,"column":19}},"581":{"start":{"line":2128,"column":3},"end":{"line":2128,"column":24}},"582":{"start":{"line":2129,"column":3},"end":{"line":2132,"column":4}},"583":{"start":{"line":2131,"column":4},"end":{"line":2131,"column":33}},"584":{"start":{"line":2133,"column":3},"end":{"line":2133,"column":14}},"585":{"start":{"line":2187,"column":3},"end":{"line":2188,"column":56}},"586":{"start":{"line":2189,"column":3},"end":{"line":2192,"column":13}},"587":{"start":{"line":2191,"column":16},"end":{"line":2191,"column":51}},"588":{"start":{"line":2193,"column":3},"end":{"line":2193,"column":14}},"589":{"start":{"line":2251,"column":3},"end":{"line":2252,"column":54}},"590":{"start":{"line":2253,"column":3},"end":{"line":2253,"column":44}},"591":{"start":{"line":2254,"column":3},"end":{"line":2260,"column":4}},"592":{"start":{"line":2256,"column":4},"end":{"line":2259,"column":5}},"593":{"start":{"line":2258,"column":5},"end":{"line":2258,"column":23}},"594":{"start":{"line":2261,"column":3},"end":{"line":2261,"column":28}},"595":{"start":{"line":2262,"column":3},"end":{"line":2262,"column":15}},"596":{"start":{"line":2299,"column":3},"end":{"line":2300,"column":19}},"597":{"start":{"line":2301,"column":12},"end":{"line":2308,"column":13}},"598":{"start":{"line":2303,"column":16},"end":{"line":2303,"column":46}},"599":{"start":{"line":2304,"column":16},"end":{"line":2307,"column":17}},"600":{"start":{"line":2306,"column":20},"end":{"line":2306,"column":36}},"601":{"start":{"line":2309,"column":3},"end":{"line":2309,"column":43}},"602":{"start":{"line":2310,"column":3},"end":{"line":2310,"column":29}},"603":{"start":{"line":2311,"column":3},"end":{"line":2311,"column":14}},"604":{"start":{"line":2342,"column":12},"end":{"line":2345,"column":13}},"605":{"start":{"line":2344,"column":16},"end":{"line":2344,"column":41}},"606":{"start":{"line":2346,"column":12},"end":{"line":2346,"column":23}},"607":{"start":{"line":2361,"column":3},"end":{"line":2361,"column":24}},"608":{"start":{"line":2365,"column":0},"end":{"line":2365,"column":28}},"609":{"start":{"line":2377,"column":0},"end":{"line":2380,"column":2}},"610":{"start":{"line":2379,"column":1},"end":{"line":2379,"column":58}},"611":{"start":{"line":2381,"column":0},"end":{"line":2381,"column":25}},"612":{"start":{"line":2382,"column":0},"end":{"line":2447,"column":3}},"613":{"start":{"line":2400,"column":8},"end":{"line":2400,"column":26}},"614":{"start":{"line":2401,"column":8},"end":{"line":2401,"column":32}},"615":{"start":{"line":2413,"column":2},"end":{"line":2417,"column":32}},"616":{"start":{"line":2418,"column":2},"end":{"line":2418,"column":40}},"617":{"start":{"line":2419,"column":2},"end":{"line":2419,"column":43}},"618":{"start":{"line":2420,"column":8},"end":{"line":2420,"column":52}},"619":{"start":{"line":2421,"column":8},"end":{"line":2421,"column":42}},"620":{"start":{"line":2422,"column":8},"end":{"line":2422,"column":40}},"621":{"start":{"line":2423,"column":2},"end":{"line":2423,"column":30}},"622":{"start":{"line":2424,"column":2},"end":{"line":2424,"column":16}},"623":{"start":{"line":2425,"column":2},"end":{"line":2425,"column":19}},"624":{"start":{"line":2426,"column":2},"end":{"line":2434,"column":10}},"625":{"start":{"line":2444,"column":8},"end":{"line":2444,"column":21}},"626":{"start":{"line":2445,"column":8},"end":{"line":2445,"column":20}},"627":{"start":{"line":2449,"column":0},"end":{"line":2505,"column":3}},"628":{"start":{"line":2459,"column":3},"end":{"line":2459,"column":82}},"629":{"start":{"line":2460,"column":3},"end":{"line":2460,"column":31}},"630":{"start":{"line":2465,"column":3},"end":{"line":2465,"column":21}},"631":{"start":{"line":2466,"column":3},"end":{"line":2466,"column":14}},"632":{"start":{"line":2479,"column":3},"end":{"line":2479,"column":82}},"633":{"start":{"line":2480,"column":12},"end":{"line":2480,"column":41}},"634":{"start":{"line":2485,"column":3},"end":{"line":2485,"column":22}},"635":{"start":{"line":2486,"column":3},"end":{"line":2486,"column":14}},"636":{"start":{"line":2502,"column":3},"end":{"line":2502,"column":21}},"637":{"start":{"line":2506,"column":0},"end":{"line":2506,"column":26}},"638":{"start":{"line":2518,"column":0},"end":{"line":2521,"column":2}},"639":{"start":{"line":2520,"column":1},"end":{"line":2520,"column":58}},"640":{"start":{"line":2522,"column":0},"end":{"line":2522,"column":25}},"641":{"start":{"line":2523,"column":0},"end":{"line":2547,"column":3}},"642":{"start":{"line":2541,"column":2},"end":{"line":2542,"column":26}},"643":{"start":{"line":2543,"column":2},"end":{"line":2543,"column":15}},"644":{"start":{"line":2544,"column":8},"end":{"line":2544,"column":34}},"645":{"start":{"line":2545,"column":2},"end":{"line":2545,"column":20}},"646":{"start":{"line":2548,"column":0},"end":{"line":2548,"column":39}},"647":{"start":{"line":2549,"column":0},"end":{"line":2549,"column":26}},"648":{"start":{"line":2561,"column":0},"end":{"line":2564,"column":2}},"649":{"start":{"line":2563,"column":1},"end":{"line":2563,"column":61}},"650":{"start":{"line":2566,"column":0},"end":{"line":2566,"column":31}},"651":{"start":{"line":2568,"column":0},"end":{"line":2592,"column":3}},"652":{"start":{"line":2586,"column":2},"end":{"line":2587,"column":26}},"653":{"start":{"line":2588,"column":2},"end":{"line":2588,"column":15}},"654":{"start":{"line":2589,"column":8},"end":{"line":2589,"column":37}},"655":{"start":{"line":2590,"column":2},"end":{"line":2590,"column":20}},"656":{"start":{"line":2593,"column":0},"end":{"line":2640,"column":3}},"657":{"start":{"line":2603,"column":3},"end":{"line":2603,"column":30}},"658":{"start":{"line":2608,"column":3},"end":{"line":2608,"column":31}},"659":{"start":{"line":2609,"column":3},"end":{"line":2612,"column":4}},"660":{"start":{"line":2611,"column":4},"end":{"line":2611,"column":15}},"661":{"start":{"line":2613,"column":3},"end":{"line":2613,"column":14}},"662":{"start":{"line":2627,"column":3},"end":{"line":2627,"column":31}},"663":{"start":{"line":2632,"column":3},"end":{"line":2632,"column":32}},"664":{"start":{"line":2633,"column":3},"end":{"line":2636,"column":4}},"665":{"start":{"line":2635,"column":4},"end":{"line":2635,"column":15}},"666":{"start":{"line":2637,"column":3},"end":{"line":2637,"column":14}},"667":{"start":{"line":2641,"column":0},"end":{"line":2641,"column":32}},"668":{"start":{"line":2653,"column":0},"end":{"line":2656,"column":2}},"669":{"start":{"line":2655,"column":1},"end":{"line":2655,"column":60}},"670":{"start":{"line":2658,"column":0},"end":{"line":2658,"column":29}},"671":{"start":{"line":2660,"column":0},"end":{"line":2686,"column":3}},"672":{"start":{"line":2678,"column":2},"end":{"line":2678,"column":34}},"673":{"start":{"line":2679,"column":2},"end":{"line":2684,"column":3}},"674":{"start":{"line":2681,"column":12},"end":{"line":2681,"column":25}},"675":{"start":{"line":2682,"column":12},"end":{"line":2682,"column":42}},"676":{"start":{"line":2683,"column":3},"end":{"line":2683,"column":21}},"677":{"start":{"line":2688,"column":0},"end":{"line":2736,"column":3}},"678":{"start":{"line":2698,"column":12},"end":{"line":2698,"column":38}},"679":{"start":{"line":2699,"column":12},"end":{"line":2699,"column":23}},"680":{"start":{"line":2704,"column":3},"end":{"line":2704,"column":33}},"681":{"start":{"line":2717,"column":12},"end":{"line":2717,"column":38}},"682":{"start":{"line":2718,"column":12},"end":{"line":2718,"column":23}},"683":{"start":{"line":2723,"column":3},"end":{"line":2723,"column":33}},"684":{"start":{"line":2737,"column":0},"end":{"line":2737,"column":30}},"685":{"start":{"line":2745,"column":0},"end":{"line":2748,"column":2}},"686":{"start":{"line":2747,"column":1},"end":{"line":2747,"column":62}},"687":{"start":{"line":2749,"column":0},"end":{"line":2749,"column":39}},"688":{"start":{"line":2750,"column":0},"end":{"line":2781,"column":4}},"689":{"start":{"line":2768,"column":8},"end":{"line":2772,"column":40}},"690":{"start":{"line":2773,"column":8},"end":{"line":2773,"column":21}},"691":{"start":{"line":2774,"column":8},"end":{"line":2774,"column":23}},"692":{"start":{"line":2775,"column":8},"end":{"line":2775,"column":29}},"693":{"start":{"line":2776,"column":8},"end":{"line":2776,"column":22}},"694":{"start":{"line":2777,"column":8},"end":{"line":2777,"column":30}},"695":{"start":{"line":2778,"column":8},"end":{"line":2778,"column":54}},"696":{"start":{"line":2779,"column":2},"end":{"line":2779,"column":13}},"697":{"start":{"line":2782,"column":0},"end":{"line":2819,"column":24}},"698":{"start":{"line":2820,"column":0},"end":{"line":2820,"column":34}},"699":{"start":{"line":2832,"column":0},"end":{"line":2835,"column":1}},"700":{"start":{"line":2834,"column":4},"end":{"line":2834,"column":64}},"701":{"start":{"line":2837,"column":0},"end":{"line":2837,"column":37}},"702":{"start":{"line":2839,"column":0},"end":{"line":3088,"column":2}},"703":{"start":{"line":2858,"column":3},"end":{"line":2858,"column":19}},"704":{"start":{"line":2863,"column":3},"end":{"line":2863,"column":25}},"705":{"start":{"line":2864,"column":3},"end":{"line":2867,"column":4}},"706":{"start":{"line":2866,"column":4},"end":{"line":2866,"column":33}},"707":{"start":{"line":2868,"column":3},"end":{"line":2868,"column":14}},"708":{"start":{"line":2884,"column":12},"end":{"line":2884,"column":32}},"709":{"start":{"line":2900,"column":12},"end":{"line":2900,"column":39}},"710":{"start":{"line":2916,"column":12},"end":{"line":2916,"column":30}},"711":{"start":{"line":2929,"column":12},"end":{"line":2932,"column":13}},"712":{"start":{"line":2931,"column":16},"end":{"line":2931,"column":52}},"713":{"start":{"line":2933,"column":12},"end":{"line":2933,"column":23}},"714":{"start":{"line":2946,"column":12},"end":{"line":2949,"column":13}},"715":{"start":{"line":2948,"column":16},"end":{"line":2948,"column":53}},"716":{"start":{"line":2950,"column":12},"end":{"line":2950,"column":23}},"717":{"start":{"line":3023,"column":12},"end":{"line":3023,"column":27}},"718":{"start":{"line":3028,"column":12},"end":{"line":3028,"column":26}},"719":{"start":{"line":3029,"column":12},"end":{"line":3032,"column":13}},"720":{"start":{"line":3031,"column":16},"end":{"line":3031,"column":51}},"721":{"start":{"line":3033,"column":12},"end":{"line":3033,"column":23}},"722":{"start":{"line":3046,"column":12},"end":{"line":3046,"column":27}},"723":{"start":{"line":3051,"column":12},"end":{"line":3051,"column":26}},"724":{"start":{"line":3052,"column":12},"end":{"line":3055,"column":13}},"725":{"start":{"line":3054,"column":16},"end":{"line":3054,"column":50}},"726":{"start":{"line":3056,"column":12},"end":{"line":3056,"column":23}},"727":{"start":{"line":3084,"column":12},"end":{"line":3084,"column":37}},"728":{"start":{"line":3085,"column":12},"end":{"line":3085,"column":23}},"729":{"start":{"line":3090,"column":0},"end":{"line":3686,"column":3}},"730":{"start":{"line":3102,"column":2},"end":{"line":3111,"column":32}},"731":{"start":{"line":3112,"column":2},"end":{"line":3112,"column":53}},"732":{"start":{"line":3113,"column":8},"end":{"line":3130,"column":9}},"733":{"start":{"line":3115,"column":12},"end":{"line":3129,"column":13}},"734":{"start":{"line":3117,"column":16},"end":{"line":3117,"column":35}},"735":{"start":{"line":3119,"column":17},"end":{"line":3129,"column":13}},"736":{"start":{"line":3121,"column":16},"end":{"line":3128,"column":17}},"737":{"start":{"line":3123,"column":20},"end":{"line":3127,"column":21}},"738":{"start":{"line":3125,"column":24},"end":{"line":3125,"column":43}},"739":{"start":{"line":3126,"column":24},"end":{"line":3126,"column":30}},"740":{"start":{"line":3131,"column":8},"end":{"line":3134,"column":9}},"741":{"start":{"line":3133,"column":12},"end":{"line":3133,"column":27}},"742":{"start":{"line":3163,"column":8},"end":{"line":3164,"column":15}},"743":{"start":{"line":3165,"column":8},"end":{"line":3168,"column":9}},"744":{"start":{"line":3167,"column":12},"end":{"line":3167,"column":35}},"745":{"start":{"line":3169,"column":8},"end":{"line":3169,"column":18}},"746":{"start":{"line":3180,"column":8},"end":{"line":3183,"column":40}},"747":{"start":{"line":3184,"column":8},"end":{"line":3184,"column":26}},"748":{"start":{"line":3185,"column":8},"end":{"line":3185,"column":31}},"749":{"start":{"line":3186,"column":2},"end":{"line":3191,"column":10}},"750":{"start":{"line":3192,"column":8},"end":{"line":3192,"column":51}},"751":{"start":{"line":3193,"column":8},"end":{"line":3193,"column":47}},"752":{"start":{"line":3194,"column":8},"end":{"line":3194,"column":49}},"753":{"start":{"line":3195,"column":8},"end":{"line":3195,"column":29}},"754":{"start":{"line":3196,"column":8},"end":{"line":3196,"column":30}},"755":{"start":{"line":3197,"column":8},"end":{"line":3200,"column":9}},"756":{"start":{"line":3199,"column":12},"end":{"line":3199,"column":32}},"757":{"start":{"line":3210,"column":8},"end":{"line":3213,"column":14}},"758":{"start":{"line":3214,"column":8},"end":{"line":3221,"column":9}},"759":{"start":{"line":3216,"column":12},"end":{"line":3216,"column":38}},"760":{"start":{"line":3218,"column":13},"end":{"line":3221,"column":9}},"761":{"start":{"line":3220,"column":12},"end":{"line":3220,"column":71}},"762":{"start":{"line":3222,"column":8},"end":{"line":3222,"column":91}},"763":{"start":{"line":3223,"column":8},"end":{"line":3223,"column":93}},"764":{"start":{"line":3224,"column":8},"end":{"line":3224,"column":37}},"765":{"start":{"line":3225,"column":8},"end":{"line":3225,"column":37}},"766":{"start":{"line":3226,"column":8},"end":{"line":3226,"column":41}},"767":{"start":{"line":3227,"column":8},"end":{"line":3227,"column":47}},"768":{"start":{"line":3228,"column":8},"end":{"line":3228,"column":46}},"769":{"start":{"line":3229,"column":8},"end":{"line":3229,"column":29}},"770":{"start":{"line":3230,"column":8},"end":{"line":3230,"column":30}},"771":{"start":{"line":3231,"column":8},"end":{"line":3231,"column":37}},"772":{"start":{"line":3232,"column":8},"end":{"line":3232,"column":20}},"773":{"start":{"line":3242,"column":8},"end":{"line":3242,"column":31}},"774":{"start":{"line":3243,"column":8},"end":{"line":3251,"column":9}},"775":{"start":{"line":3245,"column":12},"end":{"line":3245,"column":45}},"776":{"start":{"line":3246,"column":12},"end":{"line":3249,"column":13}},"777":{"start":{"line":3248,"column":16},"end":{"line":3248,"column":62}},"778":{"start":{"line":3250,"column":12},"end":{"line":3250,"column":30}},"779":{"start":{"line":3263,"column":8},"end":{"line":3263,"column":27}},"780":{"start":{"line":3264,"column":8},"end":{"line":3267,"column":9}},"781":{"start":{"line":3266,"column":12},"end":{"line":3266,"column":32}},"782":{"start":{"line":3268,"column":8},"end":{"line":3269,"column":40}},"783":{"start":{"line":3270,"column":8},"end":{"line":3270,"column":33}},"784":{"start":{"line":3271,"column":8},"end":{"line":3271,"column":21}},"785":{"start":{"line":3283,"column":8},"end":{"line":3284,"column":50}},"786":{"start":{"line":3285,"column":8},"end":{"line":3292,"column":9}},"787":{"start":{"line":3287,"column":12},"end":{"line":3287,"column":41}},"788":{"start":{"line":3291,"column":12},"end":{"line":3291,"column":49}},"789":{"start":{"line":3303,"column":8},"end":{"line":3309,"column":9}},"790":{"start":{"line":3305,"column":12},"end":{"line":3308,"column":13}},"791":{"start":{"line":3307,"column":16},"end":{"line":3307,"column":44}},"792":{"start":{"line":3310,"column":8},"end":{"line":3314,"column":9}},"793":{"start":{"line":3312,"column":12},"end":{"line":3312,"column":29}},"794":{"start":{"line":3313,"column":12},"end":{"line":3313,"column":49}},"795":{"start":{"line":3315,"column":8},"end":{"line":3318,"column":9}},"796":{"start":{"line":3317,"column":12},"end":{"line":3317,"column":27}},"797":{"start":{"line":3319,"column":8},"end":{"line":3319,"column":21}},"798":{"start":{"line":3329,"column":8},"end":{"line":3330,"column":14}},"799":{"start":{"line":3331,"column":8},"end":{"line":3337,"column":9}},"800":{"start":{"line":3333,"column":12},"end":{"line":3336,"column":13}},"801":{"start":{"line":3335,"column":16},"end":{"line":3335,"column":36}},"802":{"start":{"line":3338,"column":8},"end":{"line":3338,"column":26}},"803":{"start":{"line":3347,"column":8},"end":{"line":3347,"column":31}},"804":{"start":{"line":3359,"column":8},"end":{"line":3368,"column":9}},"805":{"start":{"line":3361,"column":12},"end":{"line":3361,"column":22}},"806":{"start":{"line":3362,"column":12},"end":{"line":3367,"column":13}},"807":{"start":{"line":3364,"column":16},"end":{"line":3364,"column":40}},"808":{"start":{"line":3365,"column":16},"end":{"line":3365,"column":44}},"809":{"start":{"line":3366,"column":16},"end":{"line":3366,"column":40}},"810":{"start":{"line":3380,"column":8},"end":{"line":3382,"column":52}},"811":{"start":{"line":3383,"column":8},"end":{"line":3392,"column":9}},"812":{"start":{"line":3385,"column":12},"end":{"line":3391,"column":13}},"813":{"start":{"line":3387,"column":16},"end":{"line":3390,"column":17}},"814":{"start":{"line":3389,"column":20},"end":{"line":3389,"column":50}},"815":{"start":{"line":3393,"column":8},"end":{"line":3396,"column":9}},"816":{"start":{"line":3395,"column":12},"end":{"line":3395,"column":53}},"817":{"start":{"line":3409,"column":8},"end":{"line":3409,"column":42}},"818":{"start":{"line":3410,"column":8},"end":{"line":3413,"column":9}},"819":{"start":{"line":3412,"column":12},"end":{"line":3412,"column":25}},"820":{"start":{"line":3414,"column":8},"end":{"line":3414,"column":19}},"821":{"start":{"line":3441,"column":8},"end":{"line":3441,"column":37}},"822":{"start":{"line":3442,"column":8},"end":{"line":3442,"column":21}},"823":{"start":{"line":3453,"column":8},"end":{"line":3453,"column":44}},"824":{"start":{"line":3454,"column":8},"end":{"line":3454,"column":36}},"825":{"start":{"line":3455,"column":8},"end":{"line":3455,"column":17}},"826":{"start":{"line":3456,"column":8},"end":{"line":3456,"column":39}},"827":{"start":{"line":3468,"column":8},"end":{"line":3471,"column":9}},"828":{"start":{"line":3470,"column":12},"end":{"line":3470,"column":59}},"829":{"start":{"line":3472,"column":8},"end":{"line":3472,"column":26}},"830":{"start":{"line":3483,"column":8},"end":{"line":3495,"column":36}},"831":{"start":{"line":3496,"column":8},"end":{"line":3538,"column":9}},"832":{"start":{"line":3498,"column":12},"end":{"line":3537,"column":13}},"833":{"start":{"line":3500,"column":16},"end":{"line":3500,"column":52}},"834":{"start":{"line":3501,"column":16},"end":{"line":3501,"column":53}},"835":{"start":{"line":3502,"column":16},"end":{"line":3502,"column":70}},"836":{"start":{"line":3503,"column":16},"end":{"line":3503,"column":71}},"837":{"start":{"line":3504,"column":16},"end":{"line":3504,"column":40}},"838":{"start":{"line":3505,"column":16},"end":{"line":3525,"column":17}},"839":{"start":{"line":3507,"column":20},"end":{"line":3507,"column":44}},"840":{"start":{"line":3508,"column":20},"end":{"line":3508,"column":45}},"841":{"start":{"line":3512,"column":20},"end":{"line":3524,"column":21}},"842":{"start":{"line":3514,"column":24},"end":{"line":3523,"column":25}},"843":{"start":{"line":3516,"column":28},"end":{"line":3516,"column":61}},"844":{"start":{"line":3517,"column":28},"end":{"line":3517,"column":145}},"845":{"start":{"line":3521,"column":28},"end":{"line":3521,"column":62}},"846":{"start":{"line":3522,"column":28},"end":{"line":3522,"column":148}},"847":{"start":{"line":3526,"column":16},"end":{"line":3526,"column":65}},"848":{"start":{"line":3527,"column":16},"end":{"line":3527,"column":62}},"849":{"start":{"line":3528,"column":16},"end":{"line":3528,"column":61}},"850":{"start":{"line":3529,"column":16},"end":{"line":3529,"column":57}},"851":{"start":{"line":3530,"column":16},"end":{"line":3530,"column":45}},"852":{"start":{"line":3531,"column":16},"end":{"line":3531,"column":70}},"853":{"start":{"line":3535,"column":16},"end":{"line":3535,"column":45}},"854":{"start":{"line":3536,"column":16},"end":{"line":3536,"column":47}},"855":{"start":{"line":3539,"column":8},"end":{"line":3543,"column":9}},"856":{"start":{"line":3541,"column":12},"end":{"line":3541,"column":47}},"857":{"start":{"line":3542,"column":12},"end":{"line":3542,"column":30}},"858":{"start":{"line":3558,"column":8},"end":{"line":3559,"column":18}},"859":{"start":{"line":3560,"column":8},"end":{"line":3571,"column":9}},"860":{"start":{"line":3563,"column":16},"end":{"line":3563,"column":36}},"861":{"start":{"line":3564,"column":12},"end":{"line":3564,"column":18}},"862":{"start":{"line":3566,"column":16},"end":{"line":3566,"column":30}},"863":{"start":{"line":3567,"column":12},"end":{"line":3567,"column":18}},"864":{"start":{"line":3569,"column":16},"end":{"line":3569,"column":26}},"865":{"start":{"line":3570,"column":12},"end":{"line":3570,"column":18}},"866":{"start":{"line":3572,"column":8},"end":{"line":3572,"column":21}},"867":{"start":{"line":3585,"column":8},"end":{"line":3586,"column":16}},"868":{"start":{"line":3587,"column":8},"end":{"line":3587,"column":46}},"869":{"start":{"line":3588,"column":8},"end":{"line":3597,"column":9}},"870":{"start":{"line":3590,"column":12},"end":{"line":3590,"column":41}},"871":{"start":{"line":3591,"column":12},"end":{"line":3591,"column":38}},"872":{"start":{"line":3592,"column":12},"end":{"line":3592,"column":75}},"873":{"start":{"line":3593,"column":12},"end":{"line":3593,"column":70}},"874":{"start":{"line":3594,"column":12},"end":{"line":3594,"column":80}},"875":{"start":{"line":3595,"column":12},"end":{"line":3595,"column":85}},"876":{"start":{"line":3596,"column":12},"end":{"line":3596,"column":38}},"877":{"start":{"line":3598,"column":8},"end":{"line":3601,"column":9}},"878":{"start":{"line":3600,"column":12},"end":{"line":3600,"column":27}},"879":{"start":{"line":3613,"column":8},"end":{"line":3617,"column":21}},"880":{"start":{"line":3618,"column":8},"end":{"line":3629,"column":9}},"881":{"start":{"line":3620,"column":12},"end":{"line":3628,"column":13}},"882":{"start":{"line":3622,"column":16},"end":{"line":3622,"column":33}},"883":{"start":{"line":3623,"column":16},"end":{"line":3623,"column":43}},"884":{"start":{"line":3624,"column":16},"end":{"line":3624,"column":101}},"885":{"start":{"line":3625,"column":16},"end":{"line":3625,"column":96}},"886":{"start":{"line":3626,"column":16},"end":{"line":3626,"column":106}},"887":{"start":{"line":3627,"column":16},"end":{"line":3627,"column":111}},"888":{"start":{"line":3630,"column":8},"end":{"line":3630,"column":60}},"889":{"start":{"line":3631,"column":8},"end":{"line":3631,"column":57}},"890":{"start":{"line":3632,"column":8},"end":{"line":3632,"column":63}},"891":{"start":{"line":3633,"column":8},"end":{"line":3633,"column":66}},"892":{"start":{"line":3634,"column":8},"end":{"line":3634,"column":34}},"893":{"start":{"line":3635,"column":8},"end":{"line":3635,"column":19}},"894":{"start":{"line":3647,"column":8},"end":{"line":3647,"column":43}},"895":{"start":{"line":3648,"column":8},"end":{"line":3651,"column":9}},"896":{"start":{"line":3650,"column":12},"end":{"line":3650,"column":38}},"897":{"start":{"line":3652,"column":8},"end":{"line":3655,"column":9}},"898":{"start":{"line":3654,"column":12},"end":{"line":3654,"column":43}},"899":{"start":{"line":3667,"column":8},"end":{"line":3668,"column":23}},"900":{"start":{"line":3669,"column":8},"end":{"line":3672,"column":9}},"901":{"start":{"line":3671,"column":12},"end":{"line":3671,"column":38}},"902":{"start":{"line":3673,"column":8},"end":{"line":3684,"column":9}},"903":{"start":{"line":3675,"column":12},"end":{"line":3675,"column":48}},"904":{"start":{"line":3676,"column":12},"end":{"line":3683,"column":13}},"905":{"start":{"line":3678,"column":16},"end":{"line":3678,"column":60}},"906":{"start":{"line":3682,"column":16},"end":{"line":3682,"column":47}},"907":{"start":{"line":3688,"column":0},"end":{"line":3688,"column":32}}},"branchMap":{"1":{"line":89,"type":"cond-expr","locations":[{"start":{"line":89,"column":40},"end":{"line":89,"column":45}},{"start":{"line":89,"column":48},"end":{"line":89,"column":49}}]},"2":{"line":90,"type":"if","locations":[{"start":{"line":90,"column":8},"end":{"line":90,"column":8}},{"start":{"line":90,"column":8},"end":{"line":90,"column":8}}]},"3":{"line":94,"type":"if","locations":[{"start":{"line":94,"column":8},"end":{"line":94,"column":8}},{"start":{"line":94,"column":8},"end":{"line":94,"column":8}}]},"4":{"line":124,"type":"if","locations":[{"start":{"line":124,"column":8},"end":{"line":124,"column":8}},{"start":{"line":124,"column":8},"end":{"line":124,"column":8}}]},"5":{"line":126,"type":"if","locations":[{"start":{"line":126,"column":12},"end":{"line":126,"column":12}},{"start":{"line":126,"column":12},"end":{"line":126,"column":12}}]},"6":{"line":131,"type":"if","locations":[{"start":{"line":131,"column":12},"end":{"line":131,"column":12}},{"start":{"line":131,"column":12},"end":{"line":131,"column":12}}]},"7":{"line":163,"type":"binary-expr","locations":[{"start":{"line":163,"column":16},"end":{"line":163,"column":35}},{"start":{"line":163,"column":39},"end":{"line":163,"column":40}}]},"8":{"line":164,"type":"binary-expr","locations":[{"start":{"line":164,"column":16},"end":{"line":164,"column":35}},{"start":{"line":164,"column":39},"end":{"line":164,"column":40}}]},"9":{"line":242,"type":"cond-expr","locations":[{"start":{"line":242,"column":54},"end":{"line":242,"column":72}},{"start":{"line":242,"column":75},"end":{"line":242,"column":76}}]},"10":{"line":242,"type":"binary-expr","locations":[{"start":{"line":242,"column":17},"end":{"line":242,"column":29}},{"start":{"line":242,"column":33},"end":{"line":242,"column":51}}]},"11":{"line":243,"type":"cond-expr","locations":[{"start":{"line":243,"column":35},"end":{"line":243,"column":61}},{"start":{"line":243,"column":64},"end":{"line":243,"column":65}}]},"12":{"line":244,"type":"cond-expr","locations":[{"start":{"line":244,"column":35},"end":{"line":244,"column":61}},{"start":{"line":244,"column":64},"end":{"line":244,"column":65}}]},"13":{"line":245,"type":"if","locations":[{"start":{"line":245,"column":8},"end":{"line":245,"column":8}},{"start":{"line":245,"column":8},"end":{"line":245,"column":8}}]},"14":{"line":250,"type":"if","locations":[{"start":{"line":250,"column":8},"end":{"line":250,"column":8}},{"start":{"line":250,"column":8},"end":{"line":250,"column":8}}]},"15":{"line":250,"type":"binary-expr","locations":[{"start":{"line":250,"column":12},"end":{"line":250,"column":38}},{"start":{"line":250,"column":42},"end":{"line":250,"column":68}}]},"16":{"line":316,"type":"cond-expr","locations":[{"start":{"line":316,"column":54},"end":{"line":316,"column":72}},{"start":{"line":316,"column":75},"end":{"line":316,"column":76}}]},"17":{"line":316,"type":"binary-expr","locations":[{"start":{"line":316,"column":17},"end":{"line":316,"column":29}},{"start":{"line":316,"column":33},"end":{"line":316,"column":51}}]},"18":{"line":317,"type":"cond-expr","locations":[{"start":{"line":317,"column":35},"end":{"line":317,"column":61}},{"start":{"line":317,"column":64},"end":{"line":317,"column":65}}]},"19":{"line":318,"type":"cond-expr","locations":[{"start":{"line":318,"column":35},"end":{"line":318,"column":61}},{"start":{"line":318,"column":64},"end":{"line":318,"column":65}}]},"20":{"line":387,"type":"cond-expr","locations":[{"start":{"line":387,"column":35},"end":{"line":387,"column":61}},{"start":{"line":387,"column":64},"end":{"line":387,"column":65}}]},"21":{"line":388,"type":"cond-expr","locations":[{"start":{"line":388,"column":35},"end":{"line":388,"column":61}},{"start":{"line":388,"column":64},"end":{"line":388,"column":65}}]},"22":{"line":465,"type":"cond-expr","locations":[{"start":{"line":465,"column":35},"end":{"line":465,"column":61}},{"start":{"line":465,"column":64},"end":{"line":465,"column":65}}]},"23":{"line":466,"type":"cond-expr","locations":[{"start":{"line":466,"column":35},"end":{"line":466,"column":61}},{"start":{"line":466,"column":64},"end":{"line":466,"column":65}}]},"24":{"line":501,"type":"cond-expr","locations":[{"start":{"line":501,"column":54},"end":{"line":501,"column":72}},{"start":{"line":501,"column":75},"end":{"line":501,"column":76}}]},"25":{"line":501,"type":"binary-expr","locations":[{"start":{"line":501,"column":17},"end":{"line":501,"column":29}},{"start":{"line":501,"column":33},"end":{"line":501,"column":51}}]},"26":{"line":557,"type":"cond-expr","locations":[{"start":{"line":557,"column":54},"end":{"line":557,"column":72}},{"start":{"line":557,"column":75},"end":{"line":557,"column":76}}]},"27":{"line":557,"type":"binary-expr","locations":[{"start":{"line":557,"column":17},"end":{"line":557,"column":29}},{"start":{"line":557,"column":33},"end":{"line":557,"column":51}}]},"28":{"line":639,"type":"cond-expr","locations":[{"start":{"line":639,"column":54},"end":{"line":639,"column":72}},{"start":{"line":639,"column":75},"end":{"line":639,"column":76}}]},"29":{"line":639,"type":"binary-expr","locations":[{"start":{"line":639,"column":17},"end":{"line":639,"column":29}},{"start":{"line":639,"column":33},"end":{"line":639,"column":51}}]},"30":{"line":652,"type":"binary-expr","locations":[{"start":{"line":652,"column":18},"end":{"line":652,"column":25}},{"start":{"line":652,"column":29},"end":{"line":652,"column":35}}]},"31":{"line":658,"type":"binary-expr","locations":[{"start":{"line":658,"column":18},"end":{"line":658,"column":25}},{"start":{"line":658,"column":29},"end":{"line":658,"column":35}}]},"32":{"line":661,"type":"if","locations":[{"start":{"line":661,"column":8},"end":{"line":661,"column":8}},{"start":{"line":661,"column":8},"end":{"line":661,"column":8}}]},"33":{"line":681,"type":"if","locations":[{"start":{"line":681,"column":8},"end":{"line":681,"column":8}},{"start":{"line":681,"column":8},"end":{"line":681,"column":8}}]},"34":{"line":738,"type":"if","locations":[{"start":{"line":738,"column":8},"end":{"line":738,"column":8}},{"start":{"line":738,"column":8},"end":{"line":738,"column":8}}]},"35":{"line":767,"type":"binary-expr","locations":[{"start":{"line":767,"column":16},"end":{"line":767,"column":29}},{"start":{"line":767,"column":33},"end":{"line":767,"column":34}}]},"36":{"line":774,"type":"if","locations":[{"start":{"line":774,"column":8},"end":{"line":774,"column":8}},{"start":{"line":774,"column":8},"end":{"line":774,"column":8}}]},"37":{"line":776,"type":"if","locations":[{"start":{"line":776,"column":12},"end":{"line":776,"column":12}},{"start":{"line":776,"column":12},"end":{"line":776,"column":12}}]},"38":{"line":791,"type":"if","locations":[{"start":{"line":791,"column":12},"end":{"line":791,"column":12}},{"start":{"line":791,"column":12},"end":{"line":791,"column":12}}]},"39":{"line":791,"type":"binary-expr","locations":[{"start":{"line":791,"column":15},"end":{"line":791,"column":21}},{"start":{"line":791,"column":25},"end":{"line":791,"column":32}}]},"40":{"line":811,"type":"if","locations":[{"start":{"line":811,"column":12},"end":{"line":811,"column":12}},{"start":{"line":811,"column":12},"end":{"line":811,"column":12}}]},"41":{"line":820,"type":"binary-expr","locations":[{"start":{"line":820,"column":21},"end":{"line":820,"column":32}},{"start":{"line":820,"column":36},"end":{"line":820,"column":47}}]},"42":{"line":863,"type":"if","locations":[{"start":{"line":863,"column":8},"end":{"line":863,"column":8}},{"start":{"line":863,"column":8},"end":{"line":863,"column":8}}]},"43":{"line":867,"type":"if","locations":[{"start":{"line":867,"column":12},"end":{"line":867,"column":12}},{"start":{"line":867,"column":12},"end":{"line":867,"column":12}}]},"44":{"line":873,"type":"cond-expr","locations":[{"start":{"line":873,"column":26},"end":{"line":873,"column":40}},{"start":{"line":873,"column":43},"end":{"line":873,"column":56}}]},"45":{"line":874,"type":"cond-expr","locations":[{"start":{"line":874,"column":26},"end":{"line":874,"column":40}},{"start":{"line":874,"column":43},"end":{"line":874,"column":56}}]},"46":{"line":882,"type":"if","locations":[{"start":{"line":882,"column":8},"end":{"line":882,"column":8}},{"start":{"line":882,"column":8},"end":{"line":882,"column":8}}]},"47":{"line":898,"type":"if","locations":[{"start":{"line":898,"column":12},"end":{"line":898,"column":12}},{"start":{"line":898,"column":12},"end":{"line":898,"column":12}}]},"48":{"line":907,"type":"binary-expr","locations":[{"start":{"line":907,"column":21},"end":{"line":907,"column":32}},{"start":{"line":907,"column":36},"end":{"line":907,"column":47}}]},"49":{"line":909,"type":"if","locations":[{"start":{"line":909,"column":12},"end":{"line":909,"column":12}},{"start":{"line":909,"column":12},"end":{"line":909,"column":12}}]},"50":{"line":1006,"type":"cond-expr","locations":[{"start":{"line":1006,"column":54},"end":{"line":1006,"column":72}},{"start":{"line":1006,"column":75},"end":{"line":1006,"column":76}}]},"51":{"line":1006,"type":"binary-expr","locations":[{"start":{"line":1006,"column":17},"end":{"line":1006,"column":29}},{"start":{"line":1006,"column":33},"end":{"line":1006,"column":51}}]},"52":{"line":1011,"type":"cond-expr","locations":[{"start":{"line":1011,"column":33},"end":{"line":1011,"column":38}},{"start":{"line":1011,"column":41},"end":{"line":1011,"column":62}}]},"53":{"line":1012,"type":"cond-expr","locations":[{"start":{"line":1012,"column":35},"end":{"line":1012,"column":40}},{"start":{"line":1012,"column":43},"end":{"line":1012,"column":65}}]},"54":{"line":1013,"type":"cond-expr","locations":[{"start":{"line":1013,"column":31},"end":{"line":1013,"column":36}},{"start":{"line":1013,"column":39},"end":{"line":1013,"column":59}}]},"55":{"line":1014,"type":"cond-expr","locations":[{"start":{"line":1014,"column":37},"end":{"line":1014,"column":42}},{"start":{"line":1014,"column":45},"end":{"line":1014,"column":68}}]},"56":{"line":1033,"type":"if","locations":[{"start":{"line":1033,"column":8},"end":{"line":1033,"column":8}},{"start":{"line":1033,"column":8},"end":{"line":1033,"column":8}}]},"57":{"line":1036,"type":"if","locations":[{"start":{"line":1036,"column":8},"end":{"line":1036,"column":8}},{"start":{"line":1036,"column":8},"end":{"line":1036,"column":8}}]},"58":{"line":1040,"type":"if","locations":[{"start":{"line":1040,"column":8},"end":{"line":1040,"column":8}},{"start":{"line":1040,"column":8},"end":{"line":1040,"column":8}}]},"59":{"line":1044,"type":"if","locations":[{"start":{"line":1044,"column":8},"end":{"line":1044,"column":8}},{"start":{"line":1044,"column":8},"end":{"line":1044,"column":8}}]},"60":{"line":1101,"type":"if","locations":[{"start":{"line":1101,"column":8},"end":{"line":1101,"column":8}},{"start":{"line":1101,"column":8},"end":{"line":1101,"column":8}}]},"61":{"line":1105,"type":"if","locations":[{"start":{"line":1105,"column":8},"end":{"line":1105,"column":8}},{"start":{"line":1105,"column":8},"end":{"line":1105,"column":8}}]},"62":{"line":1124,"type":"if","locations":[{"start":{"line":1124,"column":8},"end":{"line":1124,"column":8}},{"start":{"line":1124,"column":8},"end":{"line":1124,"column":8}}]},"63":{"line":1203,"type":"cond-expr","locations":[{"start":{"line":1203,"column":40},"end":{"line":1203,"column":52}},{"start":{"line":1203,"column":55},"end":{"line":1203,"column":61}}]},"64":{"line":1320,"type":"if","locations":[{"start":{"line":1320,"column":8},"end":{"line":1320,"column":8}},{"start":{"line":1320,"column":8},"end":{"line":1320,"column":8}}]},"65":{"line":1349,"type":"if","locations":[{"start":{"line":1349,"column":2},"end":{"line":1349,"column":2}},{"start":{"line":1349,"column":2},"end":{"line":1349,"column":2}}]},"66":{"line":1371,"type":"if","locations":[{"start":{"line":1371,"column":8},"end":{"line":1371,"column":8}},{"start":{"line":1371,"column":8},"end":{"line":1371,"column":8}}]},"67":{"line":1376,"type":"binary-expr","locations":[{"start":{"line":1376,"column":23},"end":{"line":1376,"column":38}},{"start":{"line":1376,"column":42},"end":{"line":1376,"column":49}}]},"68":{"line":1377,"type":"binary-expr","locations":[{"start":{"line":1377,"column":22},"end":{"line":1377,"column":36}},{"start":{"line":1377,"column":40},"end":{"line":1377,"column":46}}]},"69":{"line":1380,"type":"cond-expr","locations":[{"start":{"line":1380,"column":97},"end":{"line":1380,"column":106}},{"start":{"line":1380,"column":109},"end":{"line":1380,"column":113}}]},"70":{"line":1380,"type":"binary-expr","locations":[{"start":{"line":1380,"column":31},"end":{"line":1380,"column":40}},{"start":{"line":1380,"column":44},"end":{"line":1380,"column":69}},{"start":{"line":1380,"column":73},"end":{"line":1380,"column":93}}]},"71":{"line":1383,"type":"if","locations":[{"start":{"line":1383,"column":12},"end":{"line":1383,"column":12}},{"start":{"line":1383,"column":12},"end":{"line":1383,"column":12}}]},"72":{"line":1383,"type":"binary-expr","locations":[{"start":{"line":1383,"column":16},"end":{"line":1383,"column":33}},{"start":{"line":1383,"column":37},"end":{"line":1383,"column":47}}]},"73":{"line":1391,"type":"if","locations":[{"start":{"line":1391,"column":12},"end":{"line":1391,"column":12}},{"start":{"line":1391,"column":12},"end":{"line":1391,"column":12}}]},"74":{"line":1399,"type":"if","locations":[{"start":{"line":1399,"column":12},"end":{"line":1399,"column":12}},{"start":{"line":1399,"column":12},"end":{"line":1399,"column":12}}]},"75":{"line":1399,"type":"binary-expr","locations":[{"start":{"line":1399,"column":15},"end":{"line":1399,"column":35}},{"start":{"line":1399,"column":39},"end":{"line":1399,"column":59}}]},"76":{"line":1406,"type":"if","locations":[{"start":{"line":1406,"column":16},"end":{"line":1406,"column":16}},{"start":{"line":1406,"column":16},"end":{"line":1406,"column":16}}]},"77":{"line":1432,"type":"if","locations":[{"start":{"line":1432,"column":2},"end":{"line":1432,"column":2}},{"start":{"line":1432,"column":2},"end":{"line":1432,"column":2}}]},"78":{"line":1451,"type":"if","locations":[{"start":{"line":1451,"column":8},"end":{"line":1451,"column":8}},{"start":{"line":1451,"column":8},"end":{"line":1451,"column":8}}]},"79":{"line":1455,"type":"if","locations":[{"start":{"line":1455,"column":12},"end":{"line":1455,"column":12}},{"start":{"line":1455,"column":12},"end":{"line":1455,"column":12}}]},"80":{"line":1455,"type":"binary-expr","locations":[{"start":{"line":1455,"column":15},"end":{"line":1455,"column":32}},{"start":{"line":1455,"column":36},"end":{"line":1455,"column":53}}]},"81":{"line":1459,"type":"if","locations":[{"start":{"line":1459,"column":17},"end":{"line":1459,"column":17}},{"start":{"line":1459,"column":17},"end":{"line":1459,"column":17}}]},"82":{"line":1462,"type":"if","locations":[{"start":{"line":1462,"column":16},"end":{"line":1462,"column":16}},{"start":{"line":1462,"column":16},"end":{"line":1462,"column":16}}]},"83":{"line":1606,"type":"if","locations":[{"start":{"line":1606,"column":8},"end":{"line":1606,"column":8}},{"start":{"line":1606,"column":8},"end":{"line":1606,"column":8}}]},"84":{"line":1628,"type":"if","locations":[{"start":{"line":1628,"column":8},"end":{"line":1628,"column":8}},{"start":{"line":1628,"column":8},"end":{"line":1628,"column":8}}]},"85":{"line":1628,"type":"binary-expr","locations":[{"start":{"line":1628,"column":11},"end":{"line":1628,"column":27}},{"start":{"line":1628,"column":31},"end":{"line":1628,"column":58}}]},"86":{"line":1633,"type":"if","locations":[{"start":{"line":1633,"column":16},"end":{"line":1633,"column":16}},{"start":{"line":1633,"column":16},"end":{"line":1633,"column":16}}]},"87":{"line":1644,"type":"if","locations":[{"start":{"line":1644,"column":8},"end":{"line":1644,"column":8}},{"start":{"line":1644,"column":8},"end":{"line":1644,"column":8}}]},"88":{"line":1686,"type":"if","locations":[{"start":{"line":1686,"column":2},"end":{"line":1686,"column":2}},{"start":{"line":1686,"column":2},"end":{"line":1686,"column":2}}]},"89":{"line":1703,"type":"if","locations":[{"start":{"line":1703,"column":8},"end":{"line":1703,"column":8}},{"start":{"line":1703,"column":8},"end":{"line":1703,"column":8}}]},"90":{"line":1706,"type":"if","locations":[{"start":{"line":1706,"column":3},"end":{"line":1706,"column":3}},{"start":{"line":1706,"column":3},"end":{"line":1706,"column":3}}]},"91":{"line":1706,"type":"binary-expr","locations":[{"start":{"line":1706,"column":6},"end":{"line":1706,"column":10}},{"start":{"line":1706,"column":14},"end":{"line":1706,"column":21}}]},"92":{"line":1714,"type":"cond-expr","locations":[{"start":{"line":1714,"column":92},"end":{"line":1714,"column":103}},{"start":{"line":1714,"column":106},"end":{"line":1714,"column":107}}]},"93":{"line":1714,"type":"binary-expr","locations":[{"start":{"line":1714,"column":27},"end":{"line":1714,"column":57}},{"start":{"line":1714,"column":61},"end":{"line":1714,"column":88}}]},"94":{"line":1717,"type":"if","locations":[{"start":{"line":1717,"column":5},"end":{"line":1717,"column":5}},{"start":{"line":1717,"column":5},"end":{"line":1717,"column":5}}]},"95":{"line":1733,"type":"if","locations":[{"start":{"line":1733,"column":4},"end":{"line":1733,"column":4}},{"start":{"line":1733,"column":4},"end":{"line":1733,"column":4}}]},"96":{"line":1733,"type":"binary-expr","locations":[{"start":{"line":1733,"column":7},"end":{"line":1733,"column":11}},{"start":{"line":1733,"column":15},"end":{"line":1733,"column":30}}]},"97":{"line":1736,"type":"if","locations":[{"start":{"line":1736,"column":5},"end":{"line":1736,"column":5}},{"start":{"line":1736,"column":5},"end":{"line":1736,"column":5}}]},"98":{"line":1738,"type":"if","locations":[{"start":{"line":1738,"column":24},"end":{"line":1738,"column":24}},{"start":{"line":1738,"column":24},"end":{"line":1738,"column":24}}]},"99":{"line":1743,"type":"if","locations":[{"start":{"line":1743,"column":11},"end":{"line":1743,"column":11}},{"start":{"line":1743,"column":11},"end":{"line":1743,"column":11}}]},"100":{"line":1743,"type":"binary-expr","locations":[{"start":{"line":1743,"column":14},"end":{"line":1743,"column":20}},{"start":{"line":1743,"column":24},"end":{"line":1743,"column":43}},{"start":{"line":1743,"column":47},"end":{"line":1743,"column":62}}]},"101":{"line":1773,"type":"if","locations":[{"start":{"line":1773,"column":8},"end":{"line":1773,"column":8}},{"start":{"line":1773,"column":8},"end":{"line":1773,"column":8}}]},"102":{"line":1775,"type":"if","locations":[{"start":{"line":1775,"column":12},"end":{"line":1775,"column":12}},{"start":{"line":1775,"column":12},"end":{"line":1775,"column":12}}]},"103":{"line":1779,"type":"if","locations":[{"start":{"line":1779,"column":17},"end":{"line":1779,"column":17}},{"start":{"line":1779,"column":17},"end":{"line":1779,"column":17}}]},"104":{"line":1791,"type":"if","locations":[{"start":{"line":1791,"column":8},"end":{"line":1791,"column":8}},{"start":{"line":1791,"column":8},"end":{"line":1791,"column":8}}]},"105":{"line":1792,"type":"if","locations":[{"start":{"line":1792,"column":12},"end":{"line":1792,"column":12}},{"start":{"line":1792,"column":12},"end":{"line":1792,"column":12}}]},"106":{"line":1798,"type":"if","locations":[{"start":{"line":1798,"column":12},"end":{"line":1798,"column":12}},{"start":{"line":1798,"column":12},"end":{"line":1798,"column":12}}]},"107":{"line":1845,"type":"if","locations":[{"start":{"line":1845,"column":2},"end":{"line":1845,"column":2}},{"start":{"line":1845,"column":2},"end":{"line":1845,"column":2}}]},"108":{"line":1849,"type":"if","locations":[{"start":{"line":1849,"column":7},"end":{"line":1849,"column":7}},{"start":{"line":1849,"column":7},"end":{"line":1849,"column":7}}]},"109":{"line":1873,"type":"if","locations":[{"start":{"line":1873,"column":8},"end":{"line":1873,"column":8}},{"start":{"line":1873,"column":8},"end":{"line":1873,"column":8}}]},"110":{"line":1905,"type":"if","locations":[{"start":{"line":1905,"column":8},"end":{"line":1905,"column":8}},{"start":{"line":1905,"column":8},"end":{"line":1905,"column":8}}]},"111":{"line":1910,"type":"cond-expr","locations":[{"start":{"line":1910,"column":42},"end":{"line":1910,"column":52}},{"start":{"line":1910,"column":55},"end":{"line":1910,"column":56}}]},"112":{"line":1911,"type":"cond-expr","locations":[{"start":{"line":1911,"column":42},"end":{"line":1911,"column":52}},{"start":{"line":1911,"column":55},"end":{"line":1911,"column":56}}]},"113":{"line":1917,"type":"if","locations":[{"start":{"line":1917,"column":12},"end":{"line":1917,"column":12}},{"start":{"line":1917,"column":12},"end":{"line":1917,"column":12}}]},"114":{"line":1935,"type":"if","locations":[{"start":{"line":1935,"column":8},"end":{"line":1935,"column":8}},{"start":{"line":1935,"column":8},"end":{"line":1935,"column":8}}]},"115":{"line":1949,"type":"if","locations":[{"start":{"line":1949,"column":8},"end":{"line":1949,"column":8}},{"start":{"line":1949,"column":8},"end":{"line":1949,"column":8}}]},"116":{"line":1972,"type":"if","locations":[{"start":{"line":1972,"column":8},"end":{"line":1972,"column":8}},{"start":{"line":1972,"column":8},"end":{"line":1972,"column":8}}]},"117":{"line":1975,"type":"binary-expr","locations":[{"start":{"line":1975,"column":18},"end":{"line":1975,"column":37}},{"start":{"line":1975,"column":41},"end":{"line":1975,"column":42}}]},"118":{"line":1982,"type":"if","locations":[{"start":{"line":1982,"column":16},"end":{"line":1982,"column":16}},{"start":{"line":1982,"column":16},"end":{"line":1982,"column":16}}]},"119":{"line":1984,"type":"if","locations":[{"start":{"line":1984,"column":20},"end":{"line":1984,"column":20}},{"start":{"line":1984,"column":20},"end":{"line":1984,"column":20}}]},"120":{"line":2006,"type":"if","locations":[{"start":{"line":2006,"column":8},"end":{"line":2006,"column":8}},{"start":{"line":2006,"column":8},"end":{"line":2006,"column":8}}]},"121":{"line":2024,"type":"if","locations":[{"start":{"line":2024,"column":8},"end":{"line":2024,"column":8}},{"start":{"line":2024,"column":8},"end":{"line":2024,"column":8}}]},"122":{"line":2027,"type":"if","locations":[{"start":{"line":2027,"column":12},"end":{"line":2027,"column":12}},{"start":{"line":2027,"column":12},"end":{"line":2027,"column":12}}]},"123":{"line":2129,"type":"if","locations":[{"start":{"line":2129,"column":3},"end":{"line":2129,"column":3}},{"start":{"line":2129,"column":3},"end":{"line":2129,"column":3}}]},"124":{"line":2188,"type":"cond-expr","locations":[{"start":{"line":2188,"column":35},"end":{"line":2188,"column":44}},{"start":{"line":2188,"column":47},"end":{"line":2188,"column":55}}]},"125":{"line":2189,"type":"if","locations":[{"start":{"line":2189,"column":3},"end":{"line":2189,"column":3}},{"start":{"line":2189,"column":3},"end":{"line":2189,"column":3}}]},"126":{"line":2252,"type":"binary-expr","locations":[{"start":{"line":2252,"column":11},"end":{"line":2252,"column":27}},{"start":{"line":2252,"column":31},"end":{"line":2252,"column":53}}]},"127":{"line":2253,"type":"cond-expr","locations":[{"start":{"line":2253,"column":18},"end":{"line":2253,"column":36}},{"start":{"line":2253,"column":39},"end":{"line":2253,"column":43}}]},"128":{"line":2254,"type":"if","locations":[{"start":{"line":2254,"column":3},"end":{"line":2254,"column":3}},{"start":{"line":2254,"column":3},"end":{"line":2254,"column":3}}]},"129":{"line":2254,"type":"binary-expr","locations":[{"start":{"line":2254,"column":6},"end":{"line":2254,"column":10}},{"start":{"line":2254,"column":14},"end":{"line":2254,"column":24}}]},"130":{"line":2256,"type":"if","locations":[{"start":{"line":2256,"column":4},"end":{"line":2256,"column":4}},{"start":{"line":2256,"column":4},"end":{"line":2256,"column":4}}]},"131":{"line":2256,"type":"binary-expr","locations":[{"start":{"line":2256,"column":7},"end":{"line":2256,"column":31}},{"start":{"line":2256,"column":35},"end":{"line":2256,"column":56}}]},"132":{"line":2299,"type":"binary-expr","locations":[{"start":{"line":2299,"column":14},"end":{"line":2299,"column":32}},{"start":{"line":2299,"column":36},"end":{"line":2299,"column":60}}]},"133":{"line":2301,"type":"if","locations":[{"start":{"line":2301,"column":12},"end":{"line":2301,"column":12}},{"start":{"line":2301,"column":12},"end":{"line":2301,"column":12}}]},"134":{"line":2301,"type":"binary-expr","locations":[{"start":{"line":2301,"column":15},"end":{"line":2301,"column":18}},{"start":{"line":2301,"column":22},"end":{"line":2301,"column":50}}]},"135":{"line":2304,"type":"if","locations":[{"start":{"line":2304,"column":16},"end":{"line":2304,"column":16}},{"start":{"line":2304,"column":16},"end":{"line":2304,"column":16}}]},"136":{"line":2309,"type":"cond-expr","locations":[{"start":{"line":2309,"column":17},"end":{"line":2309,"column":35}},{"start":{"line":2309,"column":38},"end":{"line":2309,"column":42}}]},"137":{"line":2342,"type":"if","locations":[{"start":{"line":2342,"column":12},"end":{"line":2342,"column":12}},{"start":{"line":2342,"column":12},"end":{"line":2342,"column":12}}]},"138":{"line":2459,"type":"cond-expr","locations":[{"start":{"line":2459,"column":54},"end":{"line":2459,"column":76}},{"start":{"line":2459,"column":80},"end":{"line":2459,"column":81}}]},"139":{"line":2459,"type":"binary-expr","locations":[{"start":{"line":2459,"column":16},"end":{"line":2459,"column":28}},{"start":{"line":2459,"column":32},"end":{"line":2459,"column":50}}]},"140":{"line":2479,"type":"cond-expr","locations":[{"start":{"line":2479,"column":54},"end":{"line":2479,"column":76}},{"start":{"line":2479,"column":80},"end":{"line":2479,"column":81}}]},"141":{"line":2479,"type":"binary-expr","locations":[{"start":{"line":2479,"column":16},"end":{"line":2479,"column":28}},{"start":{"line":2479,"column":32},"end":{"line":2479,"column":50}}]},"142":{"line":2609,"type":"if","locations":[{"start":{"line":2609,"column":3},"end":{"line":2609,"column":3}},{"start":{"line":2609,"column":3},"end":{"line":2609,"column":3}}]},"143":{"line":2633,"type":"if","locations":[{"start":{"line":2633,"column":3},"end":{"line":2633,"column":3}},{"start":{"line":2633,"column":3},"end":{"line":2633,"column":3}}]},"144":{"line":2679,"type":"if","locations":[{"start":{"line":2679,"column":2},"end":{"line":2679,"column":2}},{"start":{"line":2679,"column":2},"end":{"line":2679,"column":2}}]},"145":{"line":2864,"type":"if","locations":[{"start":{"line":2864,"column":3},"end":{"line":2864,"column":3}},{"start":{"line":2864,"column":3},"end":{"line":2864,"column":3}}]},"146":{"line":2929,"type":"if","locations":[{"start":{"line":2929,"column":12},"end":{"line":2929,"column":12}},{"start":{"line":2929,"column":12},"end":{"line":2929,"column":12}}]},"147":{"line":2946,"type":"if","locations":[{"start":{"line":2946,"column":12},"end":{"line":2946,"column":12}},{"start":{"line":2946,"column":12},"end":{"line":2946,"column":12}}]},"148":{"line":3029,"type":"if","locations":[{"start":{"line":3029,"column":12},"end":{"line":3029,"column":12}},{"start":{"line":3029,"column":12},"end":{"line":3029,"column":12}}]},"149":{"line":3052,"type":"if","locations":[{"start":{"line":3052,"column":12},"end":{"line":3052,"column":12}},{"start":{"line":3052,"column":12},"end":{"line":3052,"column":12}}]},"150":{"line":3113,"type":"if","locations":[{"start":{"line":3113,"column":8},"end":{"line":3113,"column":8}},{"start":{"line":3113,"column":8},"end":{"line":3113,"column":8}}]},"151":{"line":3113,"type":"binary-expr","locations":[{"start":{"line":3113,"column":11},"end":{"line":3113,"column":40}},{"start":{"line":3113,"column":44},"end":{"line":3113,"column":75}}]},"152":{"line":3115,"type":"if","locations":[{"start":{"line":3115,"column":12},"end":{"line":3115,"column":12}},{"start":{"line":3115,"column":12},"end":{"line":3115,"column":12}}]},"153":{"line":3115,"type":"binary-expr","locations":[{"start":{"line":3115,"column":15},"end":{"line":3115,"column":30}},{"start":{"line":3115,"column":34},"end":{"line":3115,"column":51}}]},"154":{"line":3119,"type":"if","locations":[{"start":{"line":3119,"column":17},"end":{"line":3119,"column":17}},{"start":{"line":3119,"column":17},"end":{"line":3119,"column":17}}]},"155":{"line":3123,"type":"if","locations":[{"start":{"line":3123,"column":20},"end":{"line":3123,"column":20}},{"start":{"line":3123,"column":20},"end":{"line":3123,"column":20}}]},"156":{"line":3123,"type":"binary-expr","locations":[{"start":{"line":3123,"column":23},"end":{"line":3123,"column":54}},{"start":{"line":3123,"column":58},"end":{"line":3123,"column":67}}]},"157":{"line":3131,"type":"if","locations":[{"start":{"line":3131,"column":8},"end":{"line":3131,"column":8}},{"start":{"line":3131,"column":8},"end":{"line":3131,"column":8}}]},"158":{"line":3165,"type":"if","locations":[{"start":{"line":3165,"column":8},"end":{"line":3165,"column":8}},{"start":{"line":3165,"column":8},"end":{"line":3165,"column":8}}]},"159":{"line":3181,"type":"cond-expr","locations":[{"start":{"line":3181,"column":47},"end":{"line":3181,"column":56}},{"start":{"line":3181,"column":59},"end":{"line":3181,"column":67}}]},"160":{"line":3182,"type":"binary-expr","locations":[{"start":{"line":3182,"column":16},"end":{"line":3182,"column":33}},{"start":{"line":3182,"column":37},"end":{"line":3182,"column":38}}]},"161":{"line":3183,"type":"binary-expr","locations":[{"start":{"line":3183,"column":16},"end":{"line":3183,"column":34}},{"start":{"line":3183,"column":38},"end":{"line":3183,"column":39}}]},"162":{"line":3197,"type":"if","locations":[{"start":{"line":3197,"column":8},"end":{"line":3197,"column":8}},{"start":{"line":3197,"column":8},"end":{"line":3197,"column":8}}]},"163":{"line":3210,"type":"binary-expr","locations":[{"start":{"line":3210,"column":25},"end":{"line":3210,"column":31}},{"start":{"line":3210,"column":35},"end":{"line":3210,"column":48}}]},"164":{"line":3214,"type":"if","locations":[{"start":{"line":3214,"column":8},"end":{"line":3214,"column":8}},{"start":{"line":3214,"column":8},"end":{"line":3214,"column":8}}]},"165":{"line":3218,"type":"if","locations":[{"start":{"line":3218,"column":13},"end":{"line":3218,"column":13}},{"start":{"line":3218,"column":13},"end":{"line":3218,"column":13}}]},"166":{"line":3222,"type":"binary-expr","locations":[{"start":{"line":3222,"column":12},"end":{"line":3222,"column":29}},{"start":{"line":3222,"column":33},"end":{"line":3222,"column":90}}]},"167":{"line":3223,"type":"binary-expr","locations":[{"start":{"line":3223,"column":12},"end":{"line":3223,"column":30}},{"start":{"line":3223,"column":34},"end":{"line":3223,"column":92}}]},"168":{"line":3243,"type":"if","locations":[{"start":{"line":3243,"column":8},"end":{"line":3243,"column":8}},{"start":{"line":3243,"column":8},"end":{"line":3243,"column":8}}]},"169":{"line":3246,"type":"if","locations":[{"start":{"line":3246,"column":12},"end":{"line":3246,"column":12}},{"start":{"line":3246,"column":12},"end":{"line":3246,"column":12}}]},"170":{"line":3264,"type":"if","locations":[{"start":{"line":3264,"column":8},"end":{"line":3264,"column":8}},{"start":{"line":3264,"column":8},"end":{"line":3264,"column":8}}]},"171":{"line":3284,"type":"binary-expr","locations":[{"start":{"line":3284,"column":25},"end":{"line":3284,"column":35}},{"start":{"line":3284,"column":39},"end":{"line":3284,"column":49}}]},"172":{"line":3285,"type":"if","locations":[{"start":{"line":3285,"column":8},"end":{"line":3285,"column":8}},{"start":{"line":3285,"column":8},"end":{"line":3285,"column":8}}]},"173":{"line":3303,"type":"if","locations":[{"start":{"line":3303,"column":8},"end":{"line":3303,"column":8}},{"start":{"line":3303,"column":8},"end":{"line":3303,"column":8}}]},"174":{"line":3305,"type":"if","locations":[{"start":{"line":3305,"column":12},"end":{"line":3305,"column":12}},{"start":{"line":3305,"column":12},"end":{"line":3305,"column":12}}]},"175":{"line":3310,"type":"if","locations":[{"start":{"line":3310,"column":8},"end":{"line":3310,"column":8}},{"start":{"line":3310,"column":8},"end":{"line":3310,"column":8}}]},"176":{"line":3310,"type":"binary-expr","locations":[{"start":{"line":3310,"column":11},"end":{"line":3310,"column":16}},{"start":{"line":3310,"column":20},"end":{"line":3310,"column":48}}]},"177":{"line":3315,"type":"if","locations":[{"start":{"line":3315,"column":8},"end":{"line":3315,"column":8}},{"start":{"line":3315,"column":8},"end":{"line":3315,"column":8}}]},"178":{"line":3333,"type":"if","locations":[{"start":{"line":3333,"column":12},"end":{"line":3333,"column":12}},{"start":{"line":3333,"column":12},"end":{"line":3333,"column":12}}]},"179":{"line":3359,"type":"if","locations":[{"start":{"line":3359,"column":8},"end":{"line":3359,"column":8}},{"start":{"line":3359,"column":8},"end":{"line":3359,"column":8}}]},"180":{"line":3359,"type":"binary-expr","locations":[{"start":{"line":3359,"column":11},"end":{"line":3359,"column":15}},{"start":{"line":3359,"column":19},"end":{"line":3359,"column":39}}]},"181":{"line":3382,"type":"cond-expr","locations":[{"start":{"line":3382,"column":31},"end":{"line":3382,"column":40}},{"start":{"line":3382,"column":43},"end":{"line":3382,"column":51}}]},"182":{"line":3383,"type":"if","locations":[{"start":{"line":3383,"column":8},"end":{"line":3383,"column":8}},{"start":{"line":3383,"column":8},"end":{"line":3383,"column":8}}]},"183":{"line":3387,"type":"if","locations":[{"start":{"line":3387,"column":16},"end":{"line":3387,"column":16}},{"start":{"line":3387,"column":16},"end":{"line":3387,"column":16}}]},"184":{"line":3393,"type":"if","locations":[{"start":{"line":3393,"column":8},"end":{"line":3393,"column":8}},{"start":{"line":3393,"column":8},"end":{"line":3393,"column":8}}]},"185":{"line":3410,"type":"if","locations":[{"start":{"line":3410,"column":8},"end":{"line":3410,"column":8}},{"start":{"line":3410,"column":8},"end":{"line":3410,"column":8}}]},"186":{"line":3468,"type":"if","locations":[{"start":{"line":3468,"column":8},"end":{"line":3468,"column":8}},{"start":{"line":3468,"column":8},"end":{"line":3468,"column":8}}]},"187":{"line":3485,"type":"cond-expr","locations":[{"start":{"line":3485,"column":43},"end":{"line":3485,"column":74}},{"start":{"line":3485,"column":77},"end":{"line":3485,"column":96}}]},"188":{"line":3496,"type":"if","locations":[{"start":{"line":3496,"column":8},"end":{"line":3496,"column":8}},{"start":{"line":3496,"column":8},"end":{"line":3496,"column":8}}]},"189":{"line":3498,"type":"if","locations":[{"start":{"line":3498,"column":12},"end":{"line":3498,"column":12}},{"start":{"line":3498,"column":12},"end":{"line":3498,"column":12}}]},"190":{"line":3505,"type":"if","locations":[{"start":{"line":3505,"column":16},"end":{"line":3505,"column":16}},{"start":{"line":3505,"column":16},"end":{"line":3505,"column":16}}]},"191":{"line":3512,"type":"if","locations":[{"start":{"line":3512,"column":20},"end":{"line":3512,"column":20}},{"start":{"line":3512,"column":20},"end":{"line":3512,"column":20}}]},"192":{"line":3514,"type":"if","locations":[{"start":{"line":3514,"column":24},"end":{"line":3514,"column":24}},{"start":{"line":3514,"column":24},"end":{"line":3514,"column":24}}]},"193":{"line":3539,"type":"if","locations":[{"start":{"line":3539,"column":8},"end":{"line":3539,"column":8}},{"start":{"line":3539,"column":8},"end":{"line":3539,"column":8}}]},"194":{"line":3560,"type":"switch","locations":[{"start":{"line":3562,"column":12},"end":{"line":3564,"column":18}},{"start":{"line":3565,"column":12},"end":{"line":3567,"column":18}},{"start":{"line":3568,"column":12},"end":{"line":3570,"column":18}}]},"195":{"line":3588,"type":"if","locations":[{"start":{"line":3588,"column":8},"end":{"line":3588,"column":8}},{"start":{"line":3588,"column":8},"end":{"line":3588,"column":8}}]},"196":{"line":3592,"type":"cond-expr","locations":[{"start":{"line":3592,"column":50},"end":{"line":3592,"column":58}},{"start":{"line":3592,"column":61},"end":{"line":3592,"column":74}}]},"197":{"line":3593,"type":"cond-expr","locations":[{"start":{"line":3593,"column":47},"end":{"line":3593,"column":54}},{"start":{"line":3593,"column":57},"end":{"line":3593,"column":69}}]},"198":{"line":3594,"type":"cond-expr","locations":[{"start":{"line":3594,"column":53},"end":{"line":3594,"column":62}},{"start":{"line":3594,"column":65},"end":{"line":3594,"column":79}}]},"199":{"line":3595,"type":"cond-expr","locations":[{"start":{"line":3595,"column":56},"end":{"line":3595,"column":66}},{"start":{"line":3595,"column":69},"end":{"line":3595,"column":84}}]},"200":{"line":3598,"type":"if","locations":[{"start":{"line":3598,"column":8},"end":{"line":3598,"column":8}},{"start":{"line":3598,"column":8},"end":{"line":3598,"column":8}}]},"201":{"line":3620,"type":"if","locations":[{"start":{"line":3620,"column":12},"end":{"line":3620,"column":12}},{"start":{"line":3620,"column":12},"end":{"line":3620,"column":12}}]},"202":{"line":3624,"type":"cond-expr","locations":[{"start":{"line":3624,"column":55},"end":{"line":3624,"column":86}},{"start":{"line":3624,"column":89},"end":{"line":3624,"column":100}}]},"203":{"line":3625,"type":"cond-expr","locations":[{"start":{"line":3625,"column":53},"end":{"line":3625,"column":82}},{"start":{"line":3625,"column":85},"end":{"line":3625,"column":95}}]},"204":{"line":3626,"type":"cond-expr","locations":[{"start":{"line":3626,"column":57},"end":{"line":3626,"column":90}},{"start":{"line":3626,"column":93},"end":{"line":3626,"column":105}}]},"205":{"line":3627,"type":"cond-expr","locations":[{"start":{"line":3627,"column":59},"end":{"line":3627,"column":94}},{"start":{"line":3627,"column":97},"end":{"line":3627,"column":110}}]},"206":{"line":3630,"type":"cond-expr","locations":[{"start":{"line":3630,"column":47},"end":{"line":3630,"column":55}},{"start":{"line":3630,"column":58},"end":{"line":3630,"column":59}}]},"207":{"line":3631,"type":"cond-expr","locations":[{"start":{"line":3631,"column":45},"end":{"line":3631,"column":52}},{"start":{"line":3631,"column":55},"end":{"line":3631,"column":56}}]},"208":{"line":3632,"type":"cond-expr","locations":[{"start":{"line":3632,"column":49},"end":{"line":3632,"column":58}},{"start":{"line":3632,"column":61},"end":{"line":3632,"column":62}}]},"209":{"line":3633,"type":"cond-expr","locations":[{"start":{"line":3633,"column":51},"end":{"line":3633,"column":61}},{"start":{"line":3633,"column":64},"end":{"line":3633,"column":65}}]},"210":{"line":3648,"type":"if","locations":[{"start":{"line":3648,"column":8},"end":{"line":3648,"column":8}},{"start":{"line":3648,"column":8},"end":{"line":3648,"column":8}}]},"211":{"line":3652,"type":"if","locations":[{"start":{"line":3652,"column":8},"end":{"line":3652,"column":8}},{"start":{"line":3652,"column":8},"end":{"line":3652,"column":8}}]},"212":{"line":3652,"type":"binary-expr","locations":[{"start":{"line":3652,"column":11},"end":{"line":3652,"column":22}},{"start":{"line":3652,"column":26},"end":{"line":3652,"column":31}}]},"213":{"line":3669,"type":"if","locations":[{"start":{"line":3669,"column":8},"end":{"line":3669,"column":8}},{"start":{"line":3669,"column":8},"end":{"line":3669,"column":8}}]},"214":{"line":3673,"type":"if","locations":[{"start":{"line":3673,"column":8},"end":{"line":3673,"column":8}},{"start":{"line":3673,"column":8},"end":{"line":3673,"column":8}}]},"215":{"line":3673,"type":"binary-expr","locations":[{"start":{"line":3673,"column":11},"end":{"line":3673,"column":22}},{"start":{"line":3673,"column":26},"end":{"line":3673,"column":31}}]},"216":{"line":3676,"type":"if","locations":[{"start":{"line":3676,"column":12},"end":{"line":3676,"column":12}},{"start":{"line":3676,"column":12},"end":{"line":3676,"column":12}}]}},"code":["(function () { YUI.add('graphics-canvas', function (Y, NAME) {","","var IMPLEMENTATION = \"canvas\",","    SHAPE = \"shape\",","\tSPLITPATHPATTERN = /[a-z][^a-z]*/ig,","    SPLITARGSPATTERN = /[\\-]?[0-9]*[0-9|\\.][0-9]*/g,","    DOCUMENT = Y.config.doc,","    Y_LANG = Y.Lang,","    AttributeLite = Y.AttributeLite,","\tCanvasShape,","\tCanvasPath,","\tCanvasRect,","    CanvasEllipse,","\tCanvasCircle,","    CanvasPieSlice,","    Y_DOM = Y.DOM,","    Y_Color = Y.Color,","    PARSE_INT = parseInt,","    PARSE_FLOAT = parseFloat,","    IS_NUMBER = Y_LANG.isNumber,","    RE = RegExp,","    TORGB = Y_Color.toRGB,","    TOHEX = Y_Color.toHex,","    _getClassName = Y.ClassNameManager.getClassName;","","/**"," * <a href=\"http://www.w3.org/TR/html5/the-canvas-element.html\">Canvas</a> implementation of the <a href=\"Drawing.html\">`Drawing`</a> class."," * `CanvasDrawing` is not intended to be used directly. Instead, use the <a href=\"Drawing.html\">`Drawing`</a> class."," * If the browser lacks <a href=\"http://www.w3.org/TR/SVG/\">SVG</a> capabilities but has"," * <a href=\"http://www.w3.org/TR/html5/the-canvas-element.html\">Canvas</a> capabilities, the <a href=\"Drawing.html\">`Drawing`</a>"," * class will point to the `CanvasDrawing` class."," *"," * @module graphics"," * @class CanvasDrawing"," * @constructor"," */","function CanvasDrawing()","{","}","","CanvasDrawing.prototype = {","    /**","     * Maps path to methods","     *","     * @property _pathSymbolToMethod","     * @type Object","     * @private","     */","    _pathSymbolToMethod: {","        M: \"moveTo\",","        m: \"relativeMoveTo\",","        L: \"lineTo\",","        l: \"relativeLineTo\",","        C: \"curveTo\",","        c: \"relativeCurveTo\",","        Q: \"quadraticCurveTo\",","        q: \"relativeQuadraticCurveTo\",","        z: \"closePath\",","        Z: \"closePath\"","    },","","    /**","     * Current x position of the drawing.","     *","     * @property _currentX","     * @type Number","     * @private","     */","    _currentX: 0,","","    /**","     * Current y position of the drqwing.","     *","     * @property _currentY","     * @type Number","     * @private","     */","    _currentY: 0,","","    /**","     * Parses hex color string and alpha value to rgba","     *","     * @method _toRGBA","     * @param {Object} val Color value to parse. Can be hex string, rgb or name.","     * @param {Number} alpha Numeric value between 0 and 1 representing the alpha level.","     * @private","     */","    _toRGBA: function(val, alpha) {","        alpha = (alpha !== undefined) ? alpha : 1;","        if (!Y_Color.re_RGB.test(val)) {","            val = TOHEX(val);","        }","","        if(Y_Color.re_hex.exec(val)) {","            val = 'rgba(' + [","                PARSE_INT(RE.$1, 16),","                PARSE_INT(RE.$2, 16),","                PARSE_INT(RE.$3, 16)","            ].join(',') + ',' + alpha + ')';","        }","        return val;","    },","","    /**","     * Converts color to rgb format","     *","     * @method _toRGB","     * @param val Color value to convert.","     * @private","     */","    _toRGB: function(val) {","        return TORGB(val);","    },","","    /**","     * Sets the size of the graphics object.","     *","     * @method setSize","     * @param w {Number} width to set for the instance.","     * @param h {Number} height to set for the instance.","     * @private","     */","\tsetSize: function(w, h) {","        if(this.get(\"autoSize\"))","        {","            if(w > this.node.getAttribute(\"width\"))","            {","                this.node.style.width = w + \"px\";","                this.node.setAttribute(\"width\", w);","            }","            if(h > this.node.getAttribute(\"height\"))","            {","                this.node.style.height = h + \"px\";","                this.node.setAttribute(\"height\", h);","            }","        }","    },","","\t/**","     * Tracks coordinates. Used to calculate the start point of dashed lines.","     *","     * @method _updateCoords","     * @param {Number} x x-coordinate","     * @param {Number} y y-coordinate","\t * @private","\t */","    _updateCoords: function(x, y)","    {","        this._xcoords.push(x);","        this._ycoords.push(y);","        this._currentX = x;","        this._currentY = y;","    },","","\t/**","     * Clears the coordinate arrays. Called at the end of a drawing operation.","\t *","     * @method _clearAndUpdateCoords","     * @private","\t */","    _clearAndUpdateCoords: function()","    {","        var x = this._xcoords.pop() || 0,","            y = this._ycoords.pop() || 0;","        this._updateCoords(x, y);","    },","","\t/**","     * Moves the shape's dom node.","     *","     * @method _updateNodePosition","\t * @private","\t */","    _updateNodePosition: function()","    {","        var node = this.get(\"node\"),","            x = this.get(\"x\"),","            y = this.get(\"y\");","        node.style.position = \"absolute\";","        node.style.left = (x + this._left) + \"px\";","        node.style.top = (y + this._top) + \"px\";","    },","","    /**","     * Queues up a method to be executed when a shape redraws.","     *","     * @method _updateDrawingQueue","     * @param {Array} val An array containing data that can be parsed into a method and arguments. The value at zero-index","     * of the array is a string reference of the drawing method that will be called. All subsequent indices are argument for","     * that method. For example, `lineTo(10, 100)` would be structured as:","     * `[\"lineTo\", 10, 100]`.","     * @private","     */","    _updateDrawingQueue: function(val)","    {","        this._methods.push(val);","    },","","    /**","     * Draws a line segment from the current drawing position to the specified x and y coordinates.","     *","     * @method lineTo","     * @param {Number} point1 x-coordinate for the end point.","     * @param {Number} point2 y-coordinate for the end point.","     * @chainable","     */","    lineTo: function()","    {","        this._lineTo.apply(this, [Y.Array(arguments), false]);","        return this;","    },","","    /**","     * Draws a line segment from the current drawing position to the relative x and y coordinates.","     *","     * @method relativeLineTo","     * @param {Number} point1 x-coordinate for the end point.","     * @param {Number} point2 y-coordinate for the end point.","     * @chainable","     */","    relativeLineTo: function()","    {","        this._lineTo.apply(this, [Y.Array(arguments), true]);","        return this;","    },","","    /**","     * Implements lineTo methods.","     *","     * @method _lineTo","     * @param {Array} args The arguments to be used.","     * @param {Boolean} relative Indicates whether or not to use relative coordinates.","     * @private","     */","    _lineTo: function(args, relative)","    {","        var point1 = args[0],","            i,","            len,","            x,","            y,","            wt = this._stroke && this._strokeWeight ? this._strokeWeight : 0,","            relativeX = relative ? parseFloat(this._currentX) : 0,","            relativeY = relative ? parseFloat(this._currentY) : 0;","        if(!this._lineToMethods)","        {","            this._lineToMethods = [];","        }","        len = args.length - 1;","        if (typeof point1 === 'string' || typeof point1 === 'number') {","            for (i = 0; i < len; i = i + 2) {","                x = parseFloat(args[i]);","                y = parseFloat(args[i + 1]);","                x = x + relativeX;","                y = y + relativeY;","                this._updateDrawingQueue([\"lineTo\", x, y]);","                this._trackSize(x - wt, y - wt);","                this._trackSize(x + wt, y + wt);","                this._updateCoords(x, y);","            }","        }","        else","        {","            for (i = 0; i < len; i = i + 1)","            {","                x = parseFloat(args[i][0]);","                y = parseFloat(args[i][1]);","                this._updateDrawingQueue([\"lineTo\", x, y]);","                this._lineToMethods[this._lineToMethods.length] = this._methods[this._methods.length - 1];","                this._trackSize(x - wt, y - wt);","                this._trackSize(x + wt, y + wt);","                this._updateCoords(x, y);","            }","        }","        this._drawingComplete = false;","        return this;","    },","","    /**","     * Moves the current drawing position to specified x and y coordinates.","     *","     * @method moveTo","     * @param {Number} x x-coordinate for the end point.","     * @param {Number} y y-coordinate for the end point.","     * @chainable","     */","    moveTo: function()","    {","        this._moveTo.apply(this, [Y.Array(arguments), false]);","        return this;","    },","","    /**","     * Moves the current drawing position relative to specified x and y coordinates.","     *","     * @method relativeMoveTo","     * @param {Number} x x-coordinate for the end point.","     * @param {Number} y y-coordinate for the end point.","     * @chainable","     */","    relativeMoveTo: function()","    {","        this._moveTo.apply(this, [Y.Array(arguments), true]);","        return this;","    },","","    /**","     * Implements moveTo methods.","     *","     * @method _moveTo","     * @param {Array} args The arguments to be used.","     * @param {Boolean} relative Indicates whether or not to use relative coordinates.","     * @private","     */","    _moveTo: function(args, relative) {","        var wt = this._stroke && this._strokeWeight ? this._strokeWeight : 0,","            relativeX = relative ? parseFloat(this._currentX) : 0,","            relativeY = relative ? parseFloat(this._currentY) : 0,","            x = parseFloat(args[0]) + relativeX,","            y = parseFloat(args[1]) + relativeY;","        this._updateDrawingQueue([\"moveTo\", x, y]);","        this._trackSize(x - wt, y - wt);","        this._trackSize(x + wt, y + wt);","        this._updateCoords(x, y);","        this._drawingComplete = false;","        return this;","    },","","    /**","     * Draws a bezier curve.","     *","     * @method curveTo","     * @param {Number} cp1x x-coordinate for the first control point.","     * @param {Number} cp1y y-coordinate for the first control point.","     * @param {Number} cp2x x-coordinate for the second control point.","     * @param {Number} cp2y y-coordinate for the second control point.","     * @param {Number} x x-coordinate for the end point.","     * @param {Number} y y-coordinate for the end point.","     * @chainable","     */","    curveTo: function() {","        this._curveTo.apply(this, [Y.Array(arguments), false]);","        return this;","    },","","    /**","     * Draws a bezier curve relative to the current coordinates.","     *","     * @method relativeCurveTo","     * @param {Number} cp1x x-coordinate for the first control point.","     * @param {Number} cp1y y-coordinate for the first control point.","     * @param {Number} cp2x x-coordinate for the second control point.","     * @param {Number} cp2y y-coordinate for the second control point.","     * @param {Number} x x-coordinate for the end point.","     * @param {Number} y y-coordinate for the end point.","     * @chainable","     */","    relativeCurveTo: function() {","        this._curveTo.apply(this, [Y.Array(arguments), true]);","        return this;","    },","","    /**","     * Implements curveTo methods.","     *","     * @method _curveTo","     * @param {Array} args The arguments to be used.","     * @param {Boolean} relative Indicates whether or not to use relative coordinates.","     * @private","     */","    _curveTo: function(args, relative) {","        var w,","            h,","            cp1x,","            cp1y,","            cp2x,","            cp2y,","            x,","            y,","            pts,","            right,","            left,","            bottom,","            top,","            i,","            len,","            relativeX = relative ? parseFloat(this._currentX) : 0,","            relativeY = relative ? parseFloat(this._currentY) : 0;","        len = args.length - 5;","        for(i = 0; i < len; i = i + 6)","        {","            cp1x = parseFloat(args[i]) + relativeX;","            cp1y = parseFloat(args[i + 1]) + relativeY;","            cp2x = parseFloat(args[i + 2]) + relativeX;","            cp2y = parseFloat(args[i + 3]) + relativeY;","            x = parseFloat(args[i + 4]) + relativeX;","            y = parseFloat(args[i + 5]) + relativeY;","            this._updateDrawingQueue([\"bezierCurveTo\", cp1x, cp1y, cp2x, cp2y, x, y]);","            this._drawingComplete = false;","            right = Math.max(x, Math.max(cp1x, cp2x));","            bottom = Math.max(y, Math.max(cp1y, cp2y));","            left = Math.min(x, Math.min(cp1x, cp2x));","            top = Math.min(y, Math.min(cp1y, cp2y));","            w = Math.abs(right - left);","            h = Math.abs(bottom - top);","            pts = [[this._currentX, this._currentY] , [cp1x, cp1y], [cp2x, cp2y], [x, y]];","            this._setCurveBoundingBox(pts, w, h);","            this._currentX = x;","            this._currentY = y;","        }","    },","","    /**","     * Draws a quadratic bezier curve.","     *","     * @method quadraticCurveTo","     * @param {Number} cpx x-coordinate for the control point.","     * @param {Number} cpy y-coordinate for the control point.","     * @param {Number} x x-coordinate for the end point.","     * @param {Number} y y-coordinate for the end point.","     * @chainable","     */","    quadraticCurveTo: function() {","        this._quadraticCurveTo.apply(this, [Y.Array(arguments), false]);","        return this;","    },","","    /**","     * Draws a quadratic bezier curve relative to the current position.","     *","     * @method relativeQuadraticCurveTo","     * @param {Number} cpx x-coordinate for the control point.","     * @param {Number} cpy y-coordinate for the control point.","     * @param {Number} x x-coordinate for the end point.","     * @param {Number} y y-coordinate for the end point.","     * @chainable","     */","    relativeQuadraticCurveTo: function() {","        this._quadraticCurveTo.apply(this, [Y.Array(arguments), true]);","        return this;","    },","","    /**","     * Implements quadraticCurveTo methods.","     *","     * @method _quadraticCurveTo","     * @param {Array} args The arguments to be used.","     * @param {Boolean} relative Indicates whether or not to use relative coordinates.","     * @private","     */","    _quadraticCurveTo: function(args, relative) {","        var cpx,","            cpy,","            x,","            y,","            w,","            h,","            pts,","            right,","            left,","            bottom,","            top,","            i,","            len = args.length - 3,","            relativeX = relative ? parseFloat(this._currentX) : 0,","            relativeY = relative ? parseFloat(this._currentY) : 0;","        for(i = 0; i < len; i = i + 4)","        {","            cpx = parseFloat(args[i]) + relativeX;","            cpy = parseFloat(args[i + 1]) + relativeY;","            x = parseFloat(args[i + 2]) + relativeX;","            y = parseFloat(args[i + 3]) + relativeY;","            this._drawingComplete = false;","            right = Math.max(x, cpx);","            bottom = Math.max(y, cpy);","            left = Math.min(x, cpx);","            top = Math.min(y, cpy);","            w = Math.abs(right - left);","            h = Math.abs(bottom - top);","            pts = [[this._currentX, this._currentY] , [cpx, cpy], [x, y]];","            this._setCurveBoundingBox(pts, w, h);","            this._updateDrawingQueue([\"quadraticCurveTo\", cpx, cpy, x, y]);","            this._updateCoords(x, y);","        }","        return this;","    },","","    /**","     * Draws a circle. Used internally by `CanvasCircle` class.","     *","     * @method drawCircle","     * @param {Number} x y-coordinate","     * @param {Number} y x-coordinate","     * @param {Number} r radius","     * @chainable","     * @protected","     */","\tdrawCircle: function(x, y, radius) {","        var startAngle = 0,","            endAngle = 2 * Math.PI,","            wt = this._stroke && this._strokeWeight ? this._strokeWeight : 0,","            circum = radius * 2;","            circum += wt;","        this._drawingComplete = false;","        this._trackSize(x + circum, y + circum);","        this._trackSize(x - wt, y - wt);","        this._updateCoords(x, y);","        this._updateDrawingQueue([\"arc\", x + radius, y + radius, radius, startAngle, endAngle, false]);","        return this;","    },","","    /**","     * Draws a diamond.","     *","     * @method drawDiamond","     * @param {Number} x y-coordinate","     * @param {Number} y x-coordinate","     * @param {Number} width width","     * @param {Number} height height","     * @chainable","     * @protected","     */","    drawDiamond: function(x, y, width, height)","    {","        var midWidth = width * 0.5,","            midHeight = height * 0.5;","        this.moveTo(x + midWidth, y);","        this.lineTo(x + width, y + midHeight);","        this.lineTo(x + midWidth, y + height);","        this.lineTo(x, y + midHeight);","        this.lineTo(x + midWidth, y);","        return this;","    },","","    /**","     * Draws an ellipse. Used internally by `CanvasEllipse` class.","     *","     * @method drawEllipse","     * @param {Number} x x-coordinate","     * @param {Number} y y-coordinate","     * @param {Number} w width","     * @param {Number} h height","     * @chainable","     * @protected","     */","\tdrawEllipse: function(x, y, w, h) {","        var l = 8,","            theta = -(45/180) * Math.PI,","            angle = 0,","            angleMid,","            radius = w/2,","            yRadius = h/2,","            i,","            centerX = x + radius,","            centerY = y + yRadius,","            ax, ay, bx, by, cx, cy,","            wt = this._stroke && this._strokeWeight ? this._strokeWeight : 0;","","        ax = centerX + Math.cos(0) * radius;","        ay = centerY + Math.sin(0) * yRadius;","        this.moveTo(ax, ay);","        for(i = 0; i < l; i++)","        {","            angle += theta;","            angleMid = angle - (theta / 2);","            bx = centerX + Math.cos(angle) * radius;","            by = centerY + Math.sin(angle) * yRadius;","            cx = centerX + Math.cos(angleMid) * (radius / Math.cos(theta / 2));","            cy = centerY + Math.sin(angleMid) * (yRadius / Math.cos(theta / 2));","            this._updateDrawingQueue([\"quadraticCurveTo\", cx, cy, bx, by]);","        }","        this._trackSize(x + w + wt, y + h + wt);","        this._trackSize(x - wt, y - wt);","        this._updateCoords(x, y);","        return this;","    },","","    /**","     * Draws a rectangle.","     *","     * @method drawRect","     * @param {Number} x x-coordinate","     * @param {Number} y y-coordinate","     * @param {Number} w width","     * @param {Number} h height","     * @chainable","     */","    drawRect: function(x, y, w, h) {","        this._drawingComplete = false;","        this.moveTo(x, y);","        this.lineTo(x + w, y);","        this.lineTo(x + w, y + h);","        this.lineTo(x, y + h);","        this.lineTo(x, y);","        return this;","    },","","    /**","     * Draws a rectangle with rounded corners.","     *","     * @method drawRect","     * @param {Number} x x-coordinate","     * @param {Number} y y-coordinate","     * @param {Number} w width","     * @param {Number} h height","     * @param {Number} ew width of the ellipse used to draw the rounded corners","     * @param {Number} eh height of the ellipse used to draw the rounded corners","     * @chainable","     */","    drawRoundRect: function(x, y, w, h, ew, eh) {","        this._drawingComplete = false;","        this.moveTo( x, y + eh);","        this.lineTo(x, y + h - eh);","        this.quadraticCurveTo(x, y + h, x + ew, y + h);","        this.lineTo(x + w - ew, y + h);","        this.quadraticCurveTo(x + w, y + h, x + w, y + h - eh);","        this.lineTo(x + w, y + eh);","        this.quadraticCurveTo(x + w, y, x + w - ew, y);","        this.lineTo(x + ew, y);","        this.quadraticCurveTo(x, y, x, y + eh);","        return this;","    },","","    /**","     * Draws a wedge.","     *","     * @method drawWedge","     * @param {Number} x x-coordinate of the wedge's center point","     * @param {Number} y y-coordinate of the wedge's center point","     * @param {Number} startAngle starting angle in degrees","     * @param {Number} arc sweep of the wedge. Negative values draw clockwise.","     * @param {Number} radius radius of wedge. If [optional] yRadius is defined, then radius is the x radius.","     * @param {Number} yRadius [optional] y radius for wedge.","     * @chainable","     * @private","     */","    drawWedge: function(x, y, startAngle, arc, radius, yRadius)","    {","        var wt = this._stroke && this._strokeWeight ? this._strokeWeight : 0,","            segs,","            segAngle,","            theta,","            angle,","            angleMid,","            ax,","            ay,","            bx,","            by,","            cx,","            cy,","            i = 0;","        yRadius = yRadius || radius;","","        this._drawingComplete = false;","        // move to x,y position","        this._updateDrawingQueue([\"moveTo\", x, y]);","","        yRadius = yRadius || radius;","","        // limit sweep to reasonable numbers","        if(Math.abs(arc) > 360)","        {","            arc = 360;","        }","","        // First we calculate how many segments are needed","        // for a smooth arc.","        segs = Math.ceil(Math.abs(arc) / 45);","","        // Now calculate the sweep of each segment.","        segAngle = arc / segs;","","        // The math requires radians rather than degrees. To convert from degrees","        // use the formula (degrees/180)*Math.PI to get radians.","        theta = -(segAngle / 180) * Math.PI;","","        // convert angle startAngle to radians","        angle = (startAngle / 180) * Math.PI;","","        // draw the curve in segments no larger than 45 degrees.","        if(segs > 0)","        {","            // draw a line from the center to the start of the curve","            ax = x + Math.cos(startAngle / 180 * Math.PI) * radius;","            ay = y + Math.sin(startAngle / 180 * Math.PI) * yRadius;","            this.lineTo(ax, ay);","            // Loop for drawing curve segments","            for(i = 0; i < segs; ++i)","            {","                angle += theta;","                angleMid = angle - (theta / 2);","                bx = x + Math.cos(angle) * radius;","                by = y + Math.sin(angle) * yRadius;","                cx = x + Math.cos(angleMid) * (radius / Math.cos(theta / 2));","                cy = y + Math.sin(angleMid) * (yRadius / Math.cos(theta / 2));","                this._updateDrawingQueue([\"quadraticCurveTo\", cx, cy, bx, by]);","            }","            // close the wedge by drawing a line to the center","            this._updateDrawingQueue([\"lineTo\", x, y]);","        }","        this._trackSize(-wt , -wt);","        this._trackSize((radius * 2) + wt, (radius * 2) + wt);","        return this;","    },","","    /**","     * Completes a drawing operation.","     *","     * @method end","     * @chainable","     */","    end: function() {","        this._closePath();","        return this;","    },","","    /**","     * Ends a fill and stroke","     *","     * @method closePath","     * @chainable","     */","    closePath: function()","    {","        this._updateDrawingQueue([\"closePath\"]);","        this._updateDrawingQueue([\"beginPath\"]);","        return this;","    },","","\t/**","\t * Clears the graphics object.","\t *","\t * @method clear","     * @chainable","\t */","    clear: function() {","\t\tthis._initProps();","        if(this.node)","        {","            this._context.clearRect(0, 0, this.node.width, this.node.height);","        }","        return this;","\t},","","","    /**","     * Returns a linear gradient fill","     *","     * @method _getLinearGradient","     * @return CanvasGradient","     * @private","     */","    _getLinearGradient: function() {","        var isNumber = Y.Lang.isNumber,","            fill = this.get(\"fill\"),","            stops = fill.stops,","            opacity,","            color,","            stop,","            i,","            len = stops.length,","            gradient,","            x = 0,","            y = 0,","            w = this.get(\"width\"),","            h = this.get(\"height\"),","            r = fill.rotation || 0,","            x1, x2, y1, y2,","            cx = x + w/2,","            cy = y + h/2,","            offset,","            radCon = Math.PI/180,","            tanRadians = parseFloat(parseFloat(Math.tan(r * radCon)).toFixed(8));","        if(Math.abs(tanRadians) * w/2 >= h/2)","        {","            if(r < 180)","            {","                y1 = y;","                y2 = y + h;","            }","            else","            {","                y1 = y + h;","                y2 = y;","            }","            x1 = cx - ((cy - y1)/tanRadians);","            x2 = cx - ((cy - y2)/tanRadians);","        }","        else","        {","            if(r > 90 && r < 270)","            {","                x1 = x + w;","                x2 = x;","            }","            else","            {","                x1 = x;","                x2 = x + w;","            }","            y1 = ((tanRadians * (cx - x1)) - cy) * -1;","            y2 = ((tanRadians * (cx - x2)) - cy) * -1;","        }","        gradient = this._context.createLinearGradient(x1, y1, x2, y2);","        for(i = 0; i < len; ++i)","        {","            stop = stops[i];","            opacity = stop.opacity;","            color = stop.color;","            offset = stop.offset;","            if(isNumber(opacity))","            {","                opacity = Math.max(0, Math.min(1, opacity));","                color = this._toRGBA(color, opacity);","            }","            else","            {","                color = TORGB(color);","            }","            offset = stop.offset || i/(len - 1);","            gradient.addColorStop(offset, color);","        }","        return gradient;","    },","","    /**","     * Returns a radial gradient fill","     *","     * @method _getRadialGradient","     * @return CanvasGradient","     * @private","     */","    _getRadialGradient: function() {","        var isNumber = Y.Lang.isNumber,","            fill = this.get(\"fill\"),","            r = fill.r,","            fx = fill.fx,","            fy = fill.fy,","            stops = fill.stops,","            opacity,","            color,","            stop,","            i,","            len = stops.length,","            gradient,","            x = 0,","            y = 0,","            w = this.get(\"width\"),","            h = this.get(\"height\"),","            x1, x2, y1, y2, r2,","            xc, yc, xn, yn, d,","            offset,","            ratio,","            stopMultiplier;","        xc = x + w/2;","        yc = y + h/2;","        x1 = w * fx;","        y1 = h * fy;","        x2 = x + w/2;","        y2 = y + h/2;","        r2 = w * r;","        d = Math.sqrt( Math.pow(Math.abs(xc - x1), 2) + Math.pow(Math.abs(yc - y1), 2) );","        if(d >= r2)","        {","            ratio = d/r2;","            //hack. gradient won't show if it is exactly on the edge of the arc","            if(ratio === 1)","            {","                ratio = 1.01;","            }","            xn = (x1 - xc)/ratio;","            yn = (y1 - yc)/ratio;","            xn = xn > 0 ? Math.floor(xn) : Math.ceil(xn);","            yn = yn > 0 ? Math.floor(yn) : Math.ceil(yn);","            x1 = xc + xn;","            y1 = yc + yn;","        }","","        //If the gradient radius is greater than the circle's, adjusting the radius stretches the gradient properly.","        //If the gradient radius is less than the circle's, adjusting the radius of the gradient will not work.","        //Instead, adjust the color stops to reflect the smaller radius.","        if(r >= 0.5)","        {","            gradient = this._context.createRadialGradient(x1, y1, r, x2, y2, r * w);","            stopMultiplier = 1;","        }","        else","        {","            gradient = this._context.createRadialGradient(x1, y1, r, x2, y2, w/2);","            stopMultiplier = r * 2;","        }","        for(i = 0; i < len; ++i)","        {","            stop = stops[i];","            opacity = stop.opacity;","            color = stop.color;","            offset = stop.offset;","            if(isNumber(opacity))","            {","                opacity = Math.max(0, Math.min(1, opacity));","                color = this._toRGBA(color, opacity);","            }","            else","            {","                color = TORGB(color);","            }","            offset = stop.offset || i/(len - 1);","            offset *= stopMultiplier;","            if(offset <= 1)","            {","                gradient.addColorStop(offset, color);","            }","        }","        return gradient;","    },","","","    /**","     * Clears all values","     *","     * @method _initProps","     * @private","     */","    _initProps: function() {","        this._methods = [];","        this._lineToMethods = [];","        this._xcoords = [0];","\t\tthis._ycoords = [0];","\t\tthis._width = 0;","        this._height = 0;","        this._left = 0;","        this._top = 0;","        this._right = 0;","        this._bottom = 0;","        this._currentX = 0;","        this._currentY = 0;","    },","","    /**","     * Indicates a drawing has completed.","     *","     * @property _drawingComplete","     * @type Boolean","     * @private","     */","    _drawingComplete: false,","","    /**","     * Creates canvas element","     *","     * @method _createGraphic","     * @return HTMLCanvasElement","     * @private","     */","    _createGraphic: function() {","        var graphic = Y.config.doc.createElement('canvas');","        return graphic;","    },","","    /**","     * Returns the points on a curve","     *","     * @method getBezierData","     * @param Array points Array containing the begin, end and control points of a curve.","     * @param Number t The value for incrementing the next set of points.","     * @return Array","     * @private","     */","    getBezierData: function(points, t) {","        var n = points.length,","            tmp = [],","            i,","            j;","","        for (i = 0; i < n; ++i){","            tmp[i] = [points[i][0], points[i][1]]; // save input","        }","","        for (j = 1; j < n; ++j) {","            for (i = 0; i < n - j; ++i) {","                tmp[i][0] = (1 - t) * tmp[i][0] + t * tmp[parseInt(i + 1, 10)][0];","                tmp[i][1] = (1 - t) * tmp[i][1] + t * tmp[parseInt(i + 1, 10)][1];","            }","        }","        return [ tmp[0][0], tmp[0][1] ];","    },","","    /**","     * Calculates the bounding box for a curve","     *","     * @method _setCurveBoundingBox","     * @param Array pts Array containing points for start, end and control points of a curve.","     * @param Number w Width used to calculate the number of points to describe the curve.","     * @param Number h Height used to calculate the number of points to describe the curve.","     * @private","     */","    _setCurveBoundingBox: function(pts, w, h)","    {","        var i = 0,","            left = this._currentX,","            right = left,","            top = this._currentY,","            bottom = top,","            len = Math.round(Math.sqrt((w * w) + (h * h))),","            t = 1/len,","            wt = this._stroke && this._strokeWeight ? this._strokeWeight : 0,","            xy;","        for(i = 0; i < len; ++i)","        {","            xy = this.getBezierData(pts, t * i);","            left = isNaN(left) ? xy[0] : Math.min(xy[0], left);","            right = isNaN(right) ? xy[0] : Math.max(xy[0], right);","            top = isNaN(top) ? xy[1] : Math.min(xy[1], top);","            bottom = isNaN(bottom) ? xy[1] : Math.max(xy[1], bottom);","        }","        left = Math.round(left * 10)/10;","        right = Math.round(right * 10)/10;","        top = Math.round(top * 10)/10;","        bottom = Math.round(bottom * 10)/10;","        this._trackSize(right + wt, bottom + wt);","        this._trackSize(left - wt, top - wt);","    },","","    /**","     * Updates the size of the graphics object","     *","     * @method _trackSize","     * @param {Number} w width","     * @param {Number} h height","     * @private","     */","    _trackSize: function(w, h) {","        if (w > this._right) {","            this._right = w;","        }","        if(w < this._left)","        {","            this._left = w;","        }","        if (h < this._top)","        {","            this._top = h;","        }","        if (h > this._bottom)","        {","            this._bottom = h;","        }","        this._width = this._right - this._left;","        this._height = this._bottom - this._top;","    }","};","Y.CanvasDrawing = CanvasDrawing;","/**"," * <a href=\"http://www.w3.org/TR/html5/the-canvas-element.html\">Canvas</a> implementation of the <a href=\"Shape.html\">`Shape`</a> class."," * `CanvasShape` is not intended to be used directly. Instead, use the <a href=\"Shape.html\">`Shape`</a> class."," * If the browser lacks <a href=\"http://www.w3.org/TR/SVG/\">SVG</a> capabilities but has"," * <a href=\"http://www.w3.org/TR/html5/the-canvas-element.html\">Canvas</a> capabilities, the <a href=\"Shape.html\">`Shape`</a>"," * class will point to the `CanvasShape` class."," *"," * @module graphics"," * @class CanvasShape"," * @constructor"," */","CanvasShape = function()","{","    this._transforms = [];","    this.matrix = new Y.Matrix();","    CanvasShape.superclass.constructor.apply(this, arguments);","};","","CanvasShape.NAME = \"shape\";","","Y.extend(CanvasShape, Y.GraphicBase, Y.mix({","    /**","     * Init method, invoked during construction.","     * Calls `initializer` method.","     *","     * @method init","     * @protected","     */","    init: function()","\t{","\t\tthis.initializer.apply(this, arguments);","\t},","","\t/**","\t * Initializes the shape","\t *","\t * @private","\t * @method _initialize","\t */","\tinitializer: function(cfg)","\t{","\t\tvar host = this,","            graphic = cfg.graphic,","            data = this.get(\"data\");","        host._initProps();","\t\thost.createNode();","\t\thost._xcoords = [0];","\t\thost._ycoords = [0];","        if(graphic)","        {","            this._setGraphic(graphic);","        }","        if(data)","        {","            host._parsePathData(data);","        }","\t\thost._updateHandler();","\t},","","    /**","     * Set the Graphic instance for the shape.","     *","     * @method _setGraphic","     * @param {Graphic | Node | HTMLElement | String} render This param is used to determine the graphic instance. If it is a","     * `Graphic` instance, it will be assigned to the `graphic` attribute. Otherwise, a new Graphic instance will be created","     * and rendered into the dom element that the render represents.","     * @private","     */","    _setGraphic: function(render)","    {","        var graphic;","        if(render instanceof Y.CanvasGraphic)","        {","            this._graphic = render;","        }","        else","        {","            graphic = new Y.CanvasGraphic({","                render: render","            });","            graphic._appendShape(this);","            this._graphic = graphic;","        }","    },","","\t/**","\t * Add a class name to each node.","\t *","\t * @method addClass","\t * @param {String} className the class name to add to the node's class attribute","\t */","\taddClass: function(className)","\t{","\t\tvar node = this.get(\"node\");","\t\tY.DOM.addClass(node, className);","\t},","","\t/**","\t * Removes a class name from each node.","\t *","\t * @method removeClass","\t * @param {String} className the class name to remove from the node's class attribute","\t */","\tremoveClass: function(className)","\t{","\t\tvar node = this.get(\"node\");","\t\tY.DOM.removeClass(node, className);","\t},","","\t/**","\t * Gets the current position of the node in page coordinates.","\t *","\t * @method getXY","\t * @return Array The XY position of the shape.","\t */","\tgetXY: function()","\t{","\t\tvar graphic = this.get(\"graphic\"),","\t\t\tparentXY = graphic.getXY(),","\t\t\tx = this.get(\"x\"),","\t\t\ty = this.get(\"y\");","\t\treturn [parentXY[0] + x, parentXY[1] + y];","\t},","","\t/**","\t * Set the position of the shape in page coordinates, regardless of how the node is positioned.","\t *","\t * @method setXY","\t * @param {Array} Contains X & Y values for new position (coordinates are page-based)","\t */","\tsetXY: function(xy)","\t{","\t\tvar graphic = this.get(\"graphic\"),","\t\t\tparentXY = graphic.getXY(),","\t\t\tx = xy[0] - parentXY[0],","\t\t\ty = xy[1] - parentXY[1];","\t\tthis._set(\"x\", x);","\t\tthis._set(\"y\", y);","\t\tthis._updateNodePosition(x, y);","\t},","","\t/**","\t * Determines whether the node is an ancestor of another HTML element in the DOM hierarchy.","\t *","\t * @method contains","\t * @param {CanvasShape | HTMLElement} needle The possible node or descendent","\t * @return Boolean Whether or not this shape is the needle or its ancestor.","\t */","\tcontains: function(needle)","\t{","\t\tvar node = needle instanceof Y.Node ? needle._node : needle;","        return node === this.node;","\t},","","\t/**","\t * Test if the supplied node matches the supplied selector.","\t *","\t * @method test","\t * @param {String} selector The CSS selector to test against.","\t * @return Boolean Wheter or not the shape matches the selector.","\t */","\ttest: function(selector)","\t{","\t\treturn Y.Selector.test(this.node, selector);","\t},","","\t/**","\t * Compares nodes to determine if they match.","\t * Node instances can be compared to each other and/or HTMLElements.","\t * @method compareTo","\t * @param {HTMLElement | Node} refNode The reference node to compare to the node.","\t * @return {Boolean} True if the nodes match, false if they do not.","\t */","\tcompareTo: function(refNode) {","\t\tvar node = this.node;","\t\treturn node === refNode;","\t},","","\t/**","\t * Value function for fill attribute","\t *","\t * @method _getDefaultFill","\t * @return Object","\t * @private","\t */","\t_getDefaultFill: function() {","\t\treturn {","\t\t\ttype: \"solid\",","\t\t\topacity: 1,","\t\t\tcx: 0.5,","\t\t\tcy: 0.5,","\t\t\tfx: 0.5,","\t\t\tfy: 0.5,","\t\t\tr: 0.5","\t\t};","\t},","","\t/**","\t * Value function for stroke attribute","\t *","\t * @method _getDefaultStroke","\t * @return Object","\t * @private","\t */","\t_getDefaultStroke: function()","\t{","\t\treturn {","\t\t\tweight: 1,","\t\t\tdashstyle: \"none\",","\t\t\tcolor: \"#000\",","\t\t\topacity: 1.0","\t\t};","\t},","","\t/**","\t * Left edge of the path","\t *","     * @property _left","     * @type Number","\t * @private","\t */","\t_left: 0,","","\t/**","\t * Right edge of the path","\t *","     * @property _right","     * @type Number","\t * @private","\t */","\t_right: 0,","","\t/**","\t * Top edge of the path","\t *","     * @property _top","     * @type Number","\t * @private","\t */","\t_top: 0,","","\t/**","\t * Bottom edge of the path","\t *","     * @property _bottom","     * @type Number","\t * @private","\t */","\t_bottom: 0,","","\t/**","\t * Creates the dom node for the shape.","\t *","     * @method createNode","\t * @return HTMLElement","\t * @private","\t */","\tcreateNode: function()","\t{","\t\tvar host = this,","            node = Y.config.doc.createElement('canvas'),","\t\t\tid = host.get(\"id\"),","            concat = host._camelCaseConcat,","            name = host.name;","\t\thost._context = node.getContext('2d');","\t\tnode.setAttribute(\"overflow\", \"visible\");","        node.style.overflow = \"visible\";","        if(!host.get(\"visible\"))","        {","            node.style.visibility = \"hidden\";","        }","\t\tnode.setAttribute(\"id\", id);","\t\tid = \"#\" + id;","        host.node = node;","\t\thost.addClass(","            _getClassName(SHAPE) +","            \" \" +","            _getClassName(concat(IMPLEMENTATION, SHAPE)) +","            \" \" +","            _getClassName(name) +","            \" \" +","            _getClassName(concat(IMPLEMENTATION, name))","        );","\t},","","\t/**","     * Overrides default `on` method. Checks to see if its a dom interaction event. If so,","     * return an event attached to the `node` element. If not, return the normal functionality.","     *","     * @method on","     * @param {String} type event type","     * @param {Object} callback function","\t * @private","\t */","\ton: function(type, fn)","\t{","\t\tif(Y.Node.DOM_EVENTS[type])","\t\t{","            return Y.on(type, fn, \"#\" + this.get(\"id\"));","\t\t}","\t\treturn Y.on.apply(this, arguments);","\t},","","\t/**","\t * Adds a stroke to the shape node.","\t *","\t * @method _strokeChangeHandler","     * @param {Object} stroke Properties of the `stroke` attribute.","\t * @private","\t */","\t_setStrokeProps: function(stroke)","\t{","\t\tvar color,","\t\t\tweight,","\t\t\topacity,","\t\t\tlinejoin,","\t\t\tlinecap,","\t\t\tdashstyle;","        if(stroke)","        {","            color = stroke.color;","            weight = PARSE_FLOAT(stroke.weight);","            opacity = PARSE_FLOAT(stroke.opacity);","            linejoin = stroke.linejoin || \"round\";","            linecap = stroke.linecap || \"butt\";","            dashstyle = stroke.dashstyle;","            this._miterlimit = null;","            this._dashstyle = (dashstyle && Y.Lang.isArray(dashstyle) && dashstyle.length > 1) ? dashstyle : null;","            this._strokeWeight = weight;","","            if (IS_NUMBER(weight) && weight > 0)","            {","                this._stroke = 1;","            }","            else","            {","                this._stroke = 0;","            }","            if (IS_NUMBER(opacity)) {","                this._strokeStyle = this._toRGBA(color, opacity);","            }","            else","            {","                this._strokeStyle = color;","            }","            this._linecap = linecap;","            if(linejoin === \"round\" || linejoin === \"bevel\")","            {","                this._linejoin = linejoin;","            }","            else","            {","                linejoin = parseInt(linejoin, 10);","                if(IS_NUMBER(linejoin))","                {","                    this._miterlimit =  Math.max(linejoin, 1);","                    this._linejoin = \"miter\";","                }","            }","        }","        else","        {","            this._stroke = 0;","        }","\t},","","    /**","     * Sets the value of an attribute.","     *","     * @method set","     * @param {String|Object} name The name of the attribute. Alternatively, an object of key value pairs can","     * be passed in to set multiple attributes at once.","     * @param {Any} value The value to set the attribute to. This value is ignored if an object is received as","     * the name param.","     */","\tset: function()","\t{","\t\tvar host = this;","\t\tAttributeLite.prototype.set.apply(host, arguments);","\t\tif(host.initialized)","\t\t{","\t\t\thost._updateHandler();","\t\t}","\t},","","\t/**","\t * Adds a fill to the shape node.","\t *","\t * @method _setFillProps","     * @param {Object} fill Properties of the `fill` attribute.","\t * @private","\t */","\t_setFillProps: function(fill)","\t{","\t\tvar isNumber = IS_NUMBER,","\t\t\tcolor,","\t\t\topacity,","\t\t\ttype;","        if(fill)","        {","            color = fill.color;","            type = fill.type;","            if(type === \"linear\" || type === \"radial\")","            {","                this._fillType = type;","            }","            else if(color)","            {","                opacity = fill.opacity;","                if (isNumber(opacity))","                {","                    opacity = Math.max(0, Math.min(1, opacity));","                    color = this._toRGBA(color, opacity);","                }","                else","                {","                    color = TORGB(color);","                }","","                this._fillColor = color;","                this._fillType = 'solid';","            }","            else","            {","                this._fillColor = null;","            }","        }","\t\telse","\t\t{","            this._fillType = null;","\t\t\tthis._fillColor = null;","\t\t}","\t},","","\t/**","\t * Specifies a 2d translation.","\t *","\t * @method translate","\t * @param {Number} x The value to transate on the x-axis.","\t * @param {Number} y The value to translate on the y-axis.","\t */","\ttranslate: function(x, y)","\t{","\t\tthis._translateX += x;","\t\tthis._translateY += y;","\t\tthis._addTransform(\"translate\", arguments);","\t},","","\t/**","\t * Translates the shape along the x-axis. When translating x and y coordinates,","\t * use the `translate` method.","\t *","\t * @method translateX","\t * @param {Number} x The value to translate.","\t */","\ttranslateX: function(x)","    {","        this._translateX += x;","        this._addTransform(\"translateX\", arguments);","    },","","\t/**","\t * Performs a translate on the y-coordinate. When translating x and y coordinates,","\t * use the `translate` method.","\t *","\t * @method translateY","\t * @param {Number} y The value to translate.","\t */","\ttranslateY: function(y)","    {","        this._translateY += y;","        this._addTransform(\"translateY\", arguments);","    },","","    /**","     * Skews the shape around the x-axis and y-axis.","     *","     * @method skew","     * @param {Number} x The value to skew on the x-axis.","     * @param {Number} y The value to skew on the y-axis.","     */","    skew: function()","    {","        this._addTransform(\"skew\", arguments);","    },","","\t/**","\t * Skews the shape around the x-axis.","\t *","\t * @method skewX","\t * @param {Number} x x-coordinate","\t */","    skewX: function()","    {","        this._addTransform(\"skewX\", arguments);","    },","","\t/**","\t * Skews the shape around the y-axis.","\t *","\t * @method skewY","\t * @param {Number} y y-coordinate","\t */","    skewY: function()","    {","        this._addTransform(\"skewY\", arguments);","    },","","\t/**","\t * Rotates the shape clockwise around it transformOrigin.","\t *","\t * @method rotate","\t * @param {Number} deg The degree of the rotation.","\t */","    rotate: function()","    {","        this._addTransform(\"rotate\", arguments);","    },","","\t/**","\t * Specifies a 2d scaling operation.","\t *","\t * @method scale","\t * @param {Number} val","\t */","    scale: function()","    {","        this._addTransform(\"scale\", arguments);","    },","","    /**","     * Storage for the transform attribute.","     *","     * @property _transform","     * @type String","     * @private","     */","    _transform: \"\",","","    /**","     * Adds a transform to the shape.","     *","     * @method _addTransform","     * @param {String} type The transform being applied.","     * @param {Array} args The arguments for the transform.","\t * @private","\t */","\t_addTransform: function(type, args)","\t{","        args = Y.Array(args);","        this._transform = Y_LANG.trim(this._transform + \" \" + type + \"(\" + args.join(\", \") + \")\");","        args.unshift(type);","        this._transforms.push(args);","        if(this.initialized)","        {","            this._updateTransform();","        }","\t},","","\t/**","     * Applies all transforms.","     *","     * @method _updateTransform","\t * @private","\t */","\t_updateTransform: function()","\t{","\t\tvar node = this.node,","\t\t\tkey,","\t\t\ttransform,","\t\t\ttransformOrigin = this.get(\"transformOrigin\"),","            matrix = this.matrix,","            i,","            len = this._transforms.length;","","        if(this._transforms && this._transforms.length > 0)","        {","            for(i = 0; i < len; ++i)","            {","                key = this._transforms[i].shift();","                if(key)","                {","                    matrix[key].apply(matrix, this._transforms[i]);","                }","            }","            transform = matrix.toCSSText();","        }","","        this._graphic.addToRedrawQueue(this);","\t\ttransformOrigin = (100 * transformOrigin[0]) + \"% \" + (100 * transformOrigin[1]) + \"%\";","        Y_DOM.setStyle(node, \"transformOrigin\", transformOrigin);","        if(transform)","\t\t{","            Y_DOM.setStyle(node, \"transform\", transform);","\t\t}","        this._transforms = [];","\t},","","\t/**","     * Updates `Shape` based on attribute changes.","     *","     * @method _updateHandler","\t * @private","\t */","\t_updateHandler: function()","\t{","\t\tthis._draw();","\t\tthis._updateTransform();","\t},","","\t/**","\t * Updates the shape.","\t *","\t * @method _draw","\t * @private","\t */","\t_draw: function()","\t{","        var node = this.node;","        this.clear();","\t\tthis._closePath();","\t\tnode.style.left = this.get(\"x\") + \"px\";","\t\tnode.style.top = this.get(\"y\") + \"px\";","\t},","","\t/**","\t * Completes a shape or drawing","\t *","\t * @method _closePath","\t * @private","\t */","\t_closePath: function()","\t{","\t\tif(!this._methods)","\t\t{","\t\t\treturn;","\t\t}","\t\tvar node = this.get(\"node\"),","\t\t\tw = this._right - this._left,","\t\t\th = this._bottom - this._top,","\t\t\tcontext = this._context,","\t\t\tmethods = [],","\t\t\tcachedMethods = this._methods.concat(),","\t\t\ti,","\t\t\tj,","\t\t\tmethod,","\t\t\targs,","            argsLen,","\t\t\tlen = 0;","\t\tthis._context.clearRect(0, 0, node.width, node.height);","        if(this._methods)","        {","\t\t\tlen = cachedMethods.length;","\t\t\tif(!len || len < 1)","\t\t\t{","\t\t\t\treturn;","\t\t\t}","\t\t\tfor(i = 0; i < len; ++i)","\t\t\t{","\t\t\t\tmethods[i] = cachedMethods[i].concat();","\t\t\t\targs = methods[i];","                argsLen = (args[0] === \"quadraticCurveTo\" || args[0] === \"bezierCurveTo\") ? args.length : 3;","\t\t\t\tfor(j = 1; j < argsLen; ++j)","\t\t\t\t{","\t\t\t\t\tif(j % 2 === 0)","\t\t\t\t\t{","\t\t\t\t\t\targs[j] = args[j] - this._top;","\t\t\t\t\t}","\t\t\t\t\telse","\t\t\t\t\t{","\t\t\t\t\t\targs[j] = args[j] - this._left;","\t\t\t\t\t}","\t\t\t\t}","\t\t\t}","            node.setAttribute(\"width\", Math.min(w, 2000));","            node.setAttribute(\"height\", Math.min(2000, h));","            context.beginPath();","\t\t\tfor(i = 0; i < len; ++i)","\t\t\t{","\t\t\t\targs = methods[i].concat();","\t\t\t\tif(args && args.length > 0)","\t\t\t\t{","\t\t\t\t\tmethod = args.shift();","\t\t\t\t\tif(method)","\t\t\t\t\t{","                        if(method === \"closePath\")","                        {","                            context.closePath();","                            this._strokeAndFill(context);","                        }","\t\t\t\t\t\telse if(method && method === \"lineTo\" && this._dashstyle)","\t\t\t\t\t\t{","\t\t\t\t\t\t\targs.unshift(this._xcoords[i] - this._left, this._ycoords[i] - this._top);","\t\t\t\t\t\t\tthis._drawDashedLine.apply(this, args);","\t\t\t\t\t\t}","\t\t\t\t\t\telse","\t\t\t\t\t\t{","                            context[method].apply(context, args);","\t\t\t\t\t\t}","\t\t\t\t\t}","\t\t\t\t}","\t\t\t}","","            this._strokeAndFill(context);","\t\t\tthis._drawingComplete = true;","\t\t\tthis._clearAndUpdateCoords();","\t\t\tthis._updateNodePosition();","\t\t\tthis._methods = cachedMethods;","\t\t}","\t},","","    /**","     * Completes a stroke and/or fill operation on the context.","     *","     * @method _strokeAndFill","     * @param {Context} Reference to the context element of the canvas instance.","     * @private","     */","    _strokeAndFill: function(context)","    {","        if (this._fillType)","        {","            if(this._fillType === \"linear\")","            {","                context.fillStyle = this._getLinearGradient();","            }","            else if(this._fillType === \"radial\")","            {","                context.fillStyle = this._getRadialGradient();","            }","            else","            {","                context.fillStyle = this._fillColor;","            }","            context.closePath();","            context.fill();","        }","","        if (this._stroke) {","            if(this._strokeWeight)","            {","                context.lineWidth = this._strokeWeight;","            }","            context.lineCap = this._linecap;","            context.lineJoin = this._linejoin;","            if(this._miterlimit)","            {","                context.miterLimit = this._miterlimit;","            }","            context.strokeStyle = this._strokeStyle;","            context.stroke();","        }","    },","","\t/**","\t * Draws a dashed line between two points.","\t *","\t * @method _drawDashedLine","\t * @param {Number} xStart\tThe x position of the start of the line","\t * @param {Number} yStart\tThe y position of the start of the line","\t * @param {Number} xEnd\t\tThe x position of the end of the line","\t * @param {Number} yEnd\t\tThe y position of the end of the line","\t * @private","\t */","\t_drawDashedLine: function(xStart, yStart, xEnd, yEnd)","\t{","\t\tvar context = this._context,","\t\t\tdashsize = this._dashstyle[0],","\t\t\tgapsize = this._dashstyle[1],","\t\t\tsegmentLength = dashsize + gapsize,","\t\t\txDelta = xEnd - xStart,","\t\t\tyDelta = yEnd - yStart,","\t\t\tdelta = Math.sqrt(Math.pow(xDelta, 2) + Math.pow(yDelta, 2)),","\t\t\tsegmentCount = Math.floor(Math.abs(delta / segmentLength)),","\t\t\tradians = Math.atan2(yDelta, xDelta),","\t\t\txCurrent = xStart,","\t\t\tyCurrent = yStart,","\t\t\ti;","\t\txDelta = Math.cos(radians) * segmentLength;","\t\tyDelta = Math.sin(radians) * segmentLength;","","\t\tfor(i = 0; i < segmentCount; ++i)","\t\t{","\t\t\tcontext.moveTo(xCurrent, yCurrent);","\t\t\tcontext.lineTo(xCurrent + Math.cos(radians) * dashsize, yCurrent + Math.sin(radians) * dashsize);","\t\t\txCurrent += xDelta;","\t\t\tyCurrent += yDelta;","\t\t}","","\t\tcontext.moveTo(xCurrent, yCurrent);","\t\tdelta = Math.sqrt((xEnd - xCurrent) * (xEnd - xCurrent) + (yEnd - yCurrent) * (yEnd - yCurrent));","","\t\tif(delta > dashsize)","\t\t{","\t\t\tcontext.lineTo(xCurrent + Math.cos(radians) * dashsize, yCurrent + Math.sin(radians) * dashsize);","\t\t}","\t\telse if(delta > 0)","\t\t{","\t\t\tcontext.lineTo(xCurrent + Math.cos(radians) * delta, yCurrent + Math.sin(radians) * delta);","\t\t}","","\t\tcontext.moveTo(xEnd, yEnd);","\t},","","\t/**","\t * Returns the bounds for a shape.","\t *","     * Calculates the a new bounding box from the original corner coordinates (base on size and position) and the transform matrix.","     * The calculated bounding box is used by the graphic instance to calculate its viewBox.","     *","\t * @method getBounds","\t * @return Object","\t */","\tgetBounds: function()","\t{","\t\tvar type = this._type,","\t\t\tw = this.get(\"width\"),","\t\t\th = this.get(\"height\"),","\t\t\tx = this.get(\"x\"),","\t\t\ty = this.get(\"y\");","        if(type === \"path\")","        {","            x = x + this._left;","            y = y + this._top;","            w = this._right - this._left;","            h = this._bottom - this._top;","        }","        return this._getContentRect(w, h, x, y);","\t},","","    /**","     * Calculates the bounding box for the shape.","     *","     * @method _getContentRect","     * @param {Number} w width of the shape","     * @param {Number} h height of the shape","     * @param {Number} x x-coordinate of the shape","     * @param {Number} y y-coordinate of the shape","     * @private","     */","    _getContentRect: function(w, h, x, y)","    {","        var transformOrigin = this.get(\"transformOrigin\"),","            transformX = transformOrigin[0] * w,","            transformY = transformOrigin[1] * h,","            transforms = this.matrix.getTransformArray(this.get(\"transform\")),","            matrix = new Y.Matrix(),","            i,","            len = transforms.length,","            transform,","            key,","            contentRect;","        if(this._type === \"path\")","        {","            transformX = transformX + x;","            transformY = transformY + y;","        }","        transformX = !isNaN(transformX) ? transformX : 0;","        transformY = !isNaN(transformY) ? transformY : 0;","        matrix.translate(transformX, transformY);","        for(i = 0; i < len; i = i + 1)","        {","            transform = transforms[i];","            key = transform.shift();","            if(key)","            {","                matrix[key].apply(matrix, transform);","            }","        }","        matrix.translate(-transformX, -transformY);","        contentRect = matrix.getContentRect(w, h, x, y);","        return contentRect;","    },","","    /**","     * Places the shape above all other shapes.","     *","     * @method toFront","     */","    toFront: function()","    {","        var graphic = this.get(\"graphic\");","        if(graphic)","        {","            graphic._toFront(this);","        }","    },","","    /**","     * Places the shape underneath all other shapes.","     *","     * @method toFront","     */","    toBack: function()","    {","        var graphic = this.get(\"graphic\");","        if(graphic)","        {","            graphic._toBack(this);","        }","    },","","    /**","     * Parses path data string and call mapped methods.","     *","     * @method _parsePathData","     * @param {String} val The path data","     * @private","     */","    _parsePathData: function(val)","    {","        var method,","            methodSymbol,","            args,","            commandArray = Y.Lang.trim(val.match(SPLITPATHPATTERN)),","            i,","            len,","            str,","            symbolToMethod = this._pathSymbolToMethod;","        if(commandArray)","        {","            this.clear();","            len = commandArray.length || 0;","            for(i = 0; i < len; i = i + 1)","            {","                str = commandArray[i];","                methodSymbol = str.substr(0, 1);","                args = str.substr(1).match(SPLITARGSPATTERN);","                method = symbolToMethod[methodSymbol];","                if(method)","                {","                    if(args)","                    {","                        this[method].apply(this, args);","                    }","                    else","                    {","                        this[method].apply(this);","                    }","                }","            }","            this.end();","        }","    },","","    /**","     * Destroys the shape instance.","     *","     * @method destroy","     */","    destroy: function()","    {","        var graphic = this.get(\"graphic\");","        if(graphic)","        {","            graphic.removeShape(this);","        }","        else","        {","            this._destroy();","        }","    },","","    /**","     *  Implementation for shape destruction","     *","     *  @method destroy","     *  @protected","     */","    _destroy: function()","    {","        if(this.node)","        {","            Y.Event.purgeElement(this.node, true);","            if(this.node.parentNode)","            {","                this.node.style.visibility = \"\";","                this.node.parentNode.removeChild(this.node);","            }","            this._context = null;","            this.node = null;","        }","    }","}, Y.CanvasDrawing.prototype));","","CanvasShape.ATTRS =  {","\t/**","\t * An array of x, y values which indicates the transformOrigin in which to rotate the shape. Valid values range between 0 and 1 representing a","\t * fraction of the shape's corresponding bounding box dimension. The default value is [0.5, 0.5].","\t *","\t * @config transformOrigin","\t * @type Array","\t */","\ttransformOrigin: {","\t\tvalueFn: function()","\t\t{","\t\t\treturn [0.5, 0.5];","\t\t}","\t},","","    /**","     * <p>A string containing, in order, transform operations applied to the shape instance. The `transform` string can contain the following values:","     *","     *    <dl>","     *        <dt>rotate</dt><dd>Rotates the shape clockwise around it transformOrigin.</dd>","     *        <dt>translate</dt><dd>Specifies a 2d translation.</dd>","     *        <dt>skew</dt><dd>Skews the shape around the x-axis and y-axis.</dd>","     *        <dt>scale</dt><dd>Specifies a 2d scaling operation.</dd>","     *        <dt>translateX</dt><dd>Translates the shape along the x-axis.</dd>","     *        <dt>translateY</dt><dd>Translates the shape along the y-axis.</dd>","     *        <dt>skewX</dt><dd>Skews the shape around the x-axis.</dd>","     *        <dt>skewY</dt><dd>Skews the shape around the y-axis.</dd>","     *        <dt>matrix</dt><dd>Specifies a 2D transformation matrix comprised of the specified six values.</dd>","     *    </dl>","     * </p>","     * <p>Applying transforms through the transform attribute will reset the transform matrix and apply a new transform. The shape class also contains","     * corresponding methods for each transform that will apply the transform to the current matrix. The below code illustrates how you might use the","     * `transform` attribute to instantiate a recangle with a rotation of 45 degrees.</p>","            var myRect = new Y.Rect({","                type:\"rect\",","                width: 50,","                height: 40,","                transform: \"rotate(45)\"","            };","     * <p>The code below would apply `translate` and `rotate` to an existing shape.</p>","","        myRect.set(\"transform\", \"translate(40, 50) rotate(45)\");","\t * @config transform","     * @type String","\t */","\ttransform: {","\t\tsetter: function(val)","\t\t{","            this.matrix.init();","            this._transforms = this.matrix.getTransformArray(val);","            this._transform = val;","            return val;","\t\t},","","        getter: function()","        {","            return this._transform;","        }","\t},","","\t/**","\t * Dom node for the shape","\t *","\t * @config node","\t * @type HTMLElement","\t * @readOnly","\t */","\tnode: {","\t\treadOnly: true,","","\t\tgetter: function()","\t\t{","\t\t\treturn this.node;","\t\t}","\t},","","\t/**","\t * Unique id for class instance.","\t *","\t * @config id","\t * @type String","\t */","\tid: {","\t\tvalueFn: function()","\t\t{","\t\t\treturn Y.guid();","\t\t},","","\t\tsetter: function(val)","\t\t{","\t\t\tvar node = this.node;","\t\t\tif(node)","\t\t\t{","\t\t\t\tnode.setAttribute(\"id\", val);","\t\t\t}","\t\t\treturn val;","\t\t}","\t},","","\t/**","\t * Indicates the width of the shape","\t *","\t * @config width","\t * @type Number","\t */","\twidth: {","        value: 0","    },","","\t/**","\t * Indicates the height of the shape","\t *","\t * @config height","\t * @type Number","\t */","\theight: {","        value: 0","    },","","\t/**","\t * Indicates the x position of shape.","\t *","\t * @config x","\t * @type Number","\t */","\tx: {","\t\tvalue: 0","\t},","","\t/**","\t * Indicates the y position of shape.","\t *","\t * @config y","\t * @type Number","\t */","\ty: {","\t\tvalue: 0","\t},","","\t/**","\t * Indicates whether the shape is visible.","\t *","\t * @config visible","\t * @type Boolean","\t */","\tvisible: {","\t\tvalue: true,","","\t\tsetter: function(val){","\t\t\tvar node = this.get(\"node\"),","                visibility = val ? \"visible\" : \"hidden\";","\t\t\tif(node)","            {","                node.style.visibility = visibility;","            }","\t\t\treturn val;","\t\t}","\t},","","\t/**","\t * Contains information about the fill of the shape.","     *  <dl>","     *      <dt>color</dt><dd>The color of the fill.</dd>","     *      <dt>opacity</dt><dd>Number between 0 and 1 that indicates the opacity of the fill. The default value is 1.</dd>","     *      <dt>type</dt><dd>Type of fill.","     *          <dl>","     *              <dt>solid</dt><dd>Solid single color fill. (default)</dd>","     *              <dt>linear</dt><dd>Linear gradient fill.</dd>","     *              <dt>radial</dt><dd>Radial gradient fill.</dd>","     *          </dl>","     *      </dd>","     *  </dl>","     *  <p>If a `linear` or `radial` is specified as the fill type. The following additional property is used:","     *  <dl>","     *      <dt>stops</dt><dd>An array of objects containing the following properties:","     *          <dl>","     *              <dt>color</dt><dd>The color of the stop.</dd>","     *              <dt>opacity</dt><dd>Number between 0 and 1 that indicates the opacity of the stop. The default value is 1.","     *              Note: No effect for IE 6 - 8</dd>","     *              <dt>offset</dt><dd>Number between 0 and 1 indicating where the color stop is positioned.</dd>","     *          </dl>","     *      </dd>","     *      <p>Linear gradients also have the following property:</p>","     *      <dt>rotation</dt><dd>Linear gradients flow left to right by default. The rotation property allows you to change the","     *      flow by rotation. (e.g. A rotation of 180 would make the gradient pain from right to left.)</dd>","     *      <p>Radial gradients have the following additional properties:</p>","     *      <dt>r</dt><dd>Radius of the gradient circle.</dd>","     *      <dt>fx</dt><dd>Focal point x-coordinate of the gradient.</dd>","     *      <dt>fy</dt><dd>Focal point y-coordinate of the gradient.</dd>","     *  </dl>","     *  <p>The corresponding `SVGShape` class implements the following additional properties.</p>","     *  <dl>","     *      <dt>cx</dt><dd>","     *          <p>The x-coordinate of the center of the gradient circle. Determines where the color stop begins. The default value 0.5.</p>","     *          <p><strong>Note: </strong>Currently, this property is not implemented for corresponding `CanvasShape` and","     *          `VMLShape` classes which are used on Android or IE 6 - 8.</p>","     *      </dd>","     *      <dt>cy</dt><dd>","     *          <p>The y-coordinate of the center of the gradient circle. Determines where the color stop begins. The default value 0.5.</p>","     *          <p><strong>Note: </strong>Currently, this property is not implemented for corresponding `CanvasShape` and `VMLShape`","     *          classes which are used on Android or IE 6 - 8.</p>","     *      </dd>","     *  </dl>","     *  <p>These properties are not currently implemented in `CanvasShape` or `VMLShape`.</p>","\t *","\t * @config fill","\t * @type Object","\t */","\tfill: {","\t\tvalueFn: \"_getDefaultFill\",","","\t\tsetter: function(val)","\t\t{","\t\t\tvar fill,","\t\t\t\ttmpl = this.get(\"fill\") || this._getDefaultFill();","\t\t\tfill = (val) ? Y.merge(tmpl, val) : null;","\t\t\tif(fill && fill.color)","\t\t\t{","\t\t\t\tif(fill.color === undefined || fill.color === \"none\")","\t\t\t\t{","\t\t\t\t\tfill.color = null;","\t\t\t\t}","\t\t\t}","\t\t\tthis._setFillProps(fill);","\t\t\treturn fill;","\t\t}","\t},","","\t/**","\t * Contains information about the stroke of the shape.","     *  <dl>","     *      <dt>color</dt><dd>The color of the stroke.</dd>","     *      <dt>weight</dt><dd>Number that indicates the width of the stroke.</dd>","     *      <dt>opacity</dt><dd>Number between 0 and 1 that indicates the opacity of the stroke. The default value is 1.</dd>","     *      <dt>dashstyle</dt>Indicates whether to draw a dashed stroke. When set to \"none\", a solid stroke is drawn. When set","     *      to an array, the first index indicates the length of the dash. The second index indicates the length of gap.","     *      <dt>linecap</dt><dd>Specifies the linecap for the stroke. The following values can be specified:","     *          <dl>","     *              <dt>butt (default)</dt><dd>Specifies a butt linecap.</dd>","     *              <dt>square</dt><dd>Specifies a sqare linecap.</dd>","     *              <dt>round</dt><dd>Specifies a round linecap.</dd>","     *          </dl>","     *      </dd>","     *      <dt>linejoin</dt><dd>Specifies a linejoin for the stroke. The following values can be specified:","     *          <dl>","     *              <dt>round (default)</dt><dd>Specifies that the linejoin will be round.</dd>","     *              <dt>bevel</dt><dd>Specifies a bevel for the linejoin.</dd>","     *              <dt>miter limit</dt><dd>An integer specifying the miter limit of a miter linejoin. If you want to specify a linejoin","     *              of miter, you simply specify the limit as opposed to having separate miter and miter limit values.</dd>","     *          </dl>","     *      </dd>","     *  </dl>","\t *","\t * @config stroke","\t * @type Object","\t */","\tstroke: {","\t\tvalueFn: \"_getDefaultStroke\",","","\t\tsetter: function(val)","\t\t{","\t\t\tvar tmpl = this.get(\"stroke\") || this._getDefaultStroke(),","                wt;","            if(val && val.hasOwnProperty(\"weight\"))","            {","                wt = parseInt(val.weight, 10);","                if(!isNaN(wt))","                {","                    val.weight = wt;","                }","            }","\t\t\tval = (val) ? Y.merge(tmpl, val) : null;","\t\t\tthis._setStrokeProps(val);","\t\t\treturn val;","\t\t}","\t},","","\t//Not used. Remove in future.","\tautoSize: {","\t\tvalue: false","\t},","","\t// Only implemented in SVG","\t// Determines whether the instance will receive mouse events.","\t//","\t// @config pointerEvents","\t// @type string","\t//","\tpointerEvents: {","\t\tvalue: \"visiblePainted\"","\t},","","    /**","     * Represents an SVG Path string. This will be parsed and added to shape's API to represent the SVG data across all","     * implementations. Note that when using VML or SVG implementations, part of this content will be added to the DOM using","     * respective VML/SVG attributes. If your content comes from an untrusted source, you will need to ensure that no","     * malicious code is included in that content.","     *","     * @config data","     * @type String","     */","    data: {","        setter: function(val)","        {","            if(this.get(\"node\"))","            {","                this._parsePathData(val);","            }","            return val;","        }","    },","","\t/**","\t * Reference to the container Graphic.","\t *","\t * @config graphic","\t * @type Graphic","\t */","\tgraphic: {","\t\treadOnly: true,","","\t\tgetter: function()","\t\t{","\t\t\treturn this._graphic;","\t\t}","    }","};","Y.CanvasShape = CanvasShape;","/**"," * <a href=\"http://www.w3.org/TR/html5/the-canvas-element.html\">Canvas</a> implementation of the <a href=\"Path.html\">`Path`</a> class."," * `CanvasPath` is not intended to be used directly. Instead, use the <a href=\"Path.html\">`Path`</a> class."," * If the browser lacks <a href=\"http://www.w3.org/TR/SVG/\">SVG</a> capabilities but has"," * <a href=\"http://www.w3.org/TR/html5/the-canvas-element.html\">Canvas</a> capabilities, the <a href=\"Path.html\">`Path`</a>"," * class will point to the `CanvasPath` class."," *"," * @module graphics"," * @class CanvasPath"," * @extends CanvasShape"," */","CanvasPath = function()","{","\tCanvasPath.superclass.constructor.apply(this, arguments);","};","CanvasPath.NAME = \"path\";","Y.extend(CanvasPath, Y.CanvasShape, {","    /**","     * Indicates the type of shape","     *","     * @property _type","     * @type String","     * @private","     */","    _type: \"path\",","","\t/**","\t * Draws the shape.","\t *","\t * @method _draw","\t * @private","\t */","    _draw: function()","    {","        this._closePath();","        this._updateTransform();","    },","","\t/**","\t * Creates the dom node for the shape.","\t *","     * @method createNode","\t * @return HTMLElement","\t * @private","\t */","\tcreateNode: function()","\t{","\t\tvar host = this,","            node = Y.config.doc.createElement('canvas'),","\t\t\tname = host.name,","            concat = host._camelCaseConcat,","            id = host.get(\"id\");","\t\thost._context = node.getContext('2d');","\t\tnode.setAttribute(\"overflow\", \"visible\");","        node.setAttribute(\"pointer-events\", \"none\");","        node.style.pointerEvents = \"none\";","        node.style.overflow = \"visible\";","\t\tnode.setAttribute(\"id\", id);","\t\tid = \"#\" + id;","\t\thost.node = node;","\t\thost.addClass(","            _getClassName(SHAPE) +","            \" \" +","            _getClassName(concat(IMPLEMENTATION, SHAPE)) +","            \" \" +","            _getClassName(name) +","            \" \" +","            _getClassName(concat(IMPLEMENTATION, name))","        );","\t},","","    /**","     * Completes a drawing operation.","     *","     * @method end","     */","    end: function()","    {","        this._draw();","        return this;","    }","});","","CanvasPath.ATTRS = Y.merge(Y.CanvasShape.ATTRS, {","\t/**","\t * Indicates the width of the shape","\t *","\t * @config width","\t * @type Number","\t */","\twidth: {","\t\tgetter: function()","\t\t{","\t\t\tvar offset = this._stroke && this._strokeWeight ? (this._strokeWeight * 2) : 0;","\t\t\treturn this._width - offset;","\t\t},","","\t\tsetter: function(val)","\t\t{","\t\t\tthis._width = val;","\t\t\treturn val;","\t\t}","\t},","","\t/**","\t * Indicates the height of the shape","\t *","\t * @config height","\t * @type Number","\t */","\theight: {","\t\tgetter: function()","\t\t{","\t\t\tvar offset = this._stroke && this._strokeWeight ? (this._strokeWeight * 2) : 0;","            return this._height - offset;","\t\t},","","\t\tsetter: function(val)","\t\t{","\t\t\tthis._height = val;","\t\t\treturn val;","\t\t}","\t},","","\t/**","\t * Indicates the path used for the node.","\t *","\t * @config path","\t * @type String","     * @readOnly","\t */","\tpath: {","        readOnly: true,","","\t\tgetter: function()","\t\t{","\t\t\treturn this._path;","\t\t}","\t}","});","Y.CanvasPath = CanvasPath;","/**"," * <a href=\"http://www.w3.org/TR/html5/the-canvas-element.html\">Canvas</a> implementation of the <a href=\"Rect.html\">`Rect`</a> class."," * `CanvasRect` is not intended to be used directly. Instead, use the <a href=\"Rect.html\">`Rect`</a> class."," * If the browser lacks <a href=\"http://www.w3.org/TR/SVG/\">SVG</a> capabilities but has"," * <a href=\"http://www.w3.org/TR/html5/the-canvas-element.html\">Canvas</a> capabilities, the <a href=\"Rect.html\">`Rect`</a>"," * class will point to the `CanvasRect` class."," *"," * @module graphics"," * @class CanvasRect"," * @constructor"," */","CanvasRect = function()","{","\tCanvasRect.superclass.constructor.apply(this, arguments);","};","CanvasRect.NAME = \"rect\";","Y.extend(CanvasRect, Y.CanvasShape, {","\t/**","\t * Indicates the type of shape","\t *","\t * @property _type","\t * @type String","     * @private","\t */","\t_type: \"rect\",","","\t/**","\t * Draws the shape.","\t *","\t * @method _draw","\t * @private","\t */","\t_draw: function()","\t{","\t\tvar w = this.get(\"width\"),","\t\t\th = this.get(\"height\");","\t\tthis.clear();","        this.drawRect(0, 0, w, h);","\t\tthis._closePath();","\t}","});","CanvasRect.ATTRS = Y.CanvasShape.ATTRS;","Y.CanvasRect = CanvasRect;","/**"," * <a href=\"http://www.w3.org/TR/html5/the-canvas-element.html\">Canvas</a> implementation of the <a href=\"Ellipse.html\">`Ellipse`</a> class."," * `CanvasEllipse` is not intended to be used directly. Instead, use the <a href=\"Ellipse.html\">`Ellipse`</a> class."," * If the browser lacks <a href=\"http://www.w3.org/TR/SVG/\">SVG</a> capabilities but has"," * <a href=\"http://www.w3.org/TR/html5/the-canvas-element.html\">Canvas</a> capabilities, the <a href=\"Ellipse.html\">`Ellipse`</a>"," * class will point to the `CanvasEllipse` class."," *"," * @module graphics"," * @class CanvasEllipse"," * @constructor"," */","CanvasEllipse = function()","{","\tCanvasEllipse.superclass.constructor.apply(this, arguments);","};","","CanvasEllipse.NAME = \"ellipse\";","","Y.extend(CanvasEllipse, CanvasShape, {","\t/**","\t * Indicates the type of shape","\t *","\t * @property _type","\t * @type String","     * @private","\t */","\t_type: \"ellipse\",","","\t/**","     * Draws the shape.","     *","     * @method _draw","\t * @private","\t */","\t_draw: function()","\t{","\t\tvar w = this.get(\"width\"),","\t\t\th = this.get(\"height\");","\t\tthis.clear();","        this.drawEllipse(0, 0, w, h);","\t\tthis._closePath();","\t}","});","CanvasEllipse.ATTRS = Y.merge(CanvasShape.ATTRS, {","\t/**","\t * Horizontal radius for the ellipse.","\t *","\t * @config xRadius","\t * @type Number","\t */","\txRadius: {","\t\tsetter: function(val)","\t\t{","\t\t\tthis.set(\"width\", val * 2);","\t\t},","","\t\tgetter: function()","\t\t{","\t\t\tvar val = this.get(\"width\");","\t\t\tif(val)","\t\t\t{","\t\t\t\tval *= 0.5;","\t\t\t}","\t\t\treturn val;","\t\t}","\t},","","\t/**","\t * Vertical radius for the ellipse.","\t *","\t * @config yRadius","\t * @type Number","\t * @readOnly","\t */","\tyRadius: {","\t\tsetter: function(val)","\t\t{","\t\t\tthis.set(\"height\", val * 2);","\t\t},","","\t\tgetter: function()","\t\t{","\t\t\tvar val = this.get(\"height\");","\t\t\tif(val)","\t\t\t{","\t\t\t\tval *= 0.5;","\t\t\t}","\t\t\treturn val;","\t\t}","\t}","});","Y.CanvasEllipse = CanvasEllipse;","/**"," * <a href=\"http://www.w3.org/TR/html5/the-canvas-element.html\">Canvas</a> implementation of the <a href=\"Circle.html\">`Circle`</a> class."," * `CanvasCircle` is not intended to be used directly. Instead, use the <a href=\"Circle.html\">`Circle`</a> class."," * If the browser lacks <a href=\"http://www.w3.org/TR/SVG/\">SVG</a> capabilities but has"," * <a href=\"http://www.w3.org/TR/html5/the-canvas-element.html\">Canvas</a> capabilities, the <a href=\"Circle.html\">`Circle`</a>"," * class will point to the `CanvasCircle` class."," *"," * @module graphics"," * @class CanvasCircle"," * @constructor"," */","CanvasCircle = function()","{","\tCanvasCircle.superclass.constructor.apply(this, arguments);","};","","CanvasCircle.NAME = \"circle\";","","Y.extend(CanvasCircle, Y.CanvasShape, {","\t/**","\t * Indicates the type of shape","\t *","\t * @property _type","\t * @type String","     * @private","\t */","\t_type: \"circle\",","","\t/**","     * Draws the shape.","     *","     * @method _draw","\t * @private","\t */","\t_draw: function()","\t{","\t\tvar radius = this.get(\"radius\");","\t\tif(radius)","\t\t{","            this.clear();","            this.drawCircle(0, 0, radius);","\t\t\tthis._closePath();","\t\t}","\t}","});","","CanvasCircle.ATTRS = Y.merge(Y.CanvasShape.ATTRS, {","\t/**","\t * Indicates the width of the shape","\t *","\t * @config width","\t * @type Number","\t */","\twidth: {","        setter: function(val)","        {","            this.set(\"radius\", val/2);","            return val;","        },","","\t\tgetter: function()","\t\t{","\t\t\treturn this.get(\"radius\") * 2;","\t\t}","\t},","","\t/**","\t * Indicates the height of the shape","\t *","\t * @config height","\t * @type Number","\t */","\theight: {","        setter: function(val)","        {","            this.set(\"radius\", val/2);","            return val;","        },","","\t\tgetter: function()","\t\t{","\t\t\treturn this.get(\"radius\") * 2;","\t\t}","\t},","","\t/**","\t * Radius of the circle","\t *","\t * @config radius","     * @type Number","\t */","\tradius: {","\t\tlazyAdd: false","\t}","});","Y.CanvasCircle = CanvasCircle;","/**"," * Draws pie slices"," *"," * @module graphics"," * @class CanvasPieSlice"," * @constructor"," */","CanvasPieSlice = function()","{","\tCanvasPieSlice.superclass.constructor.apply(this, arguments);","};","CanvasPieSlice.NAME = \"canvasPieSlice\";","Y.extend(CanvasPieSlice, Y.CanvasShape, {","    /**","     * Indicates the type of shape","     *","     * @property _type","     * @type String","     * @private","     */","    _type: \"path\",","","\t/**","\t * Change event listener","\t *","\t * @private","\t * @method _updateHandler","\t */","\t_draw: function()","\t{","        var x = this.get(\"cx\"),","            y = this.get(\"cy\"),","            startAngle = this.get(\"startAngle\"),","            arc = this.get(\"arc\"),","            radius = this.get(\"radius\");","        this.clear();","        this._left = x;","        this._right = radius;","        this._top = y;","        this._bottom = radius;","        this.drawWedge(x, y, startAngle, arc, radius);","\t\tthis.end();","\t}"," });","CanvasPieSlice.ATTRS = Y.mix({","    cx: {","        value: 0","    },","","    cy: {","        value: 0","    },","    /**","     * Starting angle in relation to a circle in which to begin the pie slice drawing.","     *","     * @config startAngle","     * @type Number","     */","    startAngle: {","        value: 0","    },","","    /**","     * Arc of the slice.","     *","     * @config arc","     * @type Number","     */","    arc: {","        value: 0","    },","","    /**","     * Radius of the circle in which the pie slice is drawn","     *","     * @config radius","     * @type Number","     */","    radius: {","        value: 0","    }","}, Y.CanvasShape.ATTRS);","Y.CanvasPieSlice = CanvasPieSlice;","/**"," * <a href=\"http://www.w3.org/TR/html5/the-canvas-element.html\">Canvas</a> implementation of the `Graphic` class."," * `CanvasGraphic` is not intended to be used directly. Instead, use the <a href=\"Graphic.html\">`Graphic`</a> class."," * If the browser lacks <a href=\"http://www.w3.org/TR/SVG/\">SVG</a> capabilities but has"," * <a href=\"http://www.w3.org/TR/html5/the-canvas-element.html\">Canvas</a> capabilities, the <a href=\"Graphic.html\">`Graphic`</a>"," * class will point to the `CanvasGraphic` class."," *"," * @module graphics"," * @class CanvasGraphic"," * @constructor"," */","function CanvasGraphic() {","","    CanvasGraphic.superclass.constructor.apply(this, arguments);","}","","CanvasGraphic.NAME = \"canvasGraphic\";","","CanvasGraphic.ATTRS = {","    /**","     * Whether or not to render the `Graphic` automatically after to a specified parent node after init. This can be a Node","     * instance or a CSS selector string.","     *","     * @config render","     * @type Node | String","     */","    render: {},","","    /**","\t * Unique id for class instance.","\t *","\t * @config id","\t * @type String","\t */","\tid: {","\t\tvalueFn: function()","\t\t{","\t\t\treturn Y.guid();","\t\t},","","\t\tsetter: function(val)","\t\t{","\t\t\tvar node = this._node;","\t\t\tif(node)","\t\t\t{","\t\t\t\tnode.setAttribute(\"id\", val);","\t\t\t}","\t\t\treturn val;","\t\t}","\t},","","    /**","     * Key value pairs in which a shape instance is associated with its id.","     *","     *  @config shapes","     *  @type Object","     *  @readOnly","     */","    shapes: {","        readOnly: true,","","        getter: function()","        {","            return this._shapes;","        }","    },","","    /**","     *  Object containing size and coordinate data for the content of a Graphic in relation to the graphic instance's position.","     *","     *  @config contentBounds","     *  @type Object","     *  @readOnly","     */","    contentBounds: {","        readOnly: true,","","        getter: function()","        {","            return this._contentBounds;","        }","    },","","    /**","     *  The outermost html element of the Graphic instance.","     *","     *  @config node","     *  @type HTMLElement","     *  @readOnly","     */","    node: {","        readOnly: true,","","        getter: function()","        {","            return this._node;","        }","    },","","\t/**","\t * Indicates the width of the `Graphic`.","\t *","\t * @config width","\t * @type Number","\t */","    width: {","        setter: function(val)","        {","            if(this._node)","            {","                this._node.style.width = val + \"px\";","            }","            return val;","        }","    },","","\t/**","\t * Indicates the height of the `Graphic`.","\t *","\t * @config height","\t * @type Number","\t */","    height: {","        setter: function(val)","        {","            if(this._node)","            {","                this._node.style.height = val + \"px\";","            }","            return val;","        }","    },","","    /**","     *  Determines the sizing of the Graphic.","     *","     *  <dl>","     *      <dt>sizeContentToGraphic</dt><dd>The Graphic's width and height attributes are, either explicitly set through the","     *      <code>width</code> and <code>height</code> attributes or are determined by the dimensions of the parent element. The","     *      content contained in the Graphic will be sized to fit with in the Graphic instance's dimensions. When using this","     *      setting, the <code>preserveAspectRatio</code> attribute will determine how the contents are sized.</dd>","     *      <dt>sizeGraphicToContent</dt><dd>(Also accepts a value of true) The Graphic's width and height are determined by the","     *      size and positioning of the content.</dd>","     *      <dt>false</dt><dd>The Graphic's width and height attributes are, either explicitly set through the <code>width</code>","     *      and <code>height</code> attributes or are determined by the dimensions of the parent element. The contents of the","     *      Graphic instance are not affected by this setting.</dd>","     *  </dl>","     *","     *","     *  @config autoSize","     *  @type Boolean | String","     *  @default false","     */","    autoSize: {","        value: false","    },","","    /**","     * Determines how content is sized when <code>autoSize</code> is set to <code>sizeContentToGraphic</code>.","     *","     *  <dl>","     *      <dt>none<dt><dd>Do not force uniform scaling. Scale the graphic content of the given element non-uniformly if necessary","     *      such that the element's bounding box exactly matches the viewport rectangle.</dd>","     *      <dt>xMinYMin</dt><dd>Force uniform scaling position along the top left of the Graphic's node.</dd>","     *      <dt>xMidYMin</dt><dd>Force uniform scaling horizontally centered and positioned at the top of the Graphic's node.<dd>","     *      <dt>xMaxYMin</dt><dd>Force uniform scaling positioned horizontally from the right and vertically from the top.</dd>","     *      <dt>xMinYMid</dt>Force uniform scaling positioned horizontally from the left and vertically centered.</dd>","     *      <dt>xMidYMid (the default)</dt><dd>Force uniform scaling with the content centered.</dd>","     *      <dt>xMaxYMid</dt><dd>Force uniform scaling positioned horizontally from the right and vertically centered.</dd>","     *      <dt>xMinYMax</dt><dd>Force uniform scaling positioned horizontally from the left and vertically from the bottom.</dd>","     *      <dt>xMidYMax</dt><dd>Force uniform scaling horizontally centered and position vertically from the bottom.</dd>","     *      <dt>xMaxYMax</dt><dd>Force uniform scaling positioned horizontally from the right and vertically from the bottom.</dd>","     *  </dl>","     *","     * @config preserveAspectRatio","     * @type String","     * @default xMidYMid","     */","    preserveAspectRatio: {","        value: \"xMidYMid\"","    },","","    /**","     * The contentBounds will resize to greater values but not smaller values. (for performance)","     * When resizing the contentBounds down is desirable, set the resizeDown value to true.","     *","     * @config resizeDown","     * @type Boolean","     */","    resizeDown: {","        value: false","    },","","\t/**","\t * Indicates the x-coordinate for the instance.","\t *","\t * @config x","\t * @type Number","\t */","    x: {","        getter: function()","        {","            return this._x;","        },","","        setter: function(val)","        {","            this._x = val;","            if(this._node)","            {","                this._node.style.left = val + \"px\";","            }","            return val;","        }","    },","","\t/**","\t * Indicates the y-coordinate for the instance.","\t *","\t * @config y","\t * @type Number","\t */","    y: {","        getter: function()","        {","            return this._y;","        },","","        setter: function(val)","        {","            this._y = val;","            if(this._node)","            {","                this._node.style.top = val + \"px\";","            }","            return val;","        }","    },","","    /**","     * Indicates whether or not the instance will automatically redraw after a change is made to a shape.","     * This property will get set to false when batching operations.","     *","     * @config autoDraw","     * @type Boolean","     * @default true","     * @private","     */","    autoDraw: {","        value: true","    },","","\t/**","\t * Indicates whether the `Graphic` and its children are visible.","\t *","\t * @config visible","\t * @type Boolean","\t */","    visible: {","        value: true,","","        setter: function(val)","        {","            this._toggleVisible(val);","            return val;","        }","    }","};","","Y.extend(CanvasGraphic, Y.GraphicBase, {","    /**","     * Sets the value of an attribute.","     *","     * @method set","     * @param {String|Object} name The name of the attribute. Alternatively, an object of key value pairs can","     * be passed in to set multiple attributes at once.","     * @param {Any} value The value to set the attribute to. This value is ignored if an object is received as","     * the name param.","     */","\tset: function()","\t{","\t\tvar host = this,","            attr = arguments[0],","            redrawAttrs = {","                autoDraw: true,","                autoSize: true,","                preserveAspectRatio: true,","                resizeDown: true","            },","            key,","            forceRedraw = false;","\t\tAttributeLite.prototype.set.apply(host, arguments);","        if(host._state.autoDraw === true && Y.Object.size(this._shapes) > 0)","        {","            if(Y_LANG.isString && redrawAttrs[attr])","            {","                forceRedraw = true;","            }","            else if(Y_LANG.isObject(attr))","            {","                for(key in redrawAttrs)","                {","                    if(redrawAttrs.hasOwnProperty(key) && attr[key])","                    {","                        forceRedraw = true;","                        break;","                    }","                }","            }","        }","        if(forceRedraw)","        {","            host._redraw();","        }","\t},","","    /**","     * Storage for `x` attribute.","     *","     * @property _x","     * @type Number","     * @private","     */","    _x: 0,","","    /**","     * Storage for `y` attribute.","     *","     * @property _y","     * @type Number","     * @private","     */","    _y: 0,","","    /**","     * Gets the current position of the graphic instance in page coordinates.","     *","     * @method getXY","     * @return Array The XY position of the shape.","     */","    getXY: function()","    {","        var node = this._node,","            xy;","        if(node)","        {","            xy = Y.DOM.getXY(node);","        }","        return xy;","    },","","\t/**","     * Initializes the class.","     *","     * @method initializer","     * @param {Object} config Optional attributes","     * @private","     */","    initializer: function() {","        var render = this.get(\"render\"),","            visibility = this.get(\"visible\") ? \"visible\" : \"hidden\",","            w = this.get(\"width\") || 0,","            h = this.get(\"height\") || 0;","        this._shapes = {};","        this._redrawQueue = {};","\t\tthis._contentBounds = {","            left: 0,","            top: 0,","            right: 0,","            bottom: 0","        };","        this._node = DOCUMENT.createElement('div');","        this._node.style.position = \"absolute\";","        this._node.style.visibility = visibility;","        this.set(\"width\", w);","        this.set(\"height\", h);","        if(render)","        {","            this.render(render);","        }","    },","","    /**","     * Adds the graphics node to the dom.","     *","     * @method render","     * @param {HTMLElement} parentNode node in which to render the graphics node into.","     */","    render: function(render) {","        var parentNode = render || DOCUMENT.body,","            node = this._node,","            w,","            h;","        if(render instanceof Y.Node)","        {","            parentNode = render._node;","        }","        else if(Y.Lang.isString(render))","        {","            parentNode = Y.Selector.query(render, DOCUMENT.body, true);","        }","        w = this.get(\"width\") || parseInt(Y.DOM.getComputedStyle(parentNode, \"width\"), 10);","        h = this.get(\"height\") || parseInt(Y.DOM.getComputedStyle(parentNode, \"height\"), 10);","        parentNode.appendChild(node);","        node.style.display = \"block\";","        node.style.position = \"absolute\";","        node.style.left = this.get(\"x\") + \"px\";","        node.style.top = this.get(\"y\") + \"px\";","        this.set(\"width\", w);","        this.set(\"height\", h);","        this.parentNode = parentNode;","        return this;","    },","","    /**","     * Removes all nodes.","     *","     * @method destroy","     */","    destroy: function()","    {","        this.removeAllShapes();","        if(this._node)","        {","            this._removeChildren(this._node);","            if(this._node.parentNode)","            {","                this._node.parentNode.removeChild(this._node);","            }","            this._node = null;","        }","    },","","    /**","     * Generates a shape instance by type.","     *","     * @method addShape","     * @param {Object} cfg attributes for the shape","     * @return Shape","     */","    addShape: function(cfg)","    {","        cfg.graphic = this;","        if(!this.get(\"visible\"))","        {","            cfg.visible = false;","        }","        var ShapeClass = this._getShapeClass(cfg.type),","            shape = new ShapeClass(cfg);","        this._appendShape(shape);","        return shape;","    },","","    /**","     * Adds a shape instance to the graphic instance.","     *","     * @method _appendShape","     * @param {Shape} shape The shape instance to be added to the graphic.","     * @private","     */","    _appendShape: function(shape)","    {","        var node = shape.node,","            parentNode = this._frag || this._node;","        if(this.get(\"autoDraw\"))","        {","            parentNode.appendChild(node);","        }","        else","        {","            this._getDocFrag().appendChild(node);","        }","    },","","    /**","     * Removes a shape instance from from the graphic instance.","     *","     * @method removeShape","     * @param {Shape|String} shape The instance or id of the shape to be removed.","     */","    removeShape: function(shape)","    {","        if(!(shape instanceof CanvasShape))","        {","            if(Y_LANG.isString(shape))","            {","                shape = this._shapes[shape];","            }","        }","        if(shape && shape instanceof CanvasShape)","        {","            shape._destroy();","            delete this._shapes[shape.get(\"id\")];","        }","        if(this.get(\"autoDraw\"))","        {","            this._redraw();","        }","        return shape;","    },","","    /**","     * Removes all shape instances from the dom.","     *","     * @method removeAllShapes","     */","    removeAllShapes: function()","    {","        var shapes = this._shapes,","            i;","        for(i in shapes)","        {","            if(shapes.hasOwnProperty(i))","            {","                shapes[i].destroy();","            }","        }","        this._shapes = {};","    },","","    /**","     * Clears the graphics object.","     *","     * @method clear","     */","    clear: function() {","        this.removeAllShapes();","    },","","    /**","     * Removes all child nodes.","     *","     * @method _removeChildren","     * @param {HTMLElement} node","     * @private","     */","    _removeChildren: function(node)","    {","        if(node && node.hasChildNodes())","        {","            var child;","            while(node.firstChild)","            {","                child = node.firstChild;","                this._removeChildren(child);","                node.removeChild(child);","            }","        }","    },","","    /**","     * Toggles visibility","     *","     * @method _toggleVisible","     * @param {Boolean} val indicates visibilitye","     * @private","     */","    _toggleVisible: function(val)","    {","        var i,","            shapes = this._shapes,","            visibility = val ? \"visible\" : \"hidden\";","        if(shapes)","        {","            for(i in shapes)","            {","                if(shapes.hasOwnProperty(i))","                {","                    shapes[i].set(\"visible\", val);","                }","            }","        }","        if(this._node)","        {","            this._node.style.visibility = visibility;","        }","    },","","    /**","     * Returns a shape class. Used by `addShape`.","     *","     * @method _getShapeClass","     * @param {Shape | String} val Indicates which shape class.","     * @return Function","     * @private","     */","    _getShapeClass: function(val)","    {","        var shape = this._shapeClass[val];","        if(shape)","        {","            return shape;","        }","        return val;","    },","","    /**","     * Look up for shape classes. Used by `addShape` to retrieve a class for instantiation.","     *","     * @property _shapeClass","     * @type Object","     * @private","     */","    _shapeClass: {","        circle: Y.CanvasCircle,","        rect: Y.CanvasRect,","        path: Y.CanvasPath,","        ellipse: Y.CanvasEllipse,","        pieslice: Y.CanvasPieSlice","    },","","    /**","     * Returns a shape based on the id of its dom node.","     *","     * @method getShapeById","     * @param {String} id Dom id of the shape's node attribute.","     * @return Shape","     */","    getShapeById: function(id)","    {","        var shape = this._shapes[id];","        return shape;","    },","","\t/**","\t * Allows for creating multiple shapes in order to batch appending and redraw operations.","\t *","\t * @method batch","\t * @param {Function} method Method to execute.","\t */","    batch: function(method)","    {","        var autoDraw = this.get(\"autoDraw\");","        this.set(\"autoDraw\", false);","        method();","        this.set(\"autoDraw\", autoDraw);","    },","","    /**","     * Returns a document fragment to for attaching shapes.","     *","     * @method _getDocFrag","     * @return DocumentFragment","     * @private","     */","    _getDocFrag: function()","    {","        if(!this._frag)","        {","            this._frag = DOCUMENT.createDocumentFragment();","        }","        return this._frag;","    },","","    /**","     * Redraws all shapes.","     *","     * @method _redraw","     * @private","     */","    _redraw: function()","    {","        var autoSize = this.get(\"autoSize\"),","            preserveAspectRatio = this.get(\"preserveAspectRatio\"),","            box = this.get(\"resizeDown\") ? this._getUpdatedContentBounds() : this._contentBounds,","            contentWidth,","            contentHeight,","            w,","            h,","            xScale,","            yScale,","            translateX = 0,","            translateY = 0,","            matrix,","            node = this.get(\"node\");","        if(autoSize)","        {","            if(autoSize === \"sizeContentToGraphic\")","            {","                contentWidth = box.right - box.left;","                contentHeight = box.bottom - box.top;","                w = parseFloat(Y_DOM.getComputedStyle(node, \"width\"));","                h = parseFloat(Y_DOM.getComputedStyle(node, \"height\"));","                matrix = new Y.Matrix();","                if(preserveAspectRatio === \"none\")","                {","                    xScale = w/contentWidth;","                    yScale = h/contentHeight;","                }","                else","                {","                    if(contentWidth/contentHeight !== w/h)","                    {","                        if(contentWidth * h/contentHeight > w)","                        {","                            xScale = yScale = w/contentWidth;","                            translateY = this._calculateTranslate(preserveAspectRatio.slice(5).toLowerCase(), contentHeight * w/contentWidth, h);","                        }","                        else","                        {","                            xScale = yScale = h/contentHeight;","                            translateX = this._calculateTranslate(preserveAspectRatio.slice(1, 4).toLowerCase(), contentWidth * h/contentHeight, w);","                        }","                    }","                }","                Y_DOM.setStyle(node, \"transformOrigin\", \"0% 0%\");","                translateX = translateX - (box.left * xScale);","                translateY = translateY - (box.top * yScale);","                matrix.translate(translateX, translateY);","                matrix.scale(xScale, yScale);","                Y_DOM.setStyle(node, \"transform\", matrix.toCSSText());","            }","            else","            {","                this.set(\"width\", box.right);","                this.set(\"height\", box.bottom);","            }","        }","        if(this._frag)","        {","            this._node.appendChild(this._frag);","            this._frag = null;","        }","    },","","    /**","     * Determines the value for either an x or y value to be used for the <code>translate</code> of the Graphic.","     *","     * @method _calculateTranslate","     * @param {String} position The position for placement. Possible values are min, mid and max.","     * @param {Number} contentSize The total size of the content.","     * @param {Number} boundsSize The total size of the Graphic.","     * @return Number","     * @private","     */","    _calculateTranslate: function(position, contentSize, boundsSize)","    {","        var ratio = boundsSize - contentSize,","            coord;","        switch(position)","        {","            case \"mid\" :","                coord = ratio * 0.5;","            break;","            case \"max\" :","                coord = ratio;","            break;","            default :","                coord = 0;","            break;","        }","        return coord;","    },","","    /**","     * Adds a shape to the redraw queue and calculates the contentBounds. Used internally","     * by `Shape` instances.","     *","     * @method addToRedrawQueue","     * @param Shape shape The shape instance to add to the queue","     * @protected","     */","    addToRedrawQueue: function(shape)","    {","        var shapeBox,","            box;","        this._shapes[shape.get(\"id\")] = shape;","        if(!this.get(\"resizeDown\"))","        {","            shapeBox = shape.getBounds();","            box = this._contentBounds;","            box.left = box.left < shapeBox.left ? box.left : shapeBox.left;","            box.top = box.top < shapeBox.top ? box.top : shapeBox.top;","            box.right = box.right > shapeBox.right ? box.right : shapeBox.right;","            box.bottom = box.bottom > shapeBox.bottom ? box.bottom : shapeBox.bottom;","            this._contentBounds = box;","        }","        if(this.get(\"autoDraw\"))","        {","            this._redraw();","        }","    },","","    /**","     * Recalculates and returns the `contentBounds` for the `Graphic` instance.","     *","     * @method _getUpdatedContentBounds","     * @return {Object}","     * @private","     */","    _getUpdatedContentBounds: function()","    {","        var bounds,","            i,","            shape,","            queue = this._shapes,","            box = {};","        for(i in queue)","        {","            if(queue.hasOwnProperty(i))","            {","                shape = queue[i];","                bounds = shape.getBounds();","                box.left = Y_LANG.isNumber(box.left) ? Math.min(box.left, bounds.left) : bounds.left;","                box.top = Y_LANG.isNumber(box.top) ? Math.min(box.top, bounds.top) : bounds.top;","                box.right = Y_LANG.isNumber(box.right) ? Math.max(box.right, bounds.right) : bounds.right;","                box.bottom = Y_LANG.isNumber(box.bottom) ? Math.max(box.bottom, bounds.bottom) : bounds.bottom;","            }","        }","        box.left = Y_LANG.isNumber(box.left) ? box.left : 0;","        box.top = Y_LANG.isNumber(box.top) ? box.top : 0;","        box.right = Y_LANG.isNumber(box.right) ? box.right : 0;","        box.bottom = Y_LANG.isNumber(box.bottom) ? box.bottom : 0;","        this._contentBounds = box;","        return box;","    },","","    /**","     * Inserts shape on the top of the tree.","     *","     * @method _toFront","     * @param {CanvasShape} Shape to add.","     * @private","     */","    _toFront: function(shape)","    {","        var contentNode = this.get(\"node\");","        if(shape instanceof Y.CanvasShape)","        {","            shape = shape.get(\"node\");","        }","        if(contentNode && shape)","        {","            contentNode.appendChild(shape);","        }","    },","","    /**","     * Inserts shape as the first child of the content node.","     *","     * @method _toBack","     * @param {CanvasShape} Shape to add.","     * @private","     */","    _toBack: function(shape)","    {","        var contentNode = this.get(\"node\"),","            targetNode;","        if(shape instanceof Y.CanvasShape)","        {","            shape = shape.get(\"node\");","        }","        if(contentNode && shape)","        {","            targetNode = contentNode.firstChild;","            if(targetNode)","            {","                contentNode.insertBefore(shape, targetNode);","            }","            else","            {","                contentNode.appendChild(shape);","            }","        }","    }","});","","Y.CanvasGraphic = CanvasGraphic;","","","}, '@VERSION@', {\"requires\": [\"graphics\"]});","","}());"]};
}
var __cov_AYKecnXg3b5jlAls2sgBIg = __coverage__['build/graphics-canvas/graphics-canvas.js'];
__cov_AYKecnXg3b5jlAls2sgBIg.s['1']++;YUI.add('graphics-canvas',function(Y,NAME){__cov_AYKecnXg3b5jlAls2sgBIg.f['1']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['2']++;var IMPLEMENTATION='canvas',SHAPE='shape',SPLITPATHPATTERN=/[a-z][^a-z]*/gi,SPLITARGSPATTERN=/[\-]?[0-9]*[0-9|\.][0-9]*/g,DOCUMENT=Y.config.doc,Y_LANG=Y.Lang,AttributeLite=Y.AttributeLite,CanvasShape,CanvasPath,CanvasRect,CanvasEllipse,CanvasCircle,CanvasPieSlice,Y_DOM=Y.DOM,Y_Color=Y.Color,PARSE_INT=parseInt,PARSE_FLOAT=parseFloat,IS_NUMBER=Y_LANG.isNumber,RE=RegExp,TORGB=Y_Color.toRGB,TOHEX=Y_Color.toHex,_getClassName=Y.ClassNameManager.getClassName;__cov_AYKecnXg3b5jlAls2sgBIg.s['3']++;function CanvasDrawing(){__cov_AYKecnXg3b5jlAls2sgBIg.f['2']++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['4']++;CanvasDrawing.prototype={_pathSymbolToMethod:{M:'moveTo',m:'relativeMoveTo',L:'lineTo',l:'relativeLineTo',C:'curveTo',c:'relativeCurveTo',Q:'quadraticCurveTo',q:'relativeQuadraticCurveTo',z:'closePath',Z:'closePath'},_currentX:0,_currentY:0,_toRGBA:function(val,alpha){__cov_AYKecnXg3b5jlAls2sgBIg.f['3']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['5']++;alpha=alpha!==undefined?(__cov_AYKecnXg3b5jlAls2sgBIg.b['1'][0]++,alpha):(__cov_AYKecnXg3b5jlAls2sgBIg.b['1'][1]++,1);__cov_AYKecnXg3b5jlAls2sgBIg.s['6']++;if(!Y_Color.re_RGB.test(val)){__cov_AYKecnXg3b5jlAls2sgBIg.b['2'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['7']++;val=TOHEX(val);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['2'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['8']++;if(Y_Color.re_hex.exec(val)){__cov_AYKecnXg3b5jlAls2sgBIg.b['3'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['9']++;val='rgba('+[PARSE_INT(RE.$1,16),PARSE_INT(RE.$2,16),PARSE_INT(RE.$3,16)].join(',')+','+alpha+')';}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['3'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['10']++;return val;},_toRGB:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['4']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['11']++;return TORGB(val);},setSize:function(w,h){__cov_AYKecnXg3b5jlAls2sgBIg.f['5']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['12']++;if(this.get('autoSize')){__cov_AYKecnXg3b5jlAls2sgBIg.b['4'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['13']++;if(w>this.node.getAttribute('width')){__cov_AYKecnXg3b5jlAls2sgBIg.b['5'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['14']++;this.node.style.width=w+'px';__cov_AYKecnXg3b5jlAls2sgBIg.s['15']++;this.node.setAttribute('width',w);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['5'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['16']++;if(h>this.node.getAttribute('height')){__cov_AYKecnXg3b5jlAls2sgBIg.b['6'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['17']++;this.node.style.height=h+'px';__cov_AYKecnXg3b5jlAls2sgBIg.s['18']++;this.node.setAttribute('height',h);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['6'][1]++;}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['4'][1]++;}},_updateCoords:function(x,y){__cov_AYKecnXg3b5jlAls2sgBIg.f['6']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['19']++;this._xcoords.push(x);__cov_AYKecnXg3b5jlAls2sgBIg.s['20']++;this._ycoords.push(y);__cov_AYKecnXg3b5jlAls2sgBIg.s['21']++;this._currentX=x;__cov_AYKecnXg3b5jlAls2sgBIg.s['22']++;this._currentY=y;},_clearAndUpdateCoords:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['7']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['23']++;var x=(__cov_AYKecnXg3b5jlAls2sgBIg.b['7'][0]++,this._xcoords.pop())||(__cov_AYKecnXg3b5jlAls2sgBIg.b['7'][1]++,0),y=(__cov_AYKecnXg3b5jlAls2sgBIg.b['8'][0]++,this._ycoords.pop())||(__cov_AYKecnXg3b5jlAls2sgBIg.b['8'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['24']++;this._updateCoords(x,y);},_updateNodePosition:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['8']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['25']++;var node=this.get('node'),x=this.get('x'),y=this.get('y');__cov_AYKecnXg3b5jlAls2sgBIg.s['26']++;node.style.position='absolute';__cov_AYKecnXg3b5jlAls2sgBIg.s['27']++;node.style.left=x+this._left+'px';__cov_AYKecnXg3b5jlAls2sgBIg.s['28']++;node.style.top=y+this._top+'px';},_updateDrawingQueue:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['9']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['29']++;this._methods.push(val);},lineTo:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['10']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['30']++;this._lineTo.apply(this,[Y.Array(arguments),false]);__cov_AYKecnXg3b5jlAls2sgBIg.s['31']++;return this;},relativeLineTo:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['11']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['32']++;this._lineTo.apply(this,[Y.Array(arguments),true]);__cov_AYKecnXg3b5jlAls2sgBIg.s['33']++;return this;},_lineTo:function(args,relative){__cov_AYKecnXg3b5jlAls2sgBIg.f['12']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['34']++;var point1=args[0],i,len,x,y,wt=(__cov_AYKecnXg3b5jlAls2sgBIg.b['10'][0]++,this._stroke)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['10'][1]++,this._strokeWeight)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['9'][0]++,this._strokeWeight):(__cov_AYKecnXg3b5jlAls2sgBIg.b['9'][1]++,0),relativeX=relative?(__cov_AYKecnXg3b5jlAls2sgBIg.b['11'][0]++,parseFloat(this._currentX)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['11'][1]++,0),relativeY=relative?(__cov_AYKecnXg3b5jlAls2sgBIg.b['12'][0]++,parseFloat(this._currentY)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['12'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['35']++;if(!this._lineToMethods){__cov_AYKecnXg3b5jlAls2sgBIg.b['13'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['36']++;this._lineToMethods=[];}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['13'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['37']++;len=args.length-1;__cov_AYKecnXg3b5jlAls2sgBIg.s['38']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['15'][0]++,typeof point1==='string')||(__cov_AYKecnXg3b5jlAls2sgBIg.b['15'][1]++,typeof point1==='number')){__cov_AYKecnXg3b5jlAls2sgBIg.b['14'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['39']++;for(i=0;i<len;i=i+2){__cov_AYKecnXg3b5jlAls2sgBIg.s['40']++;x=parseFloat(args[i]);__cov_AYKecnXg3b5jlAls2sgBIg.s['41']++;y=parseFloat(args[i+1]);__cov_AYKecnXg3b5jlAls2sgBIg.s['42']++;x=x+relativeX;__cov_AYKecnXg3b5jlAls2sgBIg.s['43']++;y=y+relativeY;__cov_AYKecnXg3b5jlAls2sgBIg.s['44']++;this._updateDrawingQueue(['lineTo',x,y]);__cov_AYKecnXg3b5jlAls2sgBIg.s['45']++;this._trackSize(x-wt,y-wt);__cov_AYKecnXg3b5jlAls2sgBIg.s['46']++;this._trackSize(x+wt,y+wt);__cov_AYKecnXg3b5jlAls2sgBIg.s['47']++;this._updateCoords(x,y);}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['14'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['48']++;for(i=0;i<len;i=i+1){__cov_AYKecnXg3b5jlAls2sgBIg.s['49']++;x=parseFloat(args[i][0]);__cov_AYKecnXg3b5jlAls2sgBIg.s['50']++;y=parseFloat(args[i][1]);__cov_AYKecnXg3b5jlAls2sgBIg.s['51']++;this._updateDrawingQueue(['lineTo',x,y]);__cov_AYKecnXg3b5jlAls2sgBIg.s['52']++;this._lineToMethods[this._lineToMethods.length]=this._methods[this._methods.length-1];__cov_AYKecnXg3b5jlAls2sgBIg.s['53']++;this._trackSize(x-wt,y-wt);__cov_AYKecnXg3b5jlAls2sgBIg.s['54']++;this._trackSize(x+wt,y+wt);__cov_AYKecnXg3b5jlAls2sgBIg.s['55']++;this._updateCoords(x,y);}}__cov_AYKecnXg3b5jlAls2sgBIg.s['56']++;this._drawingComplete=false;__cov_AYKecnXg3b5jlAls2sgBIg.s['57']++;return this;},moveTo:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['13']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['58']++;this._moveTo.apply(this,[Y.Array(arguments),false]);__cov_AYKecnXg3b5jlAls2sgBIg.s['59']++;return this;},relativeMoveTo:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['14']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['60']++;this._moveTo.apply(this,[Y.Array(arguments),true]);__cov_AYKecnXg3b5jlAls2sgBIg.s['61']++;return this;},_moveTo:function(args,relative){__cov_AYKecnXg3b5jlAls2sgBIg.f['15']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['62']++;var wt=(__cov_AYKecnXg3b5jlAls2sgBIg.b['17'][0]++,this._stroke)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['17'][1]++,this._strokeWeight)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['16'][0]++,this._strokeWeight):(__cov_AYKecnXg3b5jlAls2sgBIg.b['16'][1]++,0),relativeX=relative?(__cov_AYKecnXg3b5jlAls2sgBIg.b['18'][0]++,parseFloat(this._currentX)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['18'][1]++,0),relativeY=relative?(__cov_AYKecnXg3b5jlAls2sgBIg.b['19'][0]++,parseFloat(this._currentY)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['19'][1]++,0),x=parseFloat(args[0])+relativeX,y=parseFloat(args[1])+relativeY;__cov_AYKecnXg3b5jlAls2sgBIg.s['63']++;this._updateDrawingQueue(['moveTo',x,y]);__cov_AYKecnXg3b5jlAls2sgBIg.s['64']++;this._trackSize(x-wt,y-wt);__cov_AYKecnXg3b5jlAls2sgBIg.s['65']++;this._trackSize(x+wt,y+wt);__cov_AYKecnXg3b5jlAls2sgBIg.s['66']++;this._updateCoords(x,y);__cov_AYKecnXg3b5jlAls2sgBIg.s['67']++;this._drawingComplete=false;__cov_AYKecnXg3b5jlAls2sgBIg.s['68']++;return this;},curveTo:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['16']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['69']++;this._curveTo.apply(this,[Y.Array(arguments),false]);__cov_AYKecnXg3b5jlAls2sgBIg.s['70']++;return this;},relativeCurveTo:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['17']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['71']++;this._curveTo.apply(this,[Y.Array(arguments),true]);__cov_AYKecnXg3b5jlAls2sgBIg.s['72']++;return this;},_curveTo:function(args,relative){__cov_AYKecnXg3b5jlAls2sgBIg.f['18']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['73']++;var w,h,cp1x,cp1y,cp2x,cp2y,x,y,pts,right,left,bottom,top,i,len,relativeX=relative?(__cov_AYKecnXg3b5jlAls2sgBIg.b['20'][0]++,parseFloat(this._currentX)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['20'][1]++,0),relativeY=relative?(__cov_AYKecnXg3b5jlAls2sgBIg.b['21'][0]++,parseFloat(this._currentY)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['21'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['74']++;len=args.length-5;__cov_AYKecnXg3b5jlAls2sgBIg.s['75']++;for(i=0;i<len;i=i+6){__cov_AYKecnXg3b5jlAls2sgBIg.s['76']++;cp1x=parseFloat(args[i])+relativeX;__cov_AYKecnXg3b5jlAls2sgBIg.s['77']++;cp1y=parseFloat(args[i+1])+relativeY;__cov_AYKecnXg3b5jlAls2sgBIg.s['78']++;cp2x=parseFloat(args[i+2])+relativeX;__cov_AYKecnXg3b5jlAls2sgBIg.s['79']++;cp2y=parseFloat(args[i+3])+relativeY;__cov_AYKecnXg3b5jlAls2sgBIg.s['80']++;x=parseFloat(args[i+4])+relativeX;__cov_AYKecnXg3b5jlAls2sgBIg.s['81']++;y=parseFloat(args[i+5])+relativeY;__cov_AYKecnXg3b5jlAls2sgBIg.s['82']++;this._updateDrawingQueue(['bezierCurveTo',cp1x,cp1y,cp2x,cp2y,x,y]);__cov_AYKecnXg3b5jlAls2sgBIg.s['83']++;this._drawingComplete=false;__cov_AYKecnXg3b5jlAls2sgBIg.s['84']++;right=Math.max(x,Math.max(cp1x,cp2x));__cov_AYKecnXg3b5jlAls2sgBIg.s['85']++;bottom=Math.max(y,Math.max(cp1y,cp2y));__cov_AYKecnXg3b5jlAls2sgBIg.s['86']++;left=Math.min(x,Math.min(cp1x,cp2x));__cov_AYKecnXg3b5jlAls2sgBIg.s['87']++;top=Math.min(y,Math.min(cp1y,cp2y));__cov_AYKecnXg3b5jlAls2sgBIg.s['88']++;w=Math.abs(right-left);__cov_AYKecnXg3b5jlAls2sgBIg.s['89']++;h=Math.abs(bottom-top);__cov_AYKecnXg3b5jlAls2sgBIg.s['90']++;pts=[[this._currentX,this._currentY],[cp1x,cp1y],[cp2x,cp2y],[x,y]];__cov_AYKecnXg3b5jlAls2sgBIg.s['91']++;this._setCurveBoundingBox(pts,w,h);__cov_AYKecnXg3b5jlAls2sgBIg.s['92']++;this._currentX=x;__cov_AYKecnXg3b5jlAls2sgBIg.s['93']++;this._currentY=y;}},quadraticCurveTo:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['19']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['94']++;this._quadraticCurveTo.apply(this,[Y.Array(arguments),false]);__cov_AYKecnXg3b5jlAls2sgBIg.s['95']++;return this;},relativeQuadraticCurveTo:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['20']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['96']++;this._quadraticCurveTo.apply(this,[Y.Array(arguments),true]);__cov_AYKecnXg3b5jlAls2sgBIg.s['97']++;return this;},_quadraticCurveTo:function(args,relative){__cov_AYKecnXg3b5jlAls2sgBIg.f['21']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['98']++;var cpx,cpy,x,y,w,h,pts,right,left,bottom,top,i,len=args.length-3,relativeX=relative?(__cov_AYKecnXg3b5jlAls2sgBIg.b['22'][0]++,parseFloat(this._currentX)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['22'][1]++,0),relativeY=relative?(__cov_AYKecnXg3b5jlAls2sgBIg.b['23'][0]++,parseFloat(this._currentY)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['23'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['99']++;for(i=0;i<len;i=i+4){__cov_AYKecnXg3b5jlAls2sgBIg.s['100']++;cpx=parseFloat(args[i])+relativeX;__cov_AYKecnXg3b5jlAls2sgBIg.s['101']++;cpy=parseFloat(args[i+1])+relativeY;__cov_AYKecnXg3b5jlAls2sgBIg.s['102']++;x=parseFloat(args[i+2])+relativeX;__cov_AYKecnXg3b5jlAls2sgBIg.s['103']++;y=parseFloat(args[i+3])+relativeY;__cov_AYKecnXg3b5jlAls2sgBIg.s['104']++;this._drawingComplete=false;__cov_AYKecnXg3b5jlAls2sgBIg.s['105']++;right=Math.max(x,cpx);__cov_AYKecnXg3b5jlAls2sgBIg.s['106']++;bottom=Math.max(y,cpy);__cov_AYKecnXg3b5jlAls2sgBIg.s['107']++;left=Math.min(x,cpx);__cov_AYKecnXg3b5jlAls2sgBIg.s['108']++;top=Math.min(y,cpy);__cov_AYKecnXg3b5jlAls2sgBIg.s['109']++;w=Math.abs(right-left);__cov_AYKecnXg3b5jlAls2sgBIg.s['110']++;h=Math.abs(bottom-top);__cov_AYKecnXg3b5jlAls2sgBIg.s['111']++;pts=[[this._currentX,this._currentY],[cpx,cpy],[x,y]];__cov_AYKecnXg3b5jlAls2sgBIg.s['112']++;this._setCurveBoundingBox(pts,w,h);__cov_AYKecnXg3b5jlAls2sgBIg.s['113']++;this._updateDrawingQueue(['quadraticCurveTo',cpx,cpy,x,y]);__cov_AYKecnXg3b5jlAls2sgBIg.s['114']++;this._updateCoords(x,y);}__cov_AYKecnXg3b5jlAls2sgBIg.s['115']++;return this;},drawCircle:function(x,y,radius){__cov_AYKecnXg3b5jlAls2sgBIg.f['22']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['116']++;var startAngle=0,endAngle=2*Math.PI,wt=(__cov_AYKecnXg3b5jlAls2sgBIg.b['25'][0]++,this._stroke)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['25'][1]++,this._strokeWeight)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['24'][0]++,this._strokeWeight):(__cov_AYKecnXg3b5jlAls2sgBIg.b['24'][1]++,0),circum=radius*2;__cov_AYKecnXg3b5jlAls2sgBIg.s['117']++;circum+=wt;__cov_AYKecnXg3b5jlAls2sgBIg.s['118']++;this._drawingComplete=false;__cov_AYKecnXg3b5jlAls2sgBIg.s['119']++;this._trackSize(x+circum,y+circum);__cov_AYKecnXg3b5jlAls2sgBIg.s['120']++;this._trackSize(x-wt,y-wt);__cov_AYKecnXg3b5jlAls2sgBIg.s['121']++;this._updateCoords(x,y);__cov_AYKecnXg3b5jlAls2sgBIg.s['122']++;this._updateDrawingQueue(['arc',x+radius,y+radius,radius,startAngle,endAngle,false]);__cov_AYKecnXg3b5jlAls2sgBIg.s['123']++;return this;},drawDiamond:function(x,y,width,height){__cov_AYKecnXg3b5jlAls2sgBIg.f['23']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['124']++;var midWidth=width*0.5,midHeight=height*0.5;__cov_AYKecnXg3b5jlAls2sgBIg.s['125']++;this.moveTo(x+midWidth,y);__cov_AYKecnXg3b5jlAls2sgBIg.s['126']++;this.lineTo(x+width,y+midHeight);__cov_AYKecnXg3b5jlAls2sgBIg.s['127']++;this.lineTo(x+midWidth,y+height);__cov_AYKecnXg3b5jlAls2sgBIg.s['128']++;this.lineTo(x,y+midHeight);__cov_AYKecnXg3b5jlAls2sgBIg.s['129']++;this.lineTo(x+midWidth,y);__cov_AYKecnXg3b5jlAls2sgBIg.s['130']++;return this;},drawEllipse:function(x,y,w,h){__cov_AYKecnXg3b5jlAls2sgBIg.f['24']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['131']++;var l=8,theta=-(45/180)*Math.PI,angle=0,angleMid,radius=w/2,yRadius=h/2,i,centerX=x+radius,centerY=y+yRadius,ax,ay,bx,by,cx,cy,wt=(__cov_AYKecnXg3b5jlAls2sgBIg.b['27'][0]++,this._stroke)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['27'][1]++,this._strokeWeight)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['26'][0]++,this._strokeWeight):(__cov_AYKecnXg3b5jlAls2sgBIg.b['26'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['132']++;ax=centerX+Math.cos(0)*radius;__cov_AYKecnXg3b5jlAls2sgBIg.s['133']++;ay=centerY+Math.sin(0)*yRadius;__cov_AYKecnXg3b5jlAls2sgBIg.s['134']++;this.moveTo(ax,ay);__cov_AYKecnXg3b5jlAls2sgBIg.s['135']++;for(i=0;i<l;i++){__cov_AYKecnXg3b5jlAls2sgBIg.s['136']++;angle+=theta;__cov_AYKecnXg3b5jlAls2sgBIg.s['137']++;angleMid=angle-theta/2;__cov_AYKecnXg3b5jlAls2sgBIg.s['138']++;bx=centerX+Math.cos(angle)*radius;__cov_AYKecnXg3b5jlAls2sgBIg.s['139']++;by=centerY+Math.sin(angle)*yRadius;__cov_AYKecnXg3b5jlAls2sgBIg.s['140']++;cx=centerX+Math.cos(angleMid)*(radius/Math.cos(theta/2));__cov_AYKecnXg3b5jlAls2sgBIg.s['141']++;cy=centerY+Math.sin(angleMid)*(yRadius/Math.cos(theta/2));__cov_AYKecnXg3b5jlAls2sgBIg.s['142']++;this._updateDrawingQueue(['quadraticCurveTo',cx,cy,bx,by]);}__cov_AYKecnXg3b5jlAls2sgBIg.s['143']++;this._trackSize(x+w+wt,y+h+wt);__cov_AYKecnXg3b5jlAls2sgBIg.s['144']++;this._trackSize(x-wt,y-wt);__cov_AYKecnXg3b5jlAls2sgBIg.s['145']++;this._updateCoords(x,y);__cov_AYKecnXg3b5jlAls2sgBIg.s['146']++;return this;},drawRect:function(x,y,w,h){__cov_AYKecnXg3b5jlAls2sgBIg.f['25']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['147']++;this._drawingComplete=false;__cov_AYKecnXg3b5jlAls2sgBIg.s['148']++;this.moveTo(x,y);__cov_AYKecnXg3b5jlAls2sgBIg.s['149']++;this.lineTo(x+w,y);__cov_AYKecnXg3b5jlAls2sgBIg.s['150']++;this.lineTo(x+w,y+h);__cov_AYKecnXg3b5jlAls2sgBIg.s['151']++;this.lineTo(x,y+h);__cov_AYKecnXg3b5jlAls2sgBIg.s['152']++;this.lineTo(x,y);__cov_AYKecnXg3b5jlAls2sgBIg.s['153']++;return this;},drawRoundRect:function(x,y,w,h,ew,eh){__cov_AYKecnXg3b5jlAls2sgBIg.f['26']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['154']++;this._drawingComplete=false;__cov_AYKecnXg3b5jlAls2sgBIg.s['155']++;this.moveTo(x,y+eh);__cov_AYKecnXg3b5jlAls2sgBIg.s['156']++;this.lineTo(x,y+h-eh);__cov_AYKecnXg3b5jlAls2sgBIg.s['157']++;this.quadraticCurveTo(x,y+h,x+ew,y+h);__cov_AYKecnXg3b5jlAls2sgBIg.s['158']++;this.lineTo(x+w-ew,y+h);__cov_AYKecnXg3b5jlAls2sgBIg.s['159']++;this.quadraticCurveTo(x+w,y+h,x+w,y+h-eh);__cov_AYKecnXg3b5jlAls2sgBIg.s['160']++;this.lineTo(x+w,y+eh);__cov_AYKecnXg3b5jlAls2sgBIg.s['161']++;this.quadraticCurveTo(x+w,y,x+w-ew,y);__cov_AYKecnXg3b5jlAls2sgBIg.s['162']++;this.lineTo(x+ew,y);__cov_AYKecnXg3b5jlAls2sgBIg.s['163']++;this.quadraticCurveTo(x,y,x,y+eh);__cov_AYKecnXg3b5jlAls2sgBIg.s['164']++;return this;},drawWedge:function(x,y,startAngle,arc,radius,yRadius){__cov_AYKecnXg3b5jlAls2sgBIg.f['27']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['165']++;var wt=(__cov_AYKecnXg3b5jlAls2sgBIg.b['29'][0]++,this._stroke)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['29'][1]++,this._strokeWeight)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['28'][0]++,this._strokeWeight):(__cov_AYKecnXg3b5jlAls2sgBIg.b['28'][1]++,0),segs,segAngle,theta,angle,angleMid,ax,ay,bx,by,cx,cy,i=0;__cov_AYKecnXg3b5jlAls2sgBIg.s['166']++;yRadius=(__cov_AYKecnXg3b5jlAls2sgBIg.b['30'][0]++,yRadius)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['30'][1]++,radius);__cov_AYKecnXg3b5jlAls2sgBIg.s['167']++;this._drawingComplete=false;__cov_AYKecnXg3b5jlAls2sgBIg.s['168']++;this._updateDrawingQueue(['moveTo',x,y]);__cov_AYKecnXg3b5jlAls2sgBIg.s['169']++;yRadius=(__cov_AYKecnXg3b5jlAls2sgBIg.b['31'][0]++,yRadius)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['31'][1]++,radius);__cov_AYKecnXg3b5jlAls2sgBIg.s['170']++;if(Math.abs(arc)>360){__cov_AYKecnXg3b5jlAls2sgBIg.b['32'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['171']++;arc=360;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['32'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['172']++;segs=Math.ceil(Math.abs(arc)/45);__cov_AYKecnXg3b5jlAls2sgBIg.s['173']++;segAngle=arc/segs;__cov_AYKecnXg3b5jlAls2sgBIg.s['174']++;theta=-(segAngle/180)*Math.PI;__cov_AYKecnXg3b5jlAls2sgBIg.s['175']++;angle=startAngle/180*Math.PI;__cov_AYKecnXg3b5jlAls2sgBIg.s['176']++;if(segs>0){__cov_AYKecnXg3b5jlAls2sgBIg.b['33'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['177']++;ax=x+Math.cos(startAngle/180*Math.PI)*radius;__cov_AYKecnXg3b5jlAls2sgBIg.s['178']++;ay=y+Math.sin(startAngle/180*Math.PI)*yRadius;__cov_AYKecnXg3b5jlAls2sgBIg.s['179']++;this.lineTo(ax,ay);__cov_AYKecnXg3b5jlAls2sgBIg.s['180']++;for(i=0;i<segs;++i){__cov_AYKecnXg3b5jlAls2sgBIg.s['181']++;angle+=theta;__cov_AYKecnXg3b5jlAls2sgBIg.s['182']++;angleMid=angle-theta/2;__cov_AYKecnXg3b5jlAls2sgBIg.s['183']++;bx=x+Math.cos(angle)*radius;__cov_AYKecnXg3b5jlAls2sgBIg.s['184']++;by=y+Math.sin(angle)*yRadius;__cov_AYKecnXg3b5jlAls2sgBIg.s['185']++;cx=x+Math.cos(angleMid)*(radius/Math.cos(theta/2));__cov_AYKecnXg3b5jlAls2sgBIg.s['186']++;cy=y+Math.sin(angleMid)*(yRadius/Math.cos(theta/2));__cov_AYKecnXg3b5jlAls2sgBIg.s['187']++;this._updateDrawingQueue(['quadraticCurveTo',cx,cy,bx,by]);}__cov_AYKecnXg3b5jlAls2sgBIg.s['188']++;this._updateDrawingQueue(['lineTo',x,y]);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['33'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['189']++;this._trackSize(-wt,-wt);__cov_AYKecnXg3b5jlAls2sgBIg.s['190']++;this._trackSize(radius*2+wt,radius*2+wt);__cov_AYKecnXg3b5jlAls2sgBIg.s['191']++;return this;},end:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['28']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['192']++;this._closePath();__cov_AYKecnXg3b5jlAls2sgBIg.s['193']++;return this;},closePath:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['29']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['194']++;this._updateDrawingQueue(['closePath']);__cov_AYKecnXg3b5jlAls2sgBIg.s['195']++;this._updateDrawingQueue(['beginPath']);__cov_AYKecnXg3b5jlAls2sgBIg.s['196']++;return this;},clear:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['30']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['197']++;this._initProps();__cov_AYKecnXg3b5jlAls2sgBIg.s['198']++;if(this.node){__cov_AYKecnXg3b5jlAls2sgBIg.b['34'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['199']++;this._context.clearRect(0,0,this.node.width,this.node.height);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['34'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['200']++;return this;},_getLinearGradient:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['31']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['201']++;var isNumber=Y.Lang.isNumber,fill=this.get('fill'),stops=fill.stops,opacity,color,stop,i,len=stops.length,gradient,x=0,y=0,w=this.get('width'),h=this.get('height'),r=(__cov_AYKecnXg3b5jlAls2sgBIg.b['35'][0]++,fill.rotation)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['35'][1]++,0),x1,x2,y1,y2,cx=x+w/2,cy=y+h/2,offset,radCon=Math.PI/180,tanRadians=parseFloat(parseFloat(Math.tan(r*radCon)).toFixed(8));__cov_AYKecnXg3b5jlAls2sgBIg.s['202']++;if(Math.abs(tanRadians)*w/2>=h/2){__cov_AYKecnXg3b5jlAls2sgBIg.b['36'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['203']++;if(r<180){__cov_AYKecnXg3b5jlAls2sgBIg.b['37'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['204']++;y1=y;__cov_AYKecnXg3b5jlAls2sgBIg.s['205']++;y2=y+h;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['37'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['206']++;y1=y+h;__cov_AYKecnXg3b5jlAls2sgBIg.s['207']++;y2=y;}__cov_AYKecnXg3b5jlAls2sgBIg.s['208']++;x1=cx-(cy-y1)/tanRadians;__cov_AYKecnXg3b5jlAls2sgBIg.s['209']++;x2=cx-(cy-y2)/tanRadians;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['36'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['210']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['39'][0]++,r>90)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['39'][1]++,r<270)){__cov_AYKecnXg3b5jlAls2sgBIg.b['38'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['211']++;x1=x+w;__cov_AYKecnXg3b5jlAls2sgBIg.s['212']++;x2=x;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['38'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['213']++;x1=x;__cov_AYKecnXg3b5jlAls2sgBIg.s['214']++;x2=x+w;}__cov_AYKecnXg3b5jlAls2sgBIg.s['215']++;y1=(tanRadians*(cx-x1)-cy)*-1;__cov_AYKecnXg3b5jlAls2sgBIg.s['216']++;y2=(tanRadians*(cx-x2)-cy)*-1;}__cov_AYKecnXg3b5jlAls2sgBIg.s['217']++;gradient=this._context.createLinearGradient(x1,y1,x2,y2);__cov_AYKecnXg3b5jlAls2sgBIg.s['218']++;for(i=0;i<len;++i){__cov_AYKecnXg3b5jlAls2sgBIg.s['219']++;stop=stops[i];__cov_AYKecnXg3b5jlAls2sgBIg.s['220']++;opacity=stop.opacity;__cov_AYKecnXg3b5jlAls2sgBIg.s['221']++;color=stop.color;__cov_AYKecnXg3b5jlAls2sgBIg.s['222']++;offset=stop.offset;__cov_AYKecnXg3b5jlAls2sgBIg.s['223']++;if(isNumber(opacity)){__cov_AYKecnXg3b5jlAls2sgBIg.b['40'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['224']++;opacity=Math.max(0,Math.min(1,opacity));__cov_AYKecnXg3b5jlAls2sgBIg.s['225']++;color=this._toRGBA(color,opacity);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['40'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['226']++;color=TORGB(color);}__cov_AYKecnXg3b5jlAls2sgBIg.s['227']++;offset=(__cov_AYKecnXg3b5jlAls2sgBIg.b['41'][0]++,stop.offset)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['41'][1]++,i/(len-1));__cov_AYKecnXg3b5jlAls2sgBIg.s['228']++;gradient.addColorStop(offset,color);}__cov_AYKecnXg3b5jlAls2sgBIg.s['229']++;return gradient;},_getRadialGradient:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['32']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['230']++;var isNumber=Y.Lang.isNumber,fill=this.get('fill'),r=fill.r,fx=fill.fx,fy=fill.fy,stops=fill.stops,opacity,color,stop,i,len=stops.length,gradient,x=0,y=0,w=this.get('width'),h=this.get('height'),x1,x2,y1,y2,r2,xc,yc,xn,yn,d,offset,ratio,stopMultiplier;__cov_AYKecnXg3b5jlAls2sgBIg.s['231']++;xc=x+w/2;__cov_AYKecnXg3b5jlAls2sgBIg.s['232']++;yc=y+h/2;__cov_AYKecnXg3b5jlAls2sgBIg.s['233']++;x1=w*fx;__cov_AYKecnXg3b5jlAls2sgBIg.s['234']++;y1=h*fy;__cov_AYKecnXg3b5jlAls2sgBIg.s['235']++;x2=x+w/2;__cov_AYKecnXg3b5jlAls2sgBIg.s['236']++;y2=y+h/2;__cov_AYKecnXg3b5jlAls2sgBIg.s['237']++;r2=w*r;__cov_AYKecnXg3b5jlAls2sgBIg.s['238']++;d=Math.sqrt(Math.pow(Math.abs(xc-x1),2)+Math.pow(Math.abs(yc-y1),2));__cov_AYKecnXg3b5jlAls2sgBIg.s['239']++;if(d>=r2){__cov_AYKecnXg3b5jlAls2sgBIg.b['42'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['240']++;ratio=d/r2;__cov_AYKecnXg3b5jlAls2sgBIg.s['241']++;if(ratio===1){__cov_AYKecnXg3b5jlAls2sgBIg.b['43'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['242']++;ratio=1.01;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['43'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['243']++;xn=(x1-xc)/ratio;__cov_AYKecnXg3b5jlAls2sgBIg.s['244']++;yn=(y1-yc)/ratio;__cov_AYKecnXg3b5jlAls2sgBIg.s['245']++;xn=xn>0?(__cov_AYKecnXg3b5jlAls2sgBIg.b['44'][0]++,Math.floor(xn)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['44'][1]++,Math.ceil(xn));__cov_AYKecnXg3b5jlAls2sgBIg.s['246']++;yn=yn>0?(__cov_AYKecnXg3b5jlAls2sgBIg.b['45'][0]++,Math.floor(yn)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['45'][1]++,Math.ceil(yn));__cov_AYKecnXg3b5jlAls2sgBIg.s['247']++;x1=xc+xn;__cov_AYKecnXg3b5jlAls2sgBIg.s['248']++;y1=yc+yn;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['42'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['249']++;if(r>=0.5){__cov_AYKecnXg3b5jlAls2sgBIg.b['46'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['250']++;gradient=this._context.createRadialGradient(x1,y1,r,x2,y2,r*w);__cov_AYKecnXg3b5jlAls2sgBIg.s['251']++;stopMultiplier=1;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['46'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['252']++;gradient=this._context.createRadialGradient(x1,y1,r,x2,y2,w/2);__cov_AYKecnXg3b5jlAls2sgBIg.s['253']++;stopMultiplier=r*2;}__cov_AYKecnXg3b5jlAls2sgBIg.s['254']++;for(i=0;i<len;++i){__cov_AYKecnXg3b5jlAls2sgBIg.s['255']++;stop=stops[i];__cov_AYKecnXg3b5jlAls2sgBIg.s['256']++;opacity=stop.opacity;__cov_AYKecnXg3b5jlAls2sgBIg.s['257']++;color=stop.color;__cov_AYKecnXg3b5jlAls2sgBIg.s['258']++;offset=stop.offset;__cov_AYKecnXg3b5jlAls2sgBIg.s['259']++;if(isNumber(opacity)){__cov_AYKecnXg3b5jlAls2sgBIg.b['47'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['260']++;opacity=Math.max(0,Math.min(1,opacity));__cov_AYKecnXg3b5jlAls2sgBIg.s['261']++;color=this._toRGBA(color,opacity);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['47'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['262']++;color=TORGB(color);}__cov_AYKecnXg3b5jlAls2sgBIg.s['263']++;offset=(__cov_AYKecnXg3b5jlAls2sgBIg.b['48'][0]++,stop.offset)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['48'][1]++,i/(len-1));__cov_AYKecnXg3b5jlAls2sgBIg.s['264']++;offset*=stopMultiplier;__cov_AYKecnXg3b5jlAls2sgBIg.s['265']++;if(offset<=1){__cov_AYKecnXg3b5jlAls2sgBIg.b['49'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['266']++;gradient.addColorStop(offset,color);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['49'][1]++;}}__cov_AYKecnXg3b5jlAls2sgBIg.s['267']++;return gradient;},_initProps:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['33']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['268']++;this._methods=[];__cov_AYKecnXg3b5jlAls2sgBIg.s['269']++;this._lineToMethods=[];__cov_AYKecnXg3b5jlAls2sgBIg.s['270']++;this._xcoords=[0];__cov_AYKecnXg3b5jlAls2sgBIg.s['271']++;this._ycoords=[0];__cov_AYKecnXg3b5jlAls2sgBIg.s['272']++;this._width=0;__cov_AYKecnXg3b5jlAls2sgBIg.s['273']++;this._height=0;__cov_AYKecnXg3b5jlAls2sgBIg.s['274']++;this._left=0;__cov_AYKecnXg3b5jlAls2sgBIg.s['275']++;this._top=0;__cov_AYKecnXg3b5jlAls2sgBIg.s['276']++;this._right=0;__cov_AYKecnXg3b5jlAls2sgBIg.s['277']++;this._bottom=0;__cov_AYKecnXg3b5jlAls2sgBIg.s['278']++;this._currentX=0;__cov_AYKecnXg3b5jlAls2sgBIg.s['279']++;this._currentY=0;},_drawingComplete:false,_createGraphic:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['34']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['280']++;var graphic=Y.config.doc.createElement('canvas');__cov_AYKecnXg3b5jlAls2sgBIg.s['281']++;return graphic;},getBezierData:function(points,t){__cov_AYKecnXg3b5jlAls2sgBIg.f['35']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['282']++;var n=points.length,tmp=[],i,j;__cov_AYKecnXg3b5jlAls2sgBIg.s['283']++;for(i=0;i<n;++i){__cov_AYKecnXg3b5jlAls2sgBIg.s['284']++;tmp[i]=[points[i][0],points[i][1]];}__cov_AYKecnXg3b5jlAls2sgBIg.s['285']++;for(j=1;j<n;++j){__cov_AYKecnXg3b5jlAls2sgBIg.s['286']++;for(i=0;i<n-j;++i){__cov_AYKecnXg3b5jlAls2sgBIg.s['287']++;tmp[i][0]=(1-t)*tmp[i][0]+t*tmp[parseInt(i+1,10)][0];__cov_AYKecnXg3b5jlAls2sgBIg.s['288']++;tmp[i][1]=(1-t)*tmp[i][1]+t*tmp[parseInt(i+1,10)][1];}}__cov_AYKecnXg3b5jlAls2sgBIg.s['289']++;return[tmp[0][0],tmp[0][1]];},_setCurveBoundingBox:function(pts,w,h){__cov_AYKecnXg3b5jlAls2sgBIg.f['36']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['290']++;var i=0,left=this._currentX,right=left,top=this._currentY,bottom=top,len=Math.round(Math.sqrt(w*w+h*h)),t=1/len,wt=(__cov_AYKecnXg3b5jlAls2sgBIg.b['51'][0]++,this._stroke)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['51'][1]++,this._strokeWeight)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['50'][0]++,this._strokeWeight):(__cov_AYKecnXg3b5jlAls2sgBIg.b['50'][1]++,0),xy;__cov_AYKecnXg3b5jlAls2sgBIg.s['291']++;for(i=0;i<len;++i){__cov_AYKecnXg3b5jlAls2sgBIg.s['292']++;xy=this.getBezierData(pts,t*i);__cov_AYKecnXg3b5jlAls2sgBIg.s['293']++;left=isNaN(left)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['52'][0]++,xy[0]):(__cov_AYKecnXg3b5jlAls2sgBIg.b['52'][1]++,Math.min(xy[0],left));__cov_AYKecnXg3b5jlAls2sgBIg.s['294']++;right=isNaN(right)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['53'][0]++,xy[0]):(__cov_AYKecnXg3b5jlAls2sgBIg.b['53'][1]++,Math.max(xy[0],right));__cov_AYKecnXg3b5jlAls2sgBIg.s['295']++;top=isNaN(top)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['54'][0]++,xy[1]):(__cov_AYKecnXg3b5jlAls2sgBIg.b['54'][1]++,Math.min(xy[1],top));__cov_AYKecnXg3b5jlAls2sgBIg.s['296']++;bottom=isNaN(bottom)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['55'][0]++,xy[1]):(__cov_AYKecnXg3b5jlAls2sgBIg.b['55'][1]++,Math.max(xy[1],bottom));}__cov_AYKecnXg3b5jlAls2sgBIg.s['297']++;left=Math.round(left*10)/10;__cov_AYKecnXg3b5jlAls2sgBIg.s['298']++;right=Math.round(right*10)/10;__cov_AYKecnXg3b5jlAls2sgBIg.s['299']++;top=Math.round(top*10)/10;__cov_AYKecnXg3b5jlAls2sgBIg.s['300']++;bottom=Math.round(bottom*10)/10;__cov_AYKecnXg3b5jlAls2sgBIg.s['301']++;this._trackSize(right+wt,bottom+wt);__cov_AYKecnXg3b5jlAls2sgBIg.s['302']++;this._trackSize(left-wt,top-wt);},_trackSize:function(w,h){__cov_AYKecnXg3b5jlAls2sgBIg.f['37']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['303']++;if(w>this._right){__cov_AYKecnXg3b5jlAls2sgBIg.b['56'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['304']++;this._right=w;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['56'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['305']++;if(w<this._left){__cov_AYKecnXg3b5jlAls2sgBIg.b['57'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['306']++;this._left=w;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['57'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['307']++;if(h<this._top){__cov_AYKecnXg3b5jlAls2sgBIg.b['58'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['308']++;this._top=h;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['58'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['309']++;if(h>this._bottom){__cov_AYKecnXg3b5jlAls2sgBIg.b['59'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['310']++;this._bottom=h;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['59'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['311']++;this._width=this._right-this._left;__cov_AYKecnXg3b5jlAls2sgBIg.s['312']++;this._height=this._bottom-this._top;}};__cov_AYKecnXg3b5jlAls2sgBIg.s['313']++;Y.CanvasDrawing=CanvasDrawing;__cov_AYKecnXg3b5jlAls2sgBIg.s['314']++;CanvasShape=function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['38']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['315']++;this._transforms=[];__cov_AYKecnXg3b5jlAls2sgBIg.s['316']++;this.matrix=new Y.Matrix();__cov_AYKecnXg3b5jlAls2sgBIg.s['317']++;CanvasShape.superclass.constructor.apply(this,arguments);};__cov_AYKecnXg3b5jlAls2sgBIg.s['318']++;CanvasShape.NAME='shape';__cov_AYKecnXg3b5jlAls2sgBIg.s['319']++;Y.extend(CanvasShape,Y.GraphicBase,Y.mix({init:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['39']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['320']++;this.initializer.apply(this,arguments);},initializer:function(cfg){__cov_AYKecnXg3b5jlAls2sgBIg.f['40']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['321']++;var host=this,graphic=cfg.graphic,data=this.get('data');__cov_AYKecnXg3b5jlAls2sgBIg.s['322']++;host._initProps();__cov_AYKecnXg3b5jlAls2sgBIg.s['323']++;host.createNode();__cov_AYKecnXg3b5jlAls2sgBIg.s['324']++;host._xcoords=[0];__cov_AYKecnXg3b5jlAls2sgBIg.s['325']++;host._ycoords=[0];__cov_AYKecnXg3b5jlAls2sgBIg.s['326']++;if(graphic){__cov_AYKecnXg3b5jlAls2sgBIg.b['60'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['327']++;this._setGraphic(graphic);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['60'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['328']++;if(data){__cov_AYKecnXg3b5jlAls2sgBIg.b['61'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['329']++;host._parsePathData(data);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['61'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['330']++;host._updateHandler();},_setGraphic:function(render){__cov_AYKecnXg3b5jlAls2sgBIg.f['41']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['331']++;var graphic;__cov_AYKecnXg3b5jlAls2sgBIg.s['332']++;if(render instanceof Y.CanvasGraphic){__cov_AYKecnXg3b5jlAls2sgBIg.b['62'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['333']++;this._graphic=render;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['62'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['334']++;graphic=new Y.CanvasGraphic({render:render});__cov_AYKecnXg3b5jlAls2sgBIg.s['335']++;graphic._appendShape(this);__cov_AYKecnXg3b5jlAls2sgBIg.s['336']++;this._graphic=graphic;}},addClass:function(className){__cov_AYKecnXg3b5jlAls2sgBIg.f['42']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['337']++;var node=this.get('node');__cov_AYKecnXg3b5jlAls2sgBIg.s['338']++;Y.DOM.addClass(node,className);},removeClass:function(className){__cov_AYKecnXg3b5jlAls2sgBIg.f['43']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['339']++;var node=this.get('node');__cov_AYKecnXg3b5jlAls2sgBIg.s['340']++;Y.DOM.removeClass(node,className);},getXY:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['44']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['341']++;var graphic=this.get('graphic'),parentXY=graphic.getXY(),x=this.get('x'),y=this.get('y');__cov_AYKecnXg3b5jlAls2sgBIg.s['342']++;return[parentXY[0]+x,parentXY[1]+y];},setXY:function(xy){__cov_AYKecnXg3b5jlAls2sgBIg.f['45']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['343']++;var graphic=this.get('graphic'),parentXY=graphic.getXY(),x=xy[0]-parentXY[0],y=xy[1]-parentXY[1];__cov_AYKecnXg3b5jlAls2sgBIg.s['344']++;this._set('x',x);__cov_AYKecnXg3b5jlAls2sgBIg.s['345']++;this._set('y',y);__cov_AYKecnXg3b5jlAls2sgBIg.s['346']++;this._updateNodePosition(x,y);},contains:function(needle){__cov_AYKecnXg3b5jlAls2sgBIg.f['46']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['347']++;var node=needle instanceof Y.Node?(__cov_AYKecnXg3b5jlAls2sgBIg.b['63'][0]++,needle._node):(__cov_AYKecnXg3b5jlAls2sgBIg.b['63'][1]++,needle);__cov_AYKecnXg3b5jlAls2sgBIg.s['348']++;return node===this.node;},test:function(selector){__cov_AYKecnXg3b5jlAls2sgBIg.f['47']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['349']++;return Y.Selector.test(this.node,selector);},compareTo:function(refNode){__cov_AYKecnXg3b5jlAls2sgBIg.f['48']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['350']++;var node=this.node;__cov_AYKecnXg3b5jlAls2sgBIg.s['351']++;return node===refNode;},_getDefaultFill:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['49']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['352']++;return{type:'solid',opacity:1,cx:0.5,cy:0.5,fx:0.5,fy:0.5,r:0.5};},_getDefaultStroke:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['50']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['353']++;return{weight:1,dashstyle:'none',color:'#000',opacity:1};},_left:0,_right:0,_top:0,_bottom:0,createNode:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['51']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['354']++;var host=this,node=Y.config.doc.createElement('canvas'),id=host.get('id'),concat=host._camelCaseConcat,name=host.name;__cov_AYKecnXg3b5jlAls2sgBIg.s['355']++;host._context=node.getContext('2d');__cov_AYKecnXg3b5jlAls2sgBIg.s['356']++;node.setAttribute('overflow','visible');__cov_AYKecnXg3b5jlAls2sgBIg.s['357']++;node.style.overflow='visible';__cov_AYKecnXg3b5jlAls2sgBIg.s['358']++;if(!host.get('visible')){__cov_AYKecnXg3b5jlAls2sgBIg.b['64'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['359']++;node.style.visibility='hidden';}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['64'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['360']++;node.setAttribute('id',id);__cov_AYKecnXg3b5jlAls2sgBIg.s['361']++;id='#'+id;__cov_AYKecnXg3b5jlAls2sgBIg.s['362']++;host.node=node;__cov_AYKecnXg3b5jlAls2sgBIg.s['363']++;host.addClass(_getClassName(SHAPE)+' '+_getClassName(concat(IMPLEMENTATION,SHAPE))+' '+_getClassName(name)+' '+_getClassName(concat(IMPLEMENTATION,name)));},on:function(type,fn){__cov_AYKecnXg3b5jlAls2sgBIg.f['52']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['364']++;if(Y.Node.DOM_EVENTS[type]){__cov_AYKecnXg3b5jlAls2sgBIg.b['65'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['365']++;return Y.on(type,fn,'#'+this.get('id'));}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['65'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['366']++;return Y.on.apply(this,arguments);},_setStrokeProps:function(stroke){__cov_AYKecnXg3b5jlAls2sgBIg.f['53']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['367']++;var color,weight,opacity,linejoin,linecap,dashstyle;__cov_AYKecnXg3b5jlAls2sgBIg.s['368']++;if(stroke){__cov_AYKecnXg3b5jlAls2sgBIg.b['66'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['369']++;color=stroke.color;__cov_AYKecnXg3b5jlAls2sgBIg.s['370']++;weight=PARSE_FLOAT(stroke.weight);__cov_AYKecnXg3b5jlAls2sgBIg.s['371']++;opacity=PARSE_FLOAT(stroke.opacity);__cov_AYKecnXg3b5jlAls2sgBIg.s['372']++;linejoin=(__cov_AYKecnXg3b5jlAls2sgBIg.b['67'][0]++,stroke.linejoin)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['67'][1]++,'round');__cov_AYKecnXg3b5jlAls2sgBIg.s['373']++;linecap=(__cov_AYKecnXg3b5jlAls2sgBIg.b['68'][0]++,stroke.linecap)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['68'][1]++,'butt');__cov_AYKecnXg3b5jlAls2sgBIg.s['374']++;dashstyle=stroke.dashstyle;__cov_AYKecnXg3b5jlAls2sgBIg.s['375']++;this._miterlimit=null;__cov_AYKecnXg3b5jlAls2sgBIg.s['376']++;this._dashstyle=(__cov_AYKecnXg3b5jlAls2sgBIg.b['70'][0]++,dashstyle)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['70'][1]++,Y.Lang.isArray(dashstyle))&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['70'][2]++,dashstyle.length>1)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['69'][0]++,dashstyle):(__cov_AYKecnXg3b5jlAls2sgBIg.b['69'][1]++,null);__cov_AYKecnXg3b5jlAls2sgBIg.s['377']++;this._strokeWeight=weight;__cov_AYKecnXg3b5jlAls2sgBIg.s['378']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['72'][0]++,IS_NUMBER(weight))&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['72'][1]++,weight>0)){__cov_AYKecnXg3b5jlAls2sgBIg.b['71'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['379']++;this._stroke=1;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['71'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['380']++;this._stroke=0;}__cov_AYKecnXg3b5jlAls2sgBIg.s['381']++;if(IS_NUMBER(opacity)){__cov_AYKecnXg3b5jlAls2sgBIg.b['73'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['382']++;this._strokeStyle=this._toRGBA(color,opacity);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['73'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['383']++;this._strokeStyle=color;}__cov_AYKecnXg3b5jlAls2sgBIg.s['384']++;this._linecap=linecap;__cov_AYKecnXg3b5jlAls2sgBIg.s['385']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['75'][0]++,linejoin==='round')||(__cov_AYKecnXg3b5jlAls2sgBIg.b['75'][1]++,linejoin==='bevel')){__cov_AYKecnXg3b5jlAls2sgBIg.b['74'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['386']++;this._linejoin=linejoin;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['74'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['387']++;linejoin=parseInt(linejoin,10);__cov_AYKecnXg3b5jlAls2sgBIg.s['388']++;if(IS_NUMBER(linejoin)){__cov_AYKecnXg3b5jlAls2sgBIg.b['76'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['389']++;this._miterlimit=Math.max(linejoin,1);__cov_AYKecnXg3b5jlAls2sgBIg.s['390']++;this._linejoin='miter';}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['76'][1]++;}}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['66'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['391']++;this._stroke=0;}},set:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['54']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['392']++;var host=this;__cov_AYKecnXg3b5jlAls2sgBIg.s['393']++;AttributeLite.prototype.set.apply(host,arguments);__cov_AYKecnXg3b5jlAls2sgBIg.s['394']++;if(host.initialized){__cov_AYKecnXg3b5jlAls2sgBIg.b['77'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['395']++;host._updateHandler();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['77'][1]++;}},_setFillProps:function(fill){__cov_AYKecnXg3b5jlAls2sgBIg.f['55']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['396']++;var isNumber=IS_NUMBER,color,opacity,type;__cov_AYKecnXg3b5jlAls2sgBIg.s['397']++;if(fill){__cov_AYKecnXg3b5jlAls2sgBIg.b['78'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['398']++;color=fill.color;__cov_AYKecnXg3b5jlAls2sgBIg.s['399']++;type=fill.type;__cov_AYKecnXg3b5jlAls2sgBIg.s['400']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['80'][0]++,type==='linear')||(__cov_AYKecnXg3b5jlAls2sgBIg.b['80'][1]++,type==='radial')){__cov_AYKecnXg3b5jlAls2sgBIg.b['79'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['401']++;this._fillType=type;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['79'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['402']++;if(color){__cov_AYKecnXg3b5jlAls2sgBIg.b['81'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['403']++;opacity=fill.opacity;__cov_AYKecnXg3b5jlAls2sgBIg.s['404']++;if(isNumber(opacity)){__cov_AYKecnXg3b5jlAls2sgBIg.b['82'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['405']++;opacity=Math.max(0,Math.min(1,opacity));__cov_AYKecnXg3b5jlAls2sgBIg.s['406']++;color=this._toRGBA(color,opacity);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['82'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['407']++;color=TORGB(color);}__cov_AYKecnXg3b5jlAls2sgBIg.s['408']++;this._fillColor=color;__cov_AYKecnXg3b5jlAls2sgBIg.s['409']++;this._fillType='solid';}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['81'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['410']++;this._fillColor=null;}}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['78'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['411']++;this._fillType=null;__cov_AYKecnXg3b5jlAls2sgBIg.s['412']++;this._fillColor=null;}},translate:function(x,y){__cov_AYKecnXg3b5jlAls2sgBIg.f['56']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['413']++;this._translateX+=x;__cov_AYKecnXg3b5jlAls2sgBIg.s['414']++;this._translateY+=y;__cov_AYKecnXg3b5jlAls2sgBIg.s['415']++;this._addTransform('translate',arguments);},translateX:function(x){__cov_AYKecnXg3b5jlAls2sgBIg.f['57']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['416']++;this._translateX+=x;__cov_AYKecnXg3b5jlAls2sgBIg.s['417']++;this._addTransform('translateX',arguments);},translateY:function(y){__cov_AYKecnXg3b5jlAls2sgBIg.f['58']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['418']++;this._translateY+=y;__cov_AYKecnXg3b5jlAls2sgBIg.s['419']++;this._addTransform('translateY',arguments);},skew:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['59']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['420']++;this._addTransform('skew',arguments);},skewX:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['60']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['421']++;this._addTransform('skewX',arguments);},skewY:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['61']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['422']++;this._addTransform('skewY',arguments);},rotate:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['62']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['423']++;this._addTransform('rotate',arguments);},scale:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['63']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['424']++;this._addTransform('scale',arguments);},_transform:'',_addTransform:function(type,args){__cov_AYKecnXg3b5jlAls2sgBIg.f['64']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['425']++;args=Y.Array(args);__cov_AYKecnXg3b5jlAls2sgBIg.s['426']++;this._transform=Y_LANG.trim(this._transform+' '+type+'('+args.join(', ')+')');__cov_AYKecnXg3b5jlAls2sgBIg.s['427']++;args.unshift(type);__cov_AYKecnXg3b5jlAls2sgBIg.s['428']++;this._transforms.push(args);__cov_AYKecnXg3b5jlAls2sgBIg.s['429']++;if(this.initialized){__cov_AYKecnXg3b5jlAls2sgBIg.b['83'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['430']++;this._updateTransform();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['83'][1]++;}},_updateTransform:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['65']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['431']++;var node=this.node,key,transform,transformOrigin=this.get('transformOrigin'),matrix=this.matrix,i,len=this._transforms.length;__cov_AYKecnXg3b5jlAls2sgBIg.s['432']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['85'][0]++,this._transforms)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['85'][1]++,this._transforms.length>0)){__cov_AYKecnXg3b5jlAls2sgBIg.b['84'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['433']++;for(i=0;i<len;++i){__cov_AYKecnXg3b5jlAls2sgBIg.s['434']++;key=this._transforms[i].shift();__cov_AYKecnXg3b5jlAls2sgBIg.s['435']++;if(key){__cov_AYKecnXg3b5jlAls2sgBIg.b['86'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['436']++;matrix[key].apply(matrix,this._transforms[i]);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['86'][1]++;}}__cov_AYKecnXg3b5jlAls2sgBIg.s['437']++;transform=matrix.toCSSText();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['84'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['438']++;this._graphic.addToRedrawQueue(this);__cov_AYKecnXg3b5jlAls2sgBIg.s['439']++;transformOrigin=100*transformOrigin[0]+'% '+100*transformOrigin[1]+'%';__cov_AYKecnXg3b5jlAls2sgBIg.s['440']++;Y_DOM.setStyle(node,'transformOrigin',transformOrigin);__cov_AYKecnXg3b5jlAls2sgBIg.s['441']++;if(transform){__cov_AYKecnXg3b5jlAls2sgBIg.b['87'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['442']++;Y_DOM.setStyle(node,'transform',transform);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['87'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['443']++;this._transforms=[];},_updateHandler:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['66']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['444']++;this._draw();__cov_AYKecnXg3b5jlAls2sgBIg.s['445']++;this._updateTransform();},_draw:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['67']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['446']++;var node=this.node;__cov_AYKecnXg3b5jlAls2sgBIg.s['447']++;this.clear();__cov_AYKecnXg3b5jlAls2sgBIg.s['448']++;this._closePath();__cov_AYKecnXg3b5jlAls2sgBIg.s['449']++;node.style.left=this.get('x')+'px';__cov_AYKecnXg3b5jlAls2sgBIg.s['450']++;node.style.top=this.get('y')+'px';},_closePath:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['68']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['451']++;if(!this._methods){__cov_AYKecnXg3b5jlAls2sgBIg.b['88'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['452']++;return;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['88'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['453']++;var node=this.get('node'),w=this._right-this._left,h=this._bottom-this._top,context=this._context,methods=[],cachedMethods=this._methods.concat(),i,j,method,args,argsLen,len=0;__cov_AYKecnXg3b5jlAls2sgBIg.s['454']++;this._context.clearRect(0,0,node.width,node.height);__cov_AYKecnXg3b5jlAls2sgBIg.s['455']++;if(this._methods){__cov_AYKecnXg3b5jlAls2sgBIg.b['89'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['456']++;len=cachedMethods.length;__cov_AYKecnXg3b5jlAls2sgBIg.s['457']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['91'][0]++,!len)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['91'][1]++,len<1)){__cov_AYKecnXg3b5jlAls2sgBIg.b['90'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['458']++;return;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['90'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['459']++;for(i=0;i<len;++i){__cov_AYKecnXg3b5jlAls2sgBIg.s['460']++;methods[i]=cachedMethods[i].concat();__cov_AYKecnXg3b5jlAls2sgBIg.s['461']++;args=methods[i];__cov_AYKecnXg3b5jlAls2sgBIg.s['462']++;argsLen=(__cov_AYKecnXg3b5jlAls2sgBIg.b['93'][0]++,args[0]==='quadraticCurveTo')||(__cov_AYKecnXg3b5jlAls2sgBIg.b['93'][1]++,args[0]==='bezierCurveTo')?(__cov_AYKecnXg3b5jlAls2sgBIg.b['92'][0]++,args.length):(__cov_AYKecnXg3b5jlAls2sgBIg.b['92'][1]++,3);__cov_AYKecnXg3b5jlAls2sgBIg.s['463']++;for(j=1;j<argsLen;++j){__cov_AYKecnXg3b5jlAls2sgBIg.s['464']++;if(j%2===0){__cov_AYKecnXg3b5jlAls2sgBIg.b['94'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['465']++;args[j]=args[j]-this._top;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['94'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['466']++;args[j]=args[j]-this._left;}}}__cov_AYKecnXg3b5jlAls2sgBIg.s['467']++;node.setAttribute('width',Math.min(w,2000));__cov_AYKecnXg3b5jlAls2sgBIg.s['468']++;node.setAttribute('height',Math.min(2000,h));__cov_AYKecnXg3b5jlAls2sgBIg.s['469']++;context.beginPath();__cov_AYKecnXg3b5jlAls2sgBIg.s['470']++;for(i=0;i<len;++i){__cov_AYKecnXg3b5jlAls2sgBIg.s['471']++;args=methods[i].concat();__cov_AYKecnXg3b5jlAls2sgBIg.s['472']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['96'][0]++,args)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['96'][1]++,args.length>0)){__cov_AYKecnXg3b5jlAls2sgBIg.b['95'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['473']++;method=args.shift();__cov_AYKecnXg3b5jlAls2sgBIg.s['474']++;if(method){__cov_AYKecnXg3b5jlAls2sgBIg.b['97'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['475']++;if(method==='closePath'){__cov_AYKecnXg3b5jlAls2sgBIg.b['98'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['476']++;context.closePath();__cov_AYKecnXg3b5jlAls2sgBIg.s['477']++;this._strokeAndFill(context);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['98'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['478']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['100'][0]++,method)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['100'][1]++,method==='lineTo')&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['100'][2]++,this._dashstyle)){__cov_AYKecnXg3b5jlAls2sgBIg.b['99'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['479']++;args.unshift(this._xcoords[i]-this._left,this._ycoords[i]-this._top);__cov_AYKecnXg3b5jlAls2sgBIg.s['480']++;this._drawDashedLine.apply(this,args);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['99'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['481']++;context[method].apply(context,args);}}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['97'][1]++;}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['95'][1]++;}}__cov_AYKecnXg3b5jlAls2sgBIg.s['482']++;this._strokeAndFill(context);__cov_AYKecnXg3b5jlAls2sgBIg.s['483']++;this._drawingComplete=true;__cov_AYKecnXg3b5jlAls2sgBIg.s['484']++;this._clearAndUpdateCoords();__cov_AYKecnXg3b5jlAls2sgBIg.s['485']++;this._updateNodePosition();__cov_AYKecnXg3b5jlAls2sgBIg.s['486']++;this._methods=cachedMethods;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['89'][1]++;}},_strokeAndFill:function(context){__cov_AYKecnXg3b5jlAls2sgBIg.f['69']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['487']++;if(this._fillType){__cov_AYKecnXg3b5jlAls2sgBIg.b['101'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['488']++;if(this._fillType==='linear'){__cov_AYKecnXg3b5jlAls2sgBIg.b['102'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['489']++;context.fillStyle=this._getLinearGradient();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['102'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['490']++;if(this._fillType==='radial'){__cov_AYKecnXg3b5jlAls2sgBIg.b['103'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['491']++;context.fillStyle=this._getRadialGradient();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['103'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['492']++;context.fillStyle=this._fillColor;}}__cov_AYKecnXg3b5jlAls2sgBIg.s['493']++;context.closePath();__cov_AYKecnXg3b5jlAls2sgBIg.s['494']++;context.fill();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['101'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['495']++;if(this._stroke){__cov_AYKecnXg3b5jlAls2sgBIg.b['104'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['496']++;if(this._strokeWeight){__cov_AYKecnXg3b5jlAls2sgBIg.b['105'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['497']++;context.lineWidth=this._strokeWeight;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['105'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['498']++;context.lineCap=this._linecap;__cov_AYKecnXg3b5jlAls2sgBIg.s['499']++;context.lineJoin=this._linejoin;__cov_AYKecnXg3b5jlAls2sgBIg.s['500']++;if(this._miterlimit){__cov_AYKecnXg3b5jlAls2sgBIg.b['106'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['501']++;context.miterLimit=this._miterlimit;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['106'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['502']++;context.strokeStyle=this._strokeStyle;__cov_AYKecnXg3b5jlAls2sgBIg.s['503']++;context.stroke();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['104'][1]++;}},_drawDashedLine:function(xStart,yStart,xEnd,yEnd){__cov_AYKecnXg3b5jlAls2sgBIg.f['70']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['504']++;var context=this._context,dashsize=this._dashstyle[0],gapsize=this._dashstyle[1],segmentLength=dashsize+gapsize,xDelta=xEnd-xStart,yDelta=yEnd-yStart,delta=Math.sqrt(Math.pow(xDelta,2)+Math.pow(yDelta,2)),segmentCount=Math.floor(Math.abs(delta/segmentLength)),radians=Math.atan2(yDelta,xDelta),xCurrent=xStart,yCurrent=yStart,i;__cov_AYKecnXg3b5jlAls2sgBIg.s['505']++;xDelta=Math.cos(radians)*segmentLength;__cov_AYKecnXg3b5jlAls2sgBIg.s['506']++;yDelta=Math.sin(radians)*segmentLength;__cov_AYKecnXg3b5jlAls2sgBIg.s['507']++;for(i=0;i<segmentCount;++i){__cov_AYKecnXg3b5jlAls2sgBIg.s['508']++;context.moveTo(xCurrent,yCurrent);__cov_AYKecnXg3b5jlAls2sgBIg.s['509']++;context.lineTo(xCurrent+Math.cos(radians)*dashsize,yCurrent+Math.sin(radians)*dashsize);__cov_AYKecnXg3b5jlAls2sgBIg.s['510']++;xCurrent+=xDelta;__cov_AYKecnXg3b5jlAls2sgBIg.s['511']++;yCurrent+=yDelta;}__cov_AYKecnXg3b5jlAls2sgBIg.s['512']++;context.moveTo(xCurrent,yCurrent);__cov_AYKecnXg3b5jlAls2sgBIg.s['513']++;delta=Math.sqrt((xEnd-xCurrent)*(xEnd-xCurrent)+(yEnd-yCurrent)*(yEnd-yCurrent));__cov_AYKecnXg3b5jlAls2sgBIg.s['514']++;if(delta>dashsize){__cov_AYKecnXg3b5jlAls2sgBIg.b['107'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['515']++;context.lineTo(xCurrent+Math.cos(radians)*dashsize,yCurrent+Math.sin(radians)*dashsize);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['107'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['516']++;if(delta>0){__cov_AYKecnXg3b5jlAls2sgBIg.b['108'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['517']++;context.lineTo(xCurrent+Math.cos(radians)*delta,yCurrent+Math.sin(radians)*delta);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['108'][1]++;}}__cov_AYKecnXg3b5jlAls2sgBIg.s['518']++;context.moveTo(xEnd,yEnd);},getBounds:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['71']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['519']++;var type=this._type,w=this.get('width'),h=this.get('height'),x=this.get('x'),y=this.get('y');__cov_AYKecnXg3b5jlAls2sgBIg.s['520']++;if(type==='path'){__cov_AYKecnXg3b5jlAls2sgBIg.b['109'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['521']++;x=x+this._left;__cov_AYKecnXg3b5jlAls2sgBIg.s['522']++;y=y+this._top;__cov_AYKecnXg3b5jlAls2sgBIg.s['523']++;w=this._right-this._left;__cov_AYKecnXg3b5jlAls2sgBIg.s['524']++;h=this._bottom-this._top;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['109'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['525']++;return this._getContentRect(w,h,x,y);},_getContentRect:function(w,h,x,y){__cov_AYKecnXg3b5jlAls2sgBIg.f['72']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['526']++;var transformOrigin=this.get('transformOrigin'),transformX=transformOrigin[0]*w,transformY=transformOrigin[1]*h,transforms=this.matrix.getTransformArray(this.get('transform')),matrix=new Y.Matrix(),i,len=transforms.length,transform,key,contentRect;__cov_AYKecnXg3b5jlAls2sgBIg.s['527']++;if(this._type==='path'){__cov_AYKecnXg3b5jlAls2sgBIg.b['110'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['528']++;transformX=transformX+x;__cov_AYKecnXg3b5jlAls2sgBIg.s['529']++;transformY=transformY+y;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['110'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['530']++;transformX=!isNaN(transformX)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['111'][0]++,transformX):(__cov_AYKecnXg3b5jlAls2sgBIg.b['111'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['531']++;transformY=!isNaN(transformY)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['112'][0]++,transformY):(__cov_AYKecnXg3b5jlAls2sgBIg.b['112'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['532']++;matrix.translate(transformX,transformY);__cov_AYKecnXg3b5jlAls2sgBIg.s['533']++;for(i=0;i<len;i=i+1){__cov_AYKecnXg3b5jlAls2sgBIg.s['534']++;transform=transforms[i];__cov_AYKecnXg3b5jlAls2sgBIg.s['535']++;key=transform.shift();__cov_AYKecnXg3b5jlAls2sgBIg.s['536']++;if(key){__cov_AYKecnXg3b5jlAls2sgBIg.b['113'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['537']++;matrix[key].apply(matrix,transform);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['113'][1]++;}}__cov_AYKecnXg3b5jlAls2sgBIg.s['538']++;matrix.translate(-transformX,-transformY);__cov_AYKecnXg3b5jlAls2sgBIg.s['539']++;contentRect=matrix.getContentRect(w,h,x,y);__cov_AYKecnXg3b5jlAls2sgBIg.s['540']++;return contentRect;},toFront:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['73']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['541']++;var graphic=this.get('graphic');__cov_AYKecnXg3b5jlAls2sgBIg.s['542']++;if(graphic){__cov_AYKecnXg3b5jlAls2sgBIg.b['114'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['543']++;graphic._toFront(this);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['114'][1]++;}},toBack:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['74']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['544']++;var graphic=this.get('graphic');__cov_AYKecnXg3b5jlAls2sgBIg.s['545']++;if(graphic){__cov_AYKecnXg3b5jlAls2sgBIg.b['115'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['546']++;graphic._toBack(this);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['115'][1]++;}},_parsePathData:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['75']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['547']++;var method,methodSymbol,args,commandArray=Y.Lang.trim(val.match(SPLITPATHPATTERN)),i,len,str,symbolToMethod=this._pathSymbolToMethod;__cov_AYKecnXg3b5jlAls2sgBIg.s['548']++;if(commandArray){__cov_AYKecnXg3b5jlAls2sgBIg.b['116'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['549']++;this.clear();__cov_AYKecnXg3b5jlAls2sgBIg.s['550']++;len=(__cov_AYKecnXg3b5jlAls2sgBIg.b['117'][0]++,commandArray.length)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['117'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['551']++;for(i=0;i<len;i=i+1){__cov_AYKecnXg3b5jlAls2sgBIg.s['552']++;str=commandArray[i];__cov_AYKecnXg3b5jlAls2sgBIg.s['553']++;methodSymbol=str.substr(0,1);__cov_AYKecnXg3b5jlAls2sgBIg.s['554']++;args=str.substr(1).match(SPLITARGSPATTERN);__cov_AYKecnXg3b5jlAls2sgBIg.s['555']++;method=symbolToMethod[methodSymbol];__cov_AYKecnXg3b5jlAls2sgBIg.s['556']++;if(method){__cov_AYKecnXg3b5jlAls2sgBIg.b['118'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['557']++;if(args){__cov_AYKecnXg3b5jlAls2sgBIg.b['119'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['558']++;this[method].apply(this,args);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['119'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['559']++;this[method].apply(this);}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['118'][1]++;}}__cov_AYKecnXg3b5jlAls2sgBIg.s['560']++;this.end();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['116'][1]++;}},destroy:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['76']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['561']++;var graphic=this.get('graphic');__cov_AYKecnXg3b5jlAls2sgBIg.s['562']++;if(graphic){__cov_AYKecnXg3b5jlAls2sgBIg.b['120'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['563']++;graphic.removeShape(this);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['120'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['564']++;this._destroy();}},_destroy:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['77']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['565']++;if(this.node){__cov_AYKecnXg3b5jlAls2sgBIg.b['121'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['566']++;Y.Event.purgeElement(this.node,true);__cov_AYKecnXg3b5jlAls2sgBIg.s['567']++;if(this.node.parentNode){__cov_AYKecnXg3b5jlAls2sgBIg.b['122'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['568']++;this.node.style.visibility='';__cov_AYKecnXg3b5jlAls2sgBIg.s['569']++;this.node.parentNode.removeChild(this.node);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['122'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['570']++;this._context=null;__cov_AYKecnXg3b5jlAls2sgBIg.s['571']++;this.node=null;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['121'][1]++;}}},Y.CanvasDrawing.prototype));__cov_AYKecnXg3b5jlAls2sgBIg.s['572']++;CanvasShape.ATTRS={transformOrigin:{valueFn:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['78']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['573']++;return[0.5,0.5];}},transform:{setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['79']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['574']++;this.matrix.init();__cov_AYKecnXg3b5jlAls2sgBIg.s['575']++;this._transforms=this.matrix.getTransformArray(val);__cov_AYKecnXg3b5jlAls2sgBIg.s['576']++;this._transform=val;__cov_AYKecnXg3b5jlAls2sgBIg.s['577']++;return val;},getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['80']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['578']++;return this._transform;}},node:{readOnly:true,getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['81']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['579']++;return this.node;}},id:{valueFn:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['82']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['580']++;return Y.guid();},setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['83']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['581']++;var node=this.node;__cov_AYKecnXg3b5jlAls2sgBIg.s['582']++;if(node){__cov_AYKecnXg3b5jlAls2sgBIg.b['123'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['583']++;node.setAttribute('id',val);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['123'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['584']++;return val;}},width:{value:0},height:{value:0},x:{value:0},y:{value:0},visible:{value:true,setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['84']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['585']++;var node=this.get('node'),visibility=val?(__cov_AYKecnXg3b5jlAls2sgBIg.b['124'][0]++,'visible'):(__cov_AYKecnXg3b5jlAls2sgBIg.b['124'][1]++,'hidden');__cov_AYKecnXg3b5jlAls2sgBIg.s['586']++;if(node){__cov_AYKecnXg3b5jlAls2sgBIg.b['125'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['587']++;node.style.visibility=visibility;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['125'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['588']++;return val;}},fill:{valueFn:'_getDefaultFill',setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['85']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['589']++;var fill,tmpl=(__cov_AYKecnXg3b5jlAls2sgBIg.b['126'][0]++,this.get('fill'))||(__cov_AYKecnXg3b5jlAls2sgBIg.b['126'][1]++,this._getDefaultFill());__cov_AYKecnXg3b5jlAls2sgBIg.s['590']++;fill=val?(__cov_AYKecnXg3b5jlAls2sgBIg.b['127'][0]++,Y.merge(tmpl,val)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['127'][1]++,null);__cov_AYKecnXg3b5jlAls2sgBIg.s['591']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['129'][0]++,fill)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['129'][1]++,fill.color)){__cov_AYKecnXg3b5jlAls2sgBIg.b['128'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['592']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['131'][0]++,fill.color===undefined)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['131'][1]++,fill.color==='none')){__cov_AYKecnXg3b5jlAls2sgBIg.b['130'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['593']++;fill.color=null;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['130'][1]++;}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['128'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['594']++;this._setFillProps(fill);__cov_AYKecnXg3b5jlAls2sgBIg.s['595']++;return fill;}},stroke:{valueFn:'_getDefaultStroke',setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['86']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['596']++;var tmpl=(__cov_AYKecnXg3b5jlAls2sgBIg.b['132'][0]++,this.get('stroke'))||(__cov_AYKecnXg3b5jlAls2sgBIg.b['132'][1]++,this._getDefaultStroke()),wt;__cov_AYKecnXg3b5jlAls2sgBIg.s['597']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['134'][0]++,val)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['134'][1]++,val.hasOwnProperty('weight'))){__cov_AYKecnXg3b5jlAls2sgBIg.b['133'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['598']++;wt=parseInt(val.weight,10);__cov_AYKecnXg3b5jlAls2sgBIg.s['599']++;if(!isNaN(wt)){__cov_AYKecnXg3b5jlAls2sgBIg.b['135'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['600']++;val.weight=wt;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['135'][1]++;}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['133'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['601']++;val=val?(__cov_AYKecnXg3b5jlAls2sgBIg.b['136'][0]++,Y.merge(tmpl,val)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['136'][1]++,null);__cov_AYKecnXg3b5jlAls2sgBIg.s['602']++;this._setStrokeProps(val);__cov_AYKecnXg3b5jlAls2sgBIg.s['603']++;return val;}},autoSize:{value:false},pointerEvents:{value:'visiblePainted'},data:{setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['87']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['604']++;if(this.get('node')){__cov_AYKecnXg3b5jlAls2sgBIg.b['137'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['605']++;this._parsePathData(val);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['137'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['606']++;return val;}},graphic:{readOnly:true,getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['88']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['607']++;return this._graphic;}}};__cov_AYKecnXg3b5jlAls2sgBIg.s['608']++;Y.CanvasShape=CanvasShape;__cov_AYKecnXg3b5jlAls2sgBIg.s['609']++;CanvasPath=function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['89']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['610']++;CanvasPath.superclass.constructor.apply(this,arguments);};__cov_AYKecnXg3b5jlAls2sgBIg.s['611']++;CanvasPath.NAME='path';__cov_AYKecnXg3b5jlAls2sgBIg.s['612']++;Y.extend(CanvasPath,Y.CanvasShape,{_type:'path',_draw:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['90']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['613']++;this._closePath();__cov_AYKecnXg3b5jlAls2sgBIg.s['614']++;this._updateTransform();},createNode:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['91']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['615']++;var host=this,node=Y.config.doc.createElement('canvas'),name=host.name,concat=host._camelCaseConcat,id=host.get('id');__cov_AYKecnXg3b5jlAls2sgBIg.s['616']++;host._context=node.getContext('2d');__cov_AYKecnXg3b5jlAls2sgBIg.s['617']++;node.setAttribute('overflow','visible');__cov_AYKecnXg3b5jlAls2sgBIg.s['618']++;node.setAttribute('pointer-events','none');__cov_AYKecnXg3b5jlAls2sgBIg.s['619']++;node.style.pointerEvents='none';__cov_AYKecnXg3b5jlAls2sgBIg.s['620']++;node.style.overflow='visible';__cov_AYKecnXg3b5jlAls2sgBIg.s['621']++;node.setAttribute('id',id);__cov_AYKecnXg3b5jlAls2sgBIg.s['622']++;id='#'+id;__cov_AYKecnXg3b5jlAls2sgBIg.s['623']++;host.node=node;__cov_AYKecnXg3b5jlAls2sgBIg.s['624']++;host.addClass(_getClassName(SHAPE)+' '+_getClassName(concat(IMPLEMENTATION,SHAPE))+' '+_getClassName(name)+' '+_getClassName(concat(IMPLEMENTATION,name)));},end:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['92']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['625']++;this._draw();__cov_AYKecnXg3b5jlAls2sgBIg.s['626']++;return this;}});__cov_AYKecnXg3b5jlAls2sgBIg.s['627']++;CanvasPath.ATTRS=Y.merge(Y.CanvasShape.ATTRS,{width:{getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['93']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['628']++;var offset=(__cov_AYKecnXg3b5jlAls2sgBIg.b['139'][0]++,this._stroke)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['139'][1]++,this._strokeWeight)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['138'][0]++,this._strokeWeight*2):(__cov_AYKecnXg3b5jlAls2sgBIg.b['138'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['629']++;return this._width-offset;},setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['94']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['630']++;this._width=val;__cov_AYKecnXg3b5jlAls2sgBIg.s['631']++;return val;}},height:{getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['95']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['632']++;var offset=(__cov_AYKecnXg3b5jlAls2sgBIg.b['141'][0]++,this._stroke)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['141'][1]++,this._strokeWeight)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['140'][0]++,this._strokeWeight*2):(__cov_AYKecnXg3b5jlAls2sgBIg.b['140'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['633']++;return this._height-offset;},setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['96']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['634']++;this._height=val;__cov_AYKecnXg3b5jlAls2sgBIg.s['635']++;return val;}},path:{readOnly:true,getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['97']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['636']++;return this._path;}}});__cov_AYKecnXg3b5jlAls2sgBIg.s['637']++;Y.CanvasPath=CanvasPath;__cov_AYKecnXg3b5jlAls2sgBIg.s['638']++;CanvasRect=function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['98']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['639']++;CanvasRect.superclass.constructor.apply(this,arguments);};__cov_AYKecnXg3b5jlAls2sgBIg.s['640']++;CanvasRect.NAME='rect';__cov_AYKecnXg3b5jlAls2sgBIg.s['641']++;Y.extend(CanvasRect,Y.CanvasShape,{_type:'rect',_draw:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['99']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['642']++;var w=this.get('width'),h=this.get('height');__cov_AYKecnXg3b5jlAls2sgBIg.s['643']++;this.clear();__cov_AYKecnXg3b5jlAls2sgBIg.s['644']++;this.drawRect(0,0,w,h);__cov_AYKecnXg3b5jlAls2sgBIg.s['645']++;this._closePath();}});__cov_AYKecnXg3b5jlAls2sgBIg.s['646']++;CanvasRect.ATTRS=Y.CanvasShape.ATTRS;__cov_AYKecnXg3b5jlAls2sgBIg.s['647']++;Y.CanvasRect=CanvasRect;__cov_AYKecnXg3b5jlAls2sgBIg.s['648']++;CanvasEllipse=function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['100']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['649']++;CanvasEllipse.superclass.constructor.apply(this,arguments);};__cov_AYKecnXg3b5jlAls2sgBIg.s['650']++;CanvasEllipse.NAME='ellipse';__cov_AYKecnXg3b5jlAls2sgBIg.s['651']++;Y.extend(CanvasEllipse,CanvasShape,{_type:'ellipse',_draw:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['101']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['652']++;var w=this.get('width'),h=this.get('height');__cov_AYKecnXg3b5jlAls2sgBIg.s['653']++;this.clear();__cov_AYKecnXg3b5jlAls2sgBIg.s['654']++;this.drawEllipse(0,0,w,h);__cov_AYKecnXg3b5jlAls2sgBIg.s['655']++;this._closePath();}});__cov_AYKecnXg3b5jlAls2sgBIg.s['656']++;CanvasEllipse.ATTRS=Y.merge(CanvasShape.ATTRS,{xRadius:{setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['102']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['657']++;this.set('width',val*2);},getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['103']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['658']++;var val=this.get('width');__cov_AYKecnXg3b5jlAls2sgBIg.s['659']++;if(val){__cov_AYKecnXg3b5jlAls2sgBIg.b['142'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['660']++;val*=0.5;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['142'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['661']++;return val;}},yRadius:{setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['104']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['662']++;this.set('height',val*2);},getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['105']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['663']++;var val=this.get('height');__cov_AYKecnXg3b5jlAls2sgBIg.s['664']++;if(val){__cov_AYKecnXg3b5jlAls2sgBIg.b['143'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['665']++;val*=0.5;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['143'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['666']++;return val;}}});__cov_AYKecnXg3b5jlAls2sgBIg.s['667']++;Y.CanvasEllipse=CanvasEllipse;__cov_AYKecnXg3b5jlAls2sgBIg.s['668']++;CanvasCircle=function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['106']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['669']++;CanvasCircle.superclass.constructor.apply(this,arguments);};__cov_AYKecnXg3b5jlAls2sgBIg.s['670']++;CanvasCircle.NAME='circle';__cov_AYKecnXg3b5jlAls2sgBIg.s['671']++;Y.extend(CanvasCircle,Y.CanvasShape,{_type:'circle',_draw:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['107']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['672']++;var radius=this.get('radius');__cov_AYKecnXg3b5jlAls2sgBIg.s['673']++;if(radius){__cov_AYKecnXg3b5jlAls2sgBIg.b['144'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['674']++;this.clear();__cov_AYKecnXg3b5jlAls2sgBIg.s['675']++;this.drawCircle(0,0,radius);__cov_AYKecnXg3b5jlAls2sgBIg.s['676']++;this._closePath();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['144'][1]++;}}});__cov_AYKecnXg3b5jlAls2sgBIg.s['677']++;CanvasCircle.ATTRS=Y.merge(Y.CanvasShape.ATTRS,{width:{setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['108']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['678']++;this.set('radius',val/2);__cov_AYKecnXg3b5jlAls2sgBIg.s['679']++;return val;},getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['109']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['680']++;return this.get('radius')*2;}},height:{setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['110']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['681']++;this.set('radius',val/2);__cov_AYKecnXg3b5jlAls2sgBIg.s['682']++;return val;},getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['111']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['683']++;return this.get('radius')*2;}},radius:{lazyAdd:false}});__cov_AYKecnXg3b5jlAls2sgBIg.s['684']++;Y.CanvasCircle=CanvasCircle;__cov_AYKecnXg3b5jlAls2sgBIg.s['685']++;CanvasPieSlice=function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['112']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['686']++;CanvasPieSlice.superclass.constructor.apply(this,arguments);};__cov_AYKecnXg3b5jlAls2sgBIg.s['687']++;CanvasPieSlice.NAME='canvasPieSlice';__cov_AYKecnXg3b5jlAls2sgBIg.s['688']++;Y.extend(CanvasPieSlice,Y.CanvasShape,{_type:'path',_draw:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['113']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['689']++;var x=this.get('cx'),y=this.get('cy'),startAngle=this.get('startAngle'),arc=this.get('arc'),radius=this.get('radius');__cov_AYKecnXg3b5jlAls2sgBIg.s['690']++;this.clear();__cov_AYKecnXg3b5jlAls2sgBIg.s['691']++;this._left=x;__cov_AYKecnXg3b5jlAls2sgBIg.s['692']++;this._right=radius;__cov_AYKecnXg3b5jlAls2sgBIg.s['693']++;this._top=y;__cov_AYKecnXg3b5jlAls2sgBIg.s['694']++;this._bottom=radius;__cov_AYKecnXg3b5jlAls2sgBIg.s['695']++;this.drawWedge(x,y,startAngle,arc,radius);__cov_AYKecnXg3b5jlAls2sgBIg.s['696']++;this.end();}});__cov_AYKecnXg3b5jlAls2sgBIg.s['697']++;CanvasPieSlice.ATTRS=Y.mix({cx:{value:0},cy:{value:0},startAngle:{value:0},arc:{value:0},radius:{value:0}},Y.CanvasShape.ATTRS);__cov_AYKecnXg3b5jlAls2sgBIg.s['698']++;Y.CanvasPieSlice=CanvasPieSlice;__cov_AYKecnXg3b5jlAls2sgBIg.s['699']++;function CanvasGraphic(){__cov_AYKecnXg3b5jlAls2sgBIg.f['114']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['700']++;CanvasGraphic.superclass.constructor.apply(this,arguments);}__cov_AYKecnXg3b5jlAls2sgBIg.s['701']++;CanvasGraphic.NAME='canvasGraphic';__cov_AYKecnXg3b5jlAls2sgBIg.s['702']++;CanvasGraphic.ATTRS={render:{},id:{valueFn:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['115']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['703']++;return Y.guid();},setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['116']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['704']++;var node=this._node;__cov_AYKecnXg3b5jlAls2sgBIg.s['705']++;if(node){__cov_AYKecnXg3b5jlAls2sgBIg.b['145'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['706']++;node.setAttribute('id',val);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['145'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['707']++;return val;}},shapes:{readOnly:true,getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['117']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['708']++;return this._shapes;}},contentBounds:{readOnly:true,getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['118']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['709']++;return this._contentBounds;}},node:{readOnly:true,getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['119']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['710']++;return this._node;}},width:{setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['120']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['711']++;if(this._node){__cov_AYKecnXg3b5jlAls2sgBIg.b['146'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['712']++;this._node.style.width=val+'px';}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['146'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['713']++;return val;}},height:{setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['121']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['714']++;if(this._node){__cov_AYKecnXg3b5jlAls2sgBIg.b['147'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['715']++;this._node.style.height=val+'px';}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['147'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['716']++;return val;}},autoSize:{value:false},preserveAspectRatio:{value:'xMidYMid'},resizeDown:{value:false},x:{getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['122']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['717']++;return this._x;},setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['123']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['718']++;this._x=val;__cov_AYKecnXg3b5jlAls2sgBIg.s['719']++;if(this._node){__cov_AYKecnXg3b5jlAls2sgBIg.b['148'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['720']++;this._node.style.left=val+'px';}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['148'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['721']++;return val;}},y:{getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['124']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['722']++;return this._y;},setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['125']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['723']++;this._y=val;__cov_AYKecnXg3b5jlAls2sgBIg.s['724']++;if(this._node){__cov_AYKecnXg3b5jlAls2sgBIg.b['149'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['725']++;this._node.style.top=val+'px';}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['149'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['726']++;return val;}},autoDraw:{value:true},visible:{value:true,setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['126']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['727']++;this._toggleVisible(val);__cov_AYKecnXg3b5jlAls2sgBIg.s['728']++;return val;}}};__cov_AYKecnXg3b5jlAls2sgBIg.s['729']++;Y.extend(CanvasGraphic,Y.GraphicBase,{set:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['127']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['730']++;var host=this,attr=arguments[0],redrawAttrs={autoDraw:true,autoSize:true,preserveAspectRatio:true,resizeDown:true},key,forceRedraw=false;__cov_AYKecnXg3b5jlAls2sgBIg.s['731']++;AttributeLite.prototype.set.apply(host,arguments);__cov_AYKecnXg3b5jlAls2sgBIg.s['732']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['151'][0]++,host._state.autoDraw===true)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['151'][1]++,Y.Object.size(this._shapes)>0)){__cov_AYKecnXg3b5jlAls2sgBIg.b['150'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['733']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['153'][0]++,Y_LANG.isString)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['153'][1]++,redrawAttrs[attr])){__cov_AYKecnXg3b5jlAls2sgBIg.b['152'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['734']++;forceRedraw=true;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['152'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['735']++;if(Y_LANG.isObject(attr)){__cov_AYKecnXg3b5jlAls2sgBIg.b['154'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['736']++;for(key in redrawAttrs){__cov_AYKecnXg3b5jlAls2sgBIg.s['737']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['156'][0]++,redrawAttrs.hasOwnProperty(key))&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['156'][1]++,attr[key])){__cov_AYKecnXg3b5jlAls2sgBIg.b['155'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['738']++;forceRedraw=true;__cov_AYKecnXg3b5jlAls2sgBIg.s['739']++;break;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['155'][1]++;}}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['154'][1]++;}}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['150'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['740']++;if(forceRedraw){__cov_AYKecnXg3b5jlAls2sgBIg.b['157'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['741']++;host._redraw();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['157'][1]++;}},_x:0,_y:0,getXY:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['128']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['742']++;var node=this._node,xy;__cov_AYKecnXg3b5jlAls2sgBIg.s['743']++;if(node){__cov_AYKecnXg3b5jlAls2sgBIg.b['158'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['744']++;xy=Y.DOM.getXY(node);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['158'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['745']++;return xy;},initializer:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['129']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['746']++;var render=this.get('render'),visibility=this.get('visible')?(__cov_AYKecnXg3b5jlAls2sgBIg.b['159'][0]++,'visible'):(__cov_AYKecnXg3b5jlAls2sgBIg.b['159'][1]++,'hidden'),w=(__cov_AYKecnXg3b5jlAls2sgBIg.b['160'][0]++,this.get('width'))||(__cov_AYKecnXg3b5jlAls2sgBIg.b['160'][1]++,0),h=(__cov_AYKecnXg3b5jlAls2sgBIg.b['161'][0]++,this.get('height'))||(__cov_AYKecnXg3b5jlAls2sgBIg.b['161'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['747']++;this._shapes={};__cov_AYKecnXg3b5jlAls2sgBIg.s['748']++;this._redrawQueue={};__cov_AYKecnXg3b5jlAls2sgBIg.s['749']++;this._contentBounds={left:0,top:0,right:0,bottom:0};__cov_AYKecnXg3b5jlAls2sgBIg.s['750']++;this._node=DOCUMENT.createElement('div');__cov_AYKecnXg3b5jlAls2sgBIg.s['751']++;this._node.style.position='absolute';__cov_AYKecnXg3b5jlAls2sgBIg.s['752']++;this._node.style.visibility=visibility;__cov_AYKecnXg3b5jlAls2sgBIg.s['753']++;this.set('width',w);__cov_AYKecnXg3b5jlAls2sgBIg.s['754']++;this.set('height',h);__cov_AYKecnXg3b5jlAls2sgBIg.s['755']++;if(render){__cov_AYKecnXg3b5jlAls2sgBIg.b['162'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['756']++;this.render(render);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['162'][1]++;}},render:function(render){__cov_AYKecnXg3b5jlAls2sgBIg.f['130']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['757']++;var parentNode=(__cov_AYKecnXg3b5jlAls2sgBIg.b['163'][0]++,render)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['163'][1]++,DOCUMENT.body),node=this._node,w,h;__cov_AYKecnXg3b5jlAls2sgBIg.s['758']++;if(render instanceof Y.Node){__cov_AYKecnXg3b5jlAls2sgBIg.b['164'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['759']++;parentNode=render._node;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['164'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['760']++;if(Y.Lang.isString(render)){__cov_AYKecnXg3b5jlAls2sgBIg.b['165'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['761']++;parentNode=Y.Selector.query(render,DOCUMENT.body,true);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['165'][1]++;}}__cov_AYKecnXg3b5jlAls2sgBIg.s['762']++;w=(__cov_AYKecnXg3b5jlAls2sgBIg.b['166'][0]++,this.get('width'))||(__cov_AYKecnXg3b5jlAls2sgBIg.b['166'][1]++,parseInt(Y.DOM.getComputedStyle(parentNode,'width'),10));__cov_AYKecnXg3b5jlAls2sgBIg.s['763']++;h=(__cov_AYKecnXg3b5jlAls2sgBIg.b['167'][0]++,this.get('height'))||(__cov_AYKecnXg3b5jlAls2sgBIg.b['167'][1]++,parseInt(Y.DOM.getComputedStyle(parentNode,'height'),10));__cov_AYKecnXg3b5jlAls2sgBIg.s['764']++;parentNode.appendChild(node);__cov_AYKecnXg3b5jlAls2sgBIg.s['765']++;node.style.display='block';__cov_AYKecnXg3b5jlAls2sgBIg.s['766']++;node.style.position='absolute';__cov_AYKecnXg3b5jlAls2sgBIg.s['767']++;node.style.left=this.get('x')+'px';__cov_AYKecnXg3b5jlAls2sgBIg.s['768']++;node.style.top=this.get('y')+'px';__cov_AYKecnXg3b5jlAls2sgBIg.s['769']++;this.set('width',w);__cov_AYKecnXg3b5jlAls2sgBIg.s['770']++;this.set('height',h);__cov_AYKecnXg3b5jlAls2sgBIg.s['771']++;this.parentNode=parentNode;__cov_AYKecnXg3b5jlAls2sgBIg.s['772']++;return this;},destroy:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['131']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['773']++;this.removeAllShapes();__cov_AYKecnXg3b5jlAls2sgBIg.s['774']++;if(this._node){__cov_AYKecnXg3b5jlAls2sgBIg.b['168'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['775']++;this._removeChildren(this._node);__cov_AYKecnXg3b5jlAls2sgBIg.s['776']++;if(this._node.parentNode){__cov_AYKecnXg3b5jlAls2sgBIg.b['169'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['777']++;this._node.parentNode.removeChild(this._node);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['169'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['778']++;this._node=null;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['168'][1]++;}},addShape:function(cfg){__cov_AYKecnXg3b5jlAls2sgBIg.f['132']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['779']++;cfg.graphic=this;__cov_AYKecnXg3b5jlAls2sgBIg.s['780']++;if(!this.get('visible')){__cov_AYKecnXg3b5jlAls2sgBIg.b['170'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['781']++;cfg.visible=false;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['170'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['782']++;var ShapeClass=this._getShapeClass(cfg.type),shape=new ShapeClass(cfg);__cov_AYKecnXg3b5jlAls2sgBIg.s['783']++;this._appendShape(shape);__cov_AYKecnXg3b5jlAls2sgBIg.s['784']++;return shape;},_appendShape:function(shape){__cov_AYKecnXg3b5jlAls2sgBIg.f['133']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['785']++;var node=shape.node,parentNode=(__cov_AYKecnXg3b5jlAls2sgBIg.b['171'][0]++,this._frag)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['171'][1]++,this._node);__cov_AYKecnXg3b5jlAls2sgBIg.s['786']++;if(this.get('autoDraw')){__cov_AYKecnXg3b5jlAls2sgBIg.b['172'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['787']++;parentNode.appendChild(node);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['172'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['788']++;this._getDocFrag().appendChild(node);}},removeShape:function(shape){__cov_AYKecnXg3b5jlAls2sgBIg.f['134']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['789']++;if(!(shape instanceof CanvasShape)){__cov_AYKecnXg3b5jlAls2sgBIg.b['173'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['790']++;if(Y_LANG.isString(shape)){__cov_AYKecnXg3b5jlAls2sgBIg.b['174'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['791']++;shape=this._shapes[shape];}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['174'][1]++;}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['173'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['792']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['176'][0]++,shape)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['176'][1]++,shape instanceof CanvasShape)){__cov_AYKecnXg3b5jlAls2sgBIg.b['175'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['793']++;shape._destroy();__cov_AYKecnXg3b5jlAls2sgBIg.s['794']++;delete this._shapes[shape.get('id')];}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['175'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['795']++;if(this.get('autoDraw')){__cov_AYKecnXg3b5jlAls2sgBIg.b['177'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['796']++;this._redraw();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['177'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['797']++;return shape;},removeAllShapes:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['135']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['798']++;var shapes=this._shapes,i;__cov_AYKecnXg3b5jlAls2sgBIg.s['799']++;for(i in shapes){__cov_AYKecnXg3b5jlAls2sgBIg.s['800']++;if(shapes.hasOwnProperty(i)){__cov_AYKecnXg3b5jlAls2sgBIg.b['178'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['801']++;shapes[i].destroy();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['178'][1]++;}}__cov_AYKecnXg3b5jlAls2sgBIg.s['802']++;this._shapes={};},clear:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['136']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['803']++;this.removeAllShapes();},_removeChildren:function(node){__cov_AYKecnXg3b5jlAls2sgBIg.f['137']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['804']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['180'][0]++,node)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['180'][1]++,node.hasChildNodes())){__cov_AYKecnXg3b5jlAls2sgBIg.b['179'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['805']++;var child;__cov_AYKecnXg3b5jlAls2sgBIg.s['806']++;while(node.firstChild){__cov_AYKecnXg3b5jlAls2sgBIg.s['807']++;child=node.firstChild;__cov_AYKecnXg3b5jlAls2sgBIg.s['808']++;this._removeChildren(child);__cov_AYKecnXg3b5jlAls2sgBIg.s['809']++;node.removeChild(child);}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['179'][1]++;}},_toggleVisible:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['138']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['810']++;var i,shapes=this._shapes,visibility=val?(__cov_AYKecnXg3b5jlAls2sgBIg.b['181'][0]++,'visible'):(__cov_AYKecnXg3b5jlAls2sgBIg.b['181'][1]++,'hidden');__cov_AYKecnXg3b5jlAls2sgBIg.s['811']++;if(shapes){__cov_AYKecnXg3b5jlAls2sgBIg.b['182'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['812']++;for(i in shapes){__cov_AYKecnXg3b5jlAls2sgBIg.s['813']++;if(shapes.hasOwnProperty(i)){__cov_AYKecnXg3b5jlAls2sgBIg.b['183'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['814']++;shapes[i].set('visible',val);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['183'][1]++;}}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['182'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['815']++;if(this._node){__cov_AYKecnXg3b5jlAls2sgBIg.b['184'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['816']++;this._node.style.visibility=visibility;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['184'][1]++;}},_getShapeClass:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['139']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['817']++;var shape=this._shapeClass[val];__cov_AYKecnXg3b5jlAls2sgBIg.s['818']++;if(shape){__cov_AYKecnXg3b5jlAls2sgBIg.b['185'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['819']++;return shape;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['185'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['820']++;return val;},_shapeClass:{circle:Y.CanvasCircle,rect:Y.CanvasRect,path:Y.CanvasPath,ellipse:Y.CanvasEllipse,pieslice:Y.CanvasPieSlice},getShapeById:function(id){__cov_AYKecnXg3b5jlAls2sgBIg.f['140']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['821']++;var shape=this._shapes[id];__cov_AYKecnXg3b5jlAls2sgBIg.s['822']++;return shape;},batch:function(method){__cov_AYKecnXg3b5jlAls2sgBIg.f['141']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['823']++;var autoDraw=this.get('autoDraw');__cov_AYKecnXg3b5jlAls2sgBIg.s['824']++;this.set('autoDraw',false);__cov_AYKecnXg3b5jlAls2sgBIg.s['825']++;method();__cov_AYKecnXg3b5jlAls2sgBIg.s['826']++;this.set('autoDraw',autoDraw);},_getDocFrag:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['142']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['827']++;if(!this._frag){__cov_AYKecnXg3b5jlAls2sgBIg.b['186'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['828']++;this._frag=DOCUMENT.createDocumentFragment();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['186'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['829']++;return this._frag;},_redraw:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['143']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['830']++;var autoSize=this.get('autoSize'),preserveAspectRatio=this.get('preserveAspectRatio'),box=this.get('resizeDown')?(__cov_AYKecnXg3b5jlAls2sgBIg.b['187'][0]++,this._getUpdatedContentBounds()):(__cov_AYKecnXg3b5jlAls2sgBIg.b['187'][1]++,this._contentBounds),contentWidth,contentHeight,w,h,xScale,yScale,translateX=0,translateY=0,matrix,node=this.get('node');__cov_AYKecnXg3b5jlAls2sgBIg.s['831']++;if(autoSize){__cov_AYKecnXg3b5jlAls2sgBIg.b['188'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['832']++;if(autoSize==='sizeContentToGraphic'){__cov_AYKecnXg3b5jlAls2sgBIg.b['189'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['833']++;contentWidth=box.right-box.left;__cov_AYKecnXg3b5jlAls2sgBIg.s['834']++;contentHeight=box.bottom-box.top;__cov_AYKecnXg3b5jlAls2sgBIg.s['835']++;w=parseFloat(Y_DOM.getComputedStyle(node,'width'));__cov_AYKecnXg3b5jlAls2sgBIg.s['836']++;h=parseFloat(Y_DOM.getComputedStyle(node,'height'));__cov_AYKecnXg3b5jlAls2sgBIg.s['837']++;matrix=new Y.Matrix();__cov_AYKecnXg3b5jlAls2sgBIg.s['838']++;if(preserveAspectRatio==='none'){__cov_AYKecnXg3b5jlAls2sgBIg.b['190'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['839']++;xScale=w/contentWidth;__cov_AYKecnXg3b5jlAls2sgBIg.s['840']++;yScale=h/contentHeight;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['190'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['841']++;if(contentWidth/contentHeight!==w/h){__cov_AYKecnXg3b5jlAls2sgBIg.b['191'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['842']++;if(contentWidth*h/contentHeight>w){__cov_AYKecnXg3b5jlAls2sgBIg.b['192'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['843']++;xScale=yScale=w/contentWidth;__cov_AYKecnXg3b5jlAls2sgBIg.s['844']++;translateY=this._calculateTranslate(preserveAspectRatio.slice(5).toLowerCase(),contentHeight*w/contentWidth,h);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['192'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['845']++;xScale=yScale=h/contentHeight;__cov_AYKecnXg3b5jlAls2sgBIg.s['846']++;translateX=this._calculateTranslate(preserveAspectRatio.slice(1,4).toLowerCase(),contentWidth*h/contentHeight,w);}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['191'][1]++;}}__cov_AYKecnXg3b5jlAls2sgBIg.s['847']++;Y_DOM.setStyle(node,'transformOrigin','0% 0%');__cov_AYKecnXg3b5jlAls2sgBIg.s['848']++;translateX=translateX-box.left*xScale;__cov_AYKecnXg3b5jlAls2sgBIg.s['849']++;translateY=translateY-box.top*yScale;__cov_AYKecnXg3b5jlAls2sgBIg.s['850']++;matrix.translate(translateX,translateY);__cov_AYKecnXg3b5jlAls2sgBIg.s['851']++;matrix.scale(xScale,yScale);__cov_AYKecnXg3b5jlAls2sgBIg.s['852']++;Y_DOM.setStyle(node,'transform',matrix.toCSSText());}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['189'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['853']++;this.set('width',box.right);__cov_AYKecnXg3b5jlAls2sgBIg.s['854']++;this.set('height',box.bottom);}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['188'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['855']++;if(this._frag){__cov_AYKecnXg3b5jlAls2sgBIg.b['193'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['856']++;this._node.appendChild(this._frag);__cov_AYKecnXg3b5jlAls2sgBIg.s['857']++;this._frag=null;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['193'][1]++;}},_calculateTranslate:function(position,contentSize,boundsSize){__cov_AYKecnXg3b5jlAls2sgBIg.f['144']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['858']++;var ratio=boundsSize-contentSize,coord;__cov_AYKecnXg3b5jlAls2sgBIg.s['859']++;switch(position){case'mid':__cov_AYKecnXg3b5jlAls2sgBIg.b['194'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['860']++;coord=ratio*0.5;__cov_AYKecnXg3b5jlAls2sgBIg.s['861']++;break;case'max':__cov_AYKecnXg3b5jlAls2sgBIg.b['194'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['862']++;coord=ratio;__cov_AYKecnXg3b5jlAls2sgBIg.s['863']++;break;default:__cov_AYKecnXg3b5jlAls2sgBIg.b['194'][2]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['864']++;coord=0;__cov_AYKecnXg3b5jlAls2sgBIg.s['865']++;break;}__cov_AYKecnXg3b5jlAls2sgBIg.s['866']++;return coord;},addToRedrawQueue:function(shape){__cov_AYKecnXg3b5jlAls2sgBIg.f['145']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['867']++;var shapeBox,box;__cov_AYKecnXg3b5jlAls2sgBIg.s['868']++;this._shapes[shape.get('id')]=shape;__cov_AYKecnXg3b5jlAls2sgBIg.s['869']++;if(!this.get('resizeDown')){__cov_AYKecnXg3b5jlAls2sgBIg.b['195'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['870']++;shapeBox=shape.getBounds();__cov_AYKecnXg3b5jlAls2sgBIg.s['871']++;box=this._contentBounds;__cov_AYKecnXg3b5jlAls2sgBIg.s['872']++;box.left=box.left<shapeBox.left?(__cov_AYKecnXg3b5jlAls2sgBIg.b['196'][0]++,box.left):(__cov_AYKecnXg3b5jlAls2sgBIg.b['196'][1]++,shapeBox.left);__cov_AYKecnXg3b5jlAls2sgBIg.s['873']++;box.top=box.top<shapeBox.top?(__cov_AYKecnXg3b5jlAls2sgBIg.b['197'][0]++,box.top):(__cov_AYKecnXg3b5jlAls2sgBIg.b['197'][1]++,shapeBox.top);__cov_AYKecnXg3b5jlAls2sgBIg.s['874']++;box.right=box.right>shapeBox.right?(__cov_AYKecnXg3b5jlAls2sgBIg.b['198'][0]++,box.right):(__cov_AYKecnXg3b5jlAls2sgBIg.b['198'][1]++,shapeBox.right);__cov_AYKecnXg3b5jlAls2sgBIg.s['875']++;box.bottom=box.bottom>shapeBox.bottom?(__cov_AYKecnXg3b5jlAls2sgBIg.b['199'][0]++,box.bottom):(__cov_AYKecnXg3b5jlAls2sgBIg.b['199'][1]++,shapeBox.bottom);__cov_AYKecnXg3b5jlAls2sgBIg.s['876']++;this._contentBounds=box;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['195'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['877']++;if(this.get('autoDraw')){__cov_AYKecnXg3b5jlAls2sgBIg.b['200'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['878']++;this._redraw();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['200'][1]++;}},_getUpdatedContentBounds:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['146']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['879']++;var bounds,i,shape,queue=this._shapes,box={};__cov_AYKecnXg3b5jlAls2sgBIg.s['880']++;for(i in queue){__cov_AYKecnXg3b5jlAls2sgBIg.s['881']++;if(queue.hasOwnProperty(i)){__cov_AYKecnXg3b5jlAls2sgBIg.b['201'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['882']++;shape=queue[i];__cov_AYKecnXg3b5jlAls2sgBIg.s['883']++;bounds=shape.getBounds();__cov_AYKecnXg3b5jlAls2sgBIg.s['884']++;box.left=Y_LANG.isNumber(box.left)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['202'][0]++,Math.min(box.left,bounds.left)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['202'][1]++,bounds.left);__cov_AYKecnXg3b5jlAls2sgBIg.s['885']++;box.top=Y_LANG.isNumber(box.top)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['203'][0]++,Math.min(box.top,bounds.top)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['203'][1]++,bounds.top);__cov_AYKecnXg3b5jlAls2sgBIg.s['886']++;box.right=Y_LANG.isNumber(box.right)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['204'][0]++,Math.max(box.right,bounds.right)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['204'][1]++,bounds.right);__cov_AYKecnXg3b5jlAls2sgBIg.s['887']++;box.bottom=Y_LANG.isNumber(box.bottom)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['205'][0]++,Math.max(box.bottom,bounds.bottom)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['205'][1]++,bounds.bottom);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['201'][1]++;}}__cov_AYKecnXg3b5jlAls2sgBIg.s['888']++;box.left=Y_LANG.isNumber(box.left)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['206'][0]++,box.left):(__cov_AYKecnXg3b5jlAls2sgBIg.b['206'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['889']++;box.top=Y_LANG.isNumber(box.top)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['207'][0]++,box.top):(__cov_AYKecnXg3b5jlAls2sgBIg.b['207'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['890']++;box.right=Y_LANG.isNumber(box.right)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['208'][0]++,box.right):(__cov_AYKecnXg3b5jlAls2sgBIg.b['208'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['891']++;box.bottom=Y_LANG.isNumber(box.bottom)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['209'][0]++,box.bottom):(__cov_AYKecnXg3b5jlAls2sgBIg.b['209'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['892']++;this._contentBounds=box;__cov_AYKecnXg3b5jlAls2sgBIg.s['893']++;return box;},_toFront:function(shape){__cov_AYKecnXg3b5jlAls2sgBIg.f['147']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['894']++;var contentNode=this.get('node');__cov_AYKecnXg3b5jlAls2sgBIg.s['895']++;if(shape instanceof Y.CanvasShape){__cov_AYKecnXg3b5jlAls2sgBIg.b['210'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['896']++;shape=shape.get('node');}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['210'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['897']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['212'][0]++,contentNode)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['212'][1]++,shape)){__cov_AYKecnXg3b5jlAls2sgBIg.b['211'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['898']++;contentNode.appendChild(shape);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['211'][1]++;}},_toBack:function(shape){__cov_AYKecnXg3b5jlAls2sgBIg.f['148']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['899']++;var contentNode=this.get('node'),targetNode;__cov_AYKecnXg3b5jlAls2sgBIg.s['900']++;if(shape instanceof Y.CanvasShape){__cov_AYKecnXg3b5jlAls2sgBIg.b['213'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['901']++;shape=shape.get('node');}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['213'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['902']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['215'][0]++,contentNode)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['215'][1]++,shape)){__cov_AYKecnXg3b5jlAls2sgBIg.b['214'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['903']++;targetNode=contentNode.firstChild;__cov_AYKecnXg3b5jlAls2sgBIg.s['904']++;if(targetNode){__cov_AYKecnXg3b5jlAls2sgBIg.b['216'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['905']++;contentNode.insertBefore(shape,targetNode);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['216'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['906']++;contentNode.appendChild(shape);}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['214'][1]++;}}});__cov_AYKecnXg3b5jlAls2sgBIg.s['907']++;Y.CanvasGraphic=CanvasGraphic;},'@VERSION@',{'requires':['graphics']});