src/cm/media/js/lib/yui/yui_3.10.3/build/graphics-canvas/graphics-canvas-coverage.js
changeset 525 89ef5ed3c48b
equal deleted inserted replaced
524:322d0feea350 525:89ef5ed3c48b
       
     1 /*
       
     2 YUI 3.10.3 (build 2fb5187)
       
     3 Copyright 2013 Yahoo! Inc. All rights reserved.
       
     4 Licensed under the BSD License.
       
     5 http://yuilibrary.com/license/
       
     6 */
       
     7 
       
     8 if (typeof __coverage__ === 'undefined') { __coverage__ = {}; }
       
     9 if (!__coverage__['build/graphics-canvas/graphics-canvas.js']) {
       
    10    __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},"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,0],"70":[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,0],"100":[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,0],"190":[0,0],"191":[0,0],"192":[0,0],"193":[0,0],"194":[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]},"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":1145,"loc":{"start":{"line":1145,"column":11},"end":{"line":1146,"column":1}}},"43":{"name":"(anonymous_43)","line":1157,"loc":{"start":{"line":1157,"column":14},"end":{"line":1158,"column":1}}},"44":{"name":"(anonymous_44)","line":1169,"loc":{"start":{"line":1169,"column":8},"end":{"line":1170,"column":1}}},"45":{"name":"(anonymous_45)","line":1184,"loc":{"start":{"line":1184,"column":8},"end":{"line":1185,"column":1}}},"46":{"name":"(anonymous_46)","line":1202,"loc":{"start":{"line":1202,"column":11},"end":{"line":1203,"column":1}}},"47":{"name":"(anonymous_47)","line":1214,"loc":{"start":{"line":1214,"column":7},"end":{"line":1215,"column":1}}},"48":{"name":"(anonymous_48)","line":1227,"loc":{"start":{"line":1227,"column":12},"end":{"line":1227,"column":30}}},"49":{"name":"(anonymous_49)","line":1239,"loc":{"start":{"line":1239,"column":18},"end":{"line":1239,"column":29}}},"50":{"name":"(anonymous_50)","line":1258,"loc":{"start":{"line":1258,"column":20},"end":{"line":1259,"column":1}}},"51":{"name":"(anonymous_51)","line":1311,"loc":{"start":{"line":1311,"column":13},"end":{"line":1312,"column":1}}},"52":{"name":"(anonymous_52)","line":1348,"loc":{"start":{"line":1348,"column":5},"end":{"line":1349,"column":1}}},"53":{"name":"(anonymous_53)","line":1364,"loc":{"start":{"line":1364,"column":18},"end":{"line":1365,"column":1}}},"54":{"name":"(anonymous_54)","line":1429,"loc":{"start":{"line":1429,"column":6},"end":{"line":1430,"column":1}}},"55":{"name":"(anonymous_55)","line":1446,"loc":{"start":{"line":1446,"column":16},"end":{"line":1447,"column":1}}},"56":{"name":"(anonymous_56)","line":1495,"loc":{"start":{"line":1495,"column":12},"end":{"line":1496,"column":1}}},"57":{"name":"(anonymous_57)","line":1509,"loc":{"start":{"line":1509,"column":13},"end":{"line":1510,"column":4}}},"58":{"name":"(anonymous_58)","line":1522,"loc":{"start":{"line":1522,"column":13},"end":{"line":1523,"column":4}}},"59":{"name":"(anonymous_59)","line":1535,"loc":{"start":{"line":1535,"column":10},"end":{"line":1536,"column":4}}},"60":{"name":"(anonymous_60)","line":1546,"loc":{"start":{"line":1546,"column":11},"end":{"line":1547,"column":4}}},"61":{"name":"(anonymous_61)","line":1557,"loc":{"start":{"line":1557,"column":11},"end":{"line":1558,"column":4}}},"62":{"name":"(anonymous_62)","line":1568,"loc":{"start":{"line":1568,"column":12},"end":{"line":1569,"column":4}}},"63":{"name":"(anonymous_63)","line":1579,"loc":{"start":{"line":1579,"column":11},"end":{"line":1580,"column":4}}},"64":{"name":"(anonymous_64)","line":1601,"loc":{"start":{"line":1601,"column":16},"end":{"line":1602,"column":1}}},"65":{"name":"(anonymous_65)","line":1619,"loc":{"start":{"line":1619,"column":19},"end":{"line":1620,"column":1}}},"66":{"name":"(anonymous_66)","line":1658,"loc":{"start":{"line":1658,"column":17},"end":{"line":1659,"column":1}}},"67":{"name":"(anonymous_67)","line":1670,"loc":{"start":{"line":1670,"column":8},"end":{"line":1671,"column":1}}},"68":{"name":"(anonymous_68)","line":1685,"loc":{"start":{"line":1685,"column":13},"end":{"line":1686,"column":1}}},"69":{"name":"(anonymous_69)","line":1772,"loc":{"start":{"line":1772,"column":20},"end":{"line":1773,"column":4}}},"70":{"name":"(anonymous_70)","line":1818,"loc":{"start":{"line":1818,"column":18},"end":{"line":1819,"column":1}}},"71":{"name":"(anonymous_71)","line":1867,"loc":{"start":{"line":1867,"column":12},"end":{"line":1868,"column":1}}},"72":{"name":"(anonymous_72)","line":1894,"loc":{"start":{"line":1894,"column":21},"end":{"line":1895,"column":4}}},"73":{"name":"(anonymous_73)","line":1933,"loc":{"start":{"line":1933,"column":13},"end":{"line":1934,"column":4}}},"74":{"name":"(anonymous_74)","line":1947,"loc":{"start":{"line":1947,"column":12},"end":{"line":1948,"column":4}}},"75":{"name":"(anonymous_75)","line":1963,"loc":{"start":{"line":1963,"column":20},"end":{"line":1964,"column":4}}},"76":{"name":"(anonymous_76)","line":2004,"loc":{"start":{"line":2004,"column":13},"end":{"line":2005,"column":4}}},"77":{"name":"(anonymous_77)","line":2023,"loc":{"start":{"line":2023,"column":14},"end":{"line":2024,"column":4}}},"78":{"name":"(anonymous_78)","line":2043,"loc":{"start":{"line":2043,"column":11},"end":{"line":2044,"column":2}}},"79":{"name":"(anonymous_79)","line":2080,"loc":{"start":{"line":2080,"column":10},"end":{"line":2081,"column":2}}},"80":{"name":"(anonymous_80)","line":2088,"loc":{"start":{"line":2088,"column":16},"end":{"line":2089,"column":8}}},"81":{"name":"(anonymous_81)","line":2104,"loc":{"start":{"line":2104,"column":10},"end":{"line":2105,"column":2}}},"82":{"name":"(anonymous_82)","line":2117,"loc":{"start":{"line":2117,"column":11},"end":{"line":2118,"column":2}}},"83":{"name":"(anonymous_83)","line":2122,"loc":{"start":{"line":2122,"column":10},"end":{"line":2123,"column":2}}},"84":{"name":"(anonymous_84)","line":2182,"loc":{"start":{"line":2182,"column":10},"end":{"line":2182,"column":23}}},"85":{"name":"(anonymous_85)","line":2245,"loc":{"start":{"line":2245,"column":10},"end":{"line":2246,"column":2}}},"86":{"name":"(anonymous_86)","line":2293,"loc":{"start":{"line":2293,"column":10},"end":{"line":2294,"column":2}}},"87":{"name":"(anonymous_87)","line":2336,"loc":{"start":{"line":2336,"column":16},"end":{"line":2337,"column":8}}},"88":{"name":"(anonymous_88)","line":2355,"loc":{"start":{"line":2355,"column":10},"end":{"line":2356,"column":2}}},"89":{"name":"(anonymous_89)","line":2373,"loc":{"start":{"line":2373,"column":13},"end":{"line":2374,"column":0}}},"90":{"name":"(anonymous_90)","line":2394,"loc":{"start":{"line":2394,"column":11},"end":{"line":2395,"column":4}}},"91":{"name":"(anonymous_91)","line":2407,"loc":{"start":{"line":2407,"column":13},"end":{"line":2408,"column":1}}},"92":{"name":"(anonymous_92)","line":2438,"loc":{"start":{"line":2438,"column":9},"end":{"line":2439,"column":4}}},"93":{"name":"(anonymous_93)","line":2452,"loc":{"start":{"line":2452,"column":10},"end":{"line":2453,"column":2}}},"94":{"name":"(anonymous_94)","line":2458,"loc":{"start":{"line":2458,"column":10},"end":{"line":2459,"column":2}}},"95":{"name":"(anonymous_95)","line":2472,"loc":{"start":{"line":2472,"column":10},"end":{"line":2473,"column":2}}},"96":{"name":"(anonymous_96)","line":2478,"loc":{"start":{"line":2478,"column":10},"end":{"line":2479,"column":2}}},"97":{"name":"(anonymous_97)","line":2495,"loc":{"start":{"line":2495,"column":10},"end":{"line":2496,"column":2}}},"98":{"name":"(anonymous_98)","line":2513,"loc":{"start":{"line":2513,"column":13},"end":{"line":2514,"column":0}}},"99":{"name":"(anonymous_99)","line":2534,"loc":{"start":{"line":2534,"column":8},"end":{"line":2535,"column":1}}},"100":{"name":"(anonymous_100)","line":2556,"loc":{"start":{"line":2556,"column":16},"end":{"line":2557,"column":0}}},"101":{"name":"(anonymous_101)","line":2579,"loc":{"start":{"line":2579,"column":8},"end":{"line":2580,"column":1}}},"102":{"name":"(anonymous_102)","line":2596,"loc":{"start":{"line":2596,"column":10},"end":{"line":2597,"column":2}}},"103":{"name":"(anonymous_103)","line":2601,"loc":{"start":{"line":2601,"column":10},"end":{"line":2602,"column":2}}},"104":{"name":"(anonymous_104)","line":2620,"loc":{"start":{"line":2620,"column":10},"end":{"line":2621,"column":2}}},"105":{"name":"(anonymous_105)","line":2625,"loc":{"start":{"line":2625,"column":10},"end":{"line":2626,"column":2}}},"106":{"name":"(anonymous_106)","line":2648,"loc":{"start":{"line":2648,"column":15},"end":{"line":2649,"column":0}}},"107":{"name":"(anonymous_107)","line":2671,"loc":{"start":{"line":2671,"column":8},"end":{"line":2672,"column":1}}},"108":{"name":"(anonymous_108)","line":2691,"loc":{"start":{"line":2691,"column":16},"end":{"line":2692,"column":8}}},"109":{"name":"(anonymous_109)","line":2697,"loc":{"start":{"line":2697,"column":10},"end":{"line":2698,"column":2}}},"110":{"name":"(anonymous_110)","line":2710,"loc":{"start":{"line":2710,"column":16},"end":{"line":2711,"column":8}}},"111":{"name":"(anonymous_111)","line":2716,"loc":{"start":{"line":2716,"column":10},"end":{"line":2717,"column":2}}},"112":{"name":"(anonymous_112)","line":2740,"loc":{"start":{"line":2740,"column":17},"end":{"line":2741,"column":0}}},"113":{"name":"(anonymous_113)","line":2761,"loc":{"start":{"line":2761,"column":8},"end":{"line":2762,"column":1}}},"114":{"name":"CanvasGraphic","line":2827,"loc":{"start":{"line":2827,"column":0},"end":{"line":2827,"column":25}}},"115":{"name":"(anonymous_115)","line":2851,"loc":{"start":{"line":2851,"column":11},"end":{"line":2852,"column":2}}},"116":{"name":"(anonymous_116)","line":2856,"loc":{"start":{"line":2856,"column":10},"end":{"line":2857,"column":2}}},"117":{"name":"(anonymous_117)","line":2877,"loc":{"start":{"line":2877,"column":16},"end":{"line":2878,"column":8}}},"118":{"name":"(anonymous_118)","line":2893,"loc":{"start":{"line":2893,"column":16},"end":{"line":2894,"column":8}}},"119":{"name":"(anonymous_119)","line":2909,"loc":{"start":{"line":2909,"column":16},"end":{"line":2910,"column":8}}},"120":{"name":"(anonymous_120)","line":2922,"loc":{"start":{"line":2922,"column":16},"end":{"line":2923,"column":8}}},"121":{"name":"(anonymous_121)","line":2939,"loc":{"start":{"line":2939,"column":16},"end":{"line":2940,"column":8}}},"122":{"name":"(anonymous_122)","line":3016,"loc":{"start":{"line":3016,"column":16},"end":{"line":3017,"column":8}}},"123":{"name":"(anonymous_123)","line":3021,"loc":{"start":{"line":3021,"column":16},"end":{"line":3022,"column":8}}},"124":{"name":"(anonymous_124)","line":3039,"loc":{"start":{"line":3039,"column":16},"end":{"line":3040,"column":8}}},"125":{"name":"(anonymous_125)","line":3044,"loc":{"start":{"line":3044,"column":16},"end":{"line":3045,"column":8}}},"126":{"name":"(anonymous_126)","line":3077,"loc":{"start":{"line":3077,"column":16},"end":{"line":3078,"column":8}}},"127":{"name":"(anonymous_127)","line":3095,"loc":{"start":{"line":3095,"column":6},"end":{"line":3096,"column":1}}},"128":{"name":"(anonymous_128)","line":3156,"loc":{"start":{"line":3156,"column":11},"end":{"line":3157,"column":4}}},"129":{"name":"(anonymous_129)","line":3174,"loc":{"start":{"line":3174,"column":17},"end":{"line":3174,"column":28}}},"130":{"name":"(anonymous_130)","line":3204,"loc":{"start":{"line":3204,"column":12},"end":{"line":3204,"column":29}}},"131":{"name":"(anonymous_131)","line":3226,"loc":{"start":{"line":3226,"column":13},"end":{"line":3227,"column":4}}},"132":{"name":"(anonymous_132)","line":3243,"loc":{"start":{"line":3243,"column":14},"end":{"line":3244,"column":4}}},"133":{"name":"(anonymous_133)","line":3263,"loc":{"start":{"line":3263,"column":18},"end":{"line":3264,"column":4}}},"134":{"name":"(anonymous_134)","line":3283,"loc":{"start":{"line":3283,"column":17},"end":{"line":3284,"column":4}}},"135":{"name":"(anonymous_135)","line":3309,"loc":{"start":{"line":3309,"column":21},"end":{"line":3310,"column":4}}},"136":{"name":"(anonymous_136)","line":3328,"loc":{"start":{"line":3328,"column":11},"end":{"line":3328,"column":22}}},"137":{"name":"(anonymous_137)","line":3339,"loc":{"start":{"line":3339,"column":21},"end":{"line":3340,"column":4}}},"138":{"name":"(anonymous_138)","line":3360,"loc":{"start":{"line":3360,"column":20},"end":{"line":3361,"column":4}}},"139":{"name":"(anonymous_139)","line":3389,"loc":{"start":{"line":3389,"column":20},"end":{"line":3390,"column":4}}},"140":{"name":"(anonymous_140)","line":3421,"loc":{"start":{"line":3421,"column":18},"end":{"line":3422,"column":4}}},"141":{"name":"(anonymous_141)","line":3433,"loc":{"start":{"line":3433,"column":11},"end":{"line":3434,"column":4}}},"142":{"name":"(anonymous_142)","line":3448,"loc":{"start":{"line":3448,"column":17},"end":{"line":3449,"column":4}}},"143":{"name":"(anonymous_143)","line":3463,"loc":{"start":{"line":3463,"column":13},"end":{"line":3464,"column":4}}},"144":{"name":"(anonymous_144)","line":3538,"loc":{"start":{"line":3538,"column":25},"end":{"line":3539,"column":4}}},"145":{"name":"(anonymous_145)","line":3565,"loc":{"start":{"line":3565,"column":22},"end":{"line":3566,"column":4}}},"146":{"name":"(anonymous_146)","line":3593,"loc":{"start":{"line":3593,"column":30},"end":{"line":3594,"column":4}}},"147":{"name":"(anonymous_147)","line":3627,"loc":{"start":{"line":3627,"column":14},"end":{"line":3628,"column":4}}},"148":{"name":"(anonymous_148)","line":3647,"loc":{"start":{"line":3647,"column":13},"end":{"line":3648,"column":4}}}},"statementMap":{"1":{"start":{"line":1,"column":0},"end":{"line":3673,"column":41}},"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":2032,"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":1136,"column":9}},"333":{"start":{"line":1126,"column":12},"end":{"line":1126,"column":35}},"334":{"start":{"line":1130,"column":12},"end":{"line":1130,"column":35}},"335":{"start":{"line":1131,"column":12},"end":{"line":1133,"column":15}},"336":{"start":{"line":1134,"column":12},"end":{"line":1134,"column":39}},"337":{"start":{"line":1135,"column":12},"end":{"line":1135,"column":36}},"338":{"start":{"line":1147,"column":2},"end":{"line":1147,"column":37}},"339":{"start":{"line":1148,"column":2},"end":{"line":1148,"column":27}},"340":{"start":{"line":1159,"column":2},"end":{"line":1159,"column":37}},"341":{"start":{"line":1160,"column":2},"end":{"line":1160,"column":30}},"342":{"start":{"line":1171,"column":2},"end":{"line":1174,"column":21}},"343":{"start":{"line":1175,"column":2},"end":{"line":1175,"column":44}},"344":{"start":{"line":1186,"column":2},"end":{"line":1189,"column":27}},"345":{"start":{"line":1190,"column":2},"end":{"line":1190,"column":20}},"346":{"start":{"line":1191,"column":2},"end":{"line":1191,"column":20}},"347":{"start":{"line":1192,"column":2},"end":{"line":1192,"column":33}},"348":{"start":{"line":1204,"column":2},"end":{"line":1204,"column":37}},"349":{"start":{"line":1216,"column":2},"end":{"line":1216,"column":48}},"350":{"start":{"line":1228,"column":2},"end":{"line":1228,"column":23}},"351":{"start":{"line":1229,"column":2},"end":{"line":1229,"column":26}},"352":{"start":{"line":1240,"column":2},"end":{"line":1248,"column":4}},"353":{"start":{"line":1260,"column":2},"end":{"line":1265,"column":4}},"354":{"start":{"line":1313,"column":2},"end":{"line":1317,"column":29}},"355":{"start":{"line":1318,"column":2},"end":{"line":1318,"column":40}},"356":{"start":{"line":1319,"column":2},"end":{"line":1319,"column":43}},"357":{"start":{"line":1320,"column":8},"end":{"line":1320,"column":40}},"358":{"start":{"line":1321,"column":8},"end":{"line":1324,"column":9}},"359":{"start":{"line":1323,"column":12},"end":{"line":1323,"column":45}},"360":{"start":{"line":1325,"column":2},"end":{"line":1325,"column":30}},"361":{"start":{"line":1326,"column":2},"end":{"line":1326,"column":16}},"362":{"start":{"line":1327,"column":8},"end":{"line":1327,"column":25}},"363":{"start":{"line":1328,"column":2},"end":{"line":1336,"column":10}},"364":{"start":{"line":1350,"column":2},"end":{"line":1353,"column":3}},"365":{"start":{"line":1352,"column":3},"end":{"line":1352,"column":52}},"366":{"start":{"line":1354,"column":2},"end":{"line":1354,"column":37}},"367":{"start":{"line":1366,"column":2},"end":{"line":1371,"column":13}},"368":{"start":{"line":1372,"column":8},"end":{"line":1417,"column":9}},"369":{"start":{"line":1374,"column":12},"end":{"line":1374,"column":33}},"370":{"start":{"line":1375,"column":12},"end":{"line":1375,"column":48}},"371":{"start":{"line":1376,"column":12},"end":{"line":1376,"column":50}},"372":{"start":{"line":1377,"column":12},"end":{"line":1377,"column":50}},"373":{"start":{"line":1378,"column":12},"end":{"line":1378,"column":47}},"374":{"start":{"line":1379,"column":12},"end":{"line":1379,"column":41}},"375":{"start":{"line":1380,"column":12},"end":{"line":1380,"column":36}},"376":{"start":{"line":1381,"column":12},"end":{"line":1381,"column":114}},"377":{"start":{"line":1382,"column":12},"end":{"line":1382,"column":40}},"378":{"start":{"line":1384,"column":12},"end":{"line":1391,"column":13}},"379":{"start":{"line":1386,"column":16},"end":{"line":1386,"column":33}},"380":{"start":{"line":1390,"column":16},"end":{"line":1390,"column":33}},"381":{"start":{"line":1392,"column":12},"end":{"line":1398,"column":13}},"382":{"start":{"line":1393,"column":16},"end":{"line":1393,"column":65}},"383":{"start":{"line":1397,"column":16},"end":{"line":1397,"column":42}},"384":{"start":{"line":1399,"column":12},"end":{"line":1399,"column":36}},"385":{"start":{"line":1400,"column":12},"end":{"line":1412,"column":13}},"386":{"start":{"line":1402,"column":16},"end":{"line":1402,"column":42}},"387":{"start":{"line":1406,"column":16},"end":{"line":1406,"column":50}},"388":{"start":{"line":1407,"column":16},"end":{"line":1411,"column":17}},"389":{"start":{"line":1409,"column":20},"end":{"line":1409,"column":62}},"390":{"start":{"line":1410,"column":20},"end":{"line":1410,"column":45}},"391":{"start":{"line":1416,"column":12},"end":{"line":1416,"column":29}},"392":{"start":{"line":1431,"column":2},"end":{"line":1431,"column":18}},"393":{"start":{"line":1432,"column":2},"end":{"line":1432,"column":53}},"394":{"start":{"line":1433,"column":2},"end":{"line":1436,"column":3}},"395":{"start":{"line":1435,"column":3},"end":{"line":1435,"column":25}},"396":{"start":{"line":1448,"column":2},"end":{"line":1451,"column":8}},"397":{"start":{"line":1452,"column":8},"end":{"line":1485,"column":3}},"398":{"start":{"line":1454,"column":12},"end":{"line":1454,"column":31}},"399":{"start":{"line":1455,"column":12},"end":{"line":1455,"column":29}},"400":{"start":{"line":1456,"column":12},"end":{"line":1479,"column":13}},"401":{"start":{"line":1458,"column":16},"end":{"line":1458,"column":38}},"402":{"start":{"line":1460,"column":17},"end":{"line":1479,"column":13}},"403":{"start":{"line":1462,"column":16},"end":{"line":1462,"column":39}},"404":{"start":{"line":1463,"column":16},"end":{"line":1471,"column":17}},"405":{"start":{"line":1465,"column":20},"end":{"line":1465,"column":64}},"406":{"start":{"line":1466,"column":20},"end":{"line":1466,"column":57}},"407":{"start":{"line":1470,"column":20},"end":{"line":1470,"column":41}},"408":{"start":{"line":1473,"column":16},"end":{"line":1473,"column":40}},"409":{"start":{"line":1474,"column":16},"end":{"line":1474,"column":41}},"410":{"start":{"line":1478,"column":16},"end":{"line":1478,"column":39}},"411":{"start":{"line":1483,"column":12},"end":{"line":1483,"column":34}},"412":{"start":{"line":1484,"column":3},"end":{"line":1484,"column":26}},"413":{"start":{"line":1497,"column":2},"end":{"line":1497,"column":24}},"414":{"start":{"line":1498,"column":2},"end":{"line":1498,"column":24}},"415":{"start":{"line":1499,"column":2},"end":{"line":1499,"column":45}},"416":{"start":{"line":1511,"column":8},"end":{"line":1511,"column":30}},"417":{"start":{"line":1512,"column":8},"end":{"line":1512,"column":52}},"418":{"start":{"line":1524,"column":8},"end":{"line":1524,"column":30}},"419":{"start":{"line":1525,"column":8},"end":{"line":1525,"column":52}},"420":{"start":{"line":1537,"column":8},"end":{"line":1537,"column":46}},"421":{"start":{"line":1548,"column":8},"end":{"line":1548,"column":47}},"422":{"start":{"line":1559,"column":8},"end":{"line":1559,"column":47}},"423":{"start":{"line":1570,"column":8},"end":{"line":1570,"column":48}},"424":{"start":{"line":1581,"column":8},"end":{"line":1581,"column":47}},"425":{"start":{"line":1603,"column":8},"end":{"line":1603,"column":29}},"426":{"start":{"line":1604,"column":8},"end":{"line":1604,"column":98}},"427":{"start":{"line":1605,"column":8},"end":{"line":1605,"column":27}},"428":{"start":{"line":1606,"column":8},"end":{"line":1606,"column":36}},"429":{"start":{"line":1607,"column":8},"end":{"line":1610,"column":9}},"430":{"start":{"line":1609,"column":12},"end":{"line":1609,"column":36}},"431":{"start":{"line":1621,"column":2},"end":{"line":1627,"column":42}},"432":{"start":{"line":1629,"column":8},"end":{"line":1640,"column":9}},"433":{"start":{"line":1631,"column":12},"end":{"line":1638,"column":13}},"434":{"start":{"line":1633,"column":16},"end":{"line":1633,"column":50}},"435":{"start":{"line":1634,"column":16},"end":{"line":1637,"column":17}},"436":{"start":{"line":1636,"column":20},"end":{"line":1636,"column":67}},"437":{"start":{"line":1639,"column":12},"end":{"line":1639,"column":43}},"438":{"start":{"line":1642,"column":8},"end":{"line":1642,"column":45}},"439":{"start":{"line":1643,"column":2},"end":{"line":1643,"column":89}},"440":{"start":{"line":1644,"column":8},"end":{"line":1644,"column":65}},"441":{"start":{"line":1645,"column":8},"end":{"line":1648,"column":3}},"442":{"start":{"line":1647,"column":12},"end":{"line":1647,"column":57}},"443":{"start":{"line":1649,"column":8},"end":{"line":1649,"column":30}},"444":{"start":{"line":1660,"column":2},"end":{"line":1660,"column":15}},"445":{"start":{"line":1661,"column":2},"end":{"line":1661,"column":26}},"446":{"start":{"line":1672,"column":8},"end":{"line":1672,"column":29}},"447":{"start":{"line":1673,"column":8},"end":{"line":1673,"column":21}},"448":{"start":{"line":1674,"column":2},"end":{"line":1674,"column":20}},"449":{"start":{"line":1675,"column":2},"end":{"line":1675,"column":41}},"450":{"start":{"line":1676,"column":2},"end":{"line":1676,"column":40}},"451":{"start":{"line":1687,"column":2},"end":{"line":1690,"column":3}},"452":{"start":{"line":1689,"column":3},"end":{"line":1689,"column":10}},"453":{"start":{"line":1691,"column":2},"end":{"line":1702,"column":11}},"454":{"start":{"line":1703,"column":2},"end":{"line":1703,"column":57}},"455":{"start":{"line":1704,"column":8},"end":{"line":1762,"column":3}},"456":{"start":{"line":1706,"column":3},"end":{"line":1706,"column":30}},"457":{"start":{"line":1707,"column":3},"end":{"line":1710,"column":4}},"458":{"start":{"line":1709,"column":4},"end":{"line":1709,"column":11}},"459":{"start":{"line":1711,"column":3},"end":{"line":1727,"column":4}},"460":{"start":{"line":1713,"column":4},"end":{"line":1713,"column":43}},"461":{"start":{"line":1714,"column":4},"end":{"line":1714,"column":22}},"462":{"start":{"line":1715,"column":16},"end":{"line":1715,"column":108}},"463":{"start":{"line":1716,"column":4},"end":{"line":1726,"column":5}},"464":{"start":{"line":1718,"column":5},"end":{"line":1725,"column":6}},"465":{"start":{"line":1720,"column":6},"end":{"line":1720,"column":36}},"466":{"start":{"line":1724,"column":6},"end":{"line":1724,"column":37}},"467":{"start":{"line":1728,"column":12},"end":{"line":1728,"column":58}},"468":{"start":{"line":1729,"column":12},"end":{"line":1729,"column":59}},"469":{"start":{"line":1730,"column":12},"end":{"line":1730,"column":32}},"470":{"start":{"line":1731,"column":3},"end":{"line":1755,"column":4}},"471":{"start":{"line":1733,"column":4},"end":{"line":1733,"column":31}},"472":{"start":{"line":1734,"column":4},"end":{"line":1754,"column":5}},"473":{"start":{"line":1736,"column":5},"end":{"line":1736,"column":27}},"474":{"start":{"line":1737,"column":5},"end":{"line":1753,"column":6}},"475":{"start":{"line":1739,"column":24},"end":{"line":1752,"column":7}},"476":{"start":{"line":1741,"column":28},"end":{"line":1741,"column":48}},"477":{"start":{"line":1742,"column":28},"end":{"line":1742,"column":57}},"478":{"start":{"line":1744,"column":11},"end":{"line":1752,"column":7}},"479":{"start":{"line":1746,"column":7},"end":{"line":1746,"column":81}},"480":{"start":{"line":1747,"column":7},"end":{"line":1747,"column":46}},"481":{"start":{"line":1751,"column":28},"end":{"line":1751,"column":65}},"482":{"start":{"line":1757,"column":12},"end":{"line":1757,"column":41}},"483":{"start":{"line":1758,"column":3},"end":{"line":1758,"column":32}},"484":{"start":{"line":1759,"column":3},"end":{"line":1759,"column":32}},"485":{"start":{"line":1760,"column":3},"end":{"line":1760,"column":30}},"486":{"start":{"line":1761,"column":3},"end":{"line":1761,"column":33}},"487":{"start":{"line":1774,"column":8},"end":{"line":1790,"column":9}},"488":{"start":{"line":1776,"column":12},"end":{"line":1787,"column":13}},"489":{"start":{"line":1778,"column":16},"end":{"line":1778,"column":62}},"490":{"start":{"line":1780,"column":17},"end":{"line":1787,"column":13}},"491":{"start":{"line":1782,"column":16},"end":{"line":1782,"column":62}},"492":{"start":{"line":1786,"column":16},"end":{"line":1786,"column":52}},"493":{"start":{"line":1788,"column":12},"end":{"line":1788,"column":32}},"494":{"start":{"line":1789,"column":12},"end":{"line":1789,"column":27}},"495":{"start":{"line":1792,"column":8},"end":{"line":1805,"column":9}},"496":{"start":{"line":1793,"column":12},"end":{"line":1796,"column":13}},"497":{"start":{"line":1795,"column":16},"end":{"line":1795,"column":55}},"498":{"start":{"line":1797,"column":12},"end":{"line":1797,"column":44}},"499":{"start":{"line":1798,"column":12},"end":{"line":1798,"column":46}},"500":{"start":{"line":1799,"column":12},"end":{"line":1802,"column":13}},"501":{"start":{"line":1801,"column":16},"end":{"line":1801,"column":54}},"502":{"start":{"line":1803,"column":12},"end":{"line":1803,"column":52}},"503":{"start":{"line":1804,"column":12},"end":{"line":1804,"column":29}},"504":{"start":{"line":1820,"column":2},"end":{"line":1831,"column":5}},"505":{"start":{"line":1832,"column":2},"end":{"line":1832,"column":45}},"506":{"start":{"line":1833,"column":2},"end":{"line":1833,"column":45}},"507":{"start":{"line":1835,"column":2},"end":{"line":1841,"column":3}},"508":{"start":{"line":1837,"column":3},"end":{"line":1837,"column":38}},"509":{"start":{"line":1838,"column":3},"end":{"line":1838,"column":100}},"510":{"start":{"line":1839,"column":3},"end":{"line":1839,"column":22}},"511":{"start":{"line":1840,"column":3},"end":{"line":1840,"column":22}},"512":{"start":{"line":1843,"column":2},"end":{"line":1843,"column":37}},"513":{"start":{"line":1844,"column":2},"end":{"line":1844,"column":99}},"514":{"start":{"line":1846,"column":2},"end":{"line":1853,"column":3}},"515":{"start":{"line":1848,"column":3},"end":{"line":1848,"column":100}},"516":{"start":{"line":1850,"column":7},"end":{"line":1853,"column":3}},"517":{"start":{"line":1852,"column":3},"end":{"line":1852,"column":94}},"518":{"start":{"line":1855,"column":2},"end":{"line":1855,"column":29}},"519":{"start":{"line":1869,"column":2},"end":{"line":1873,"column":21}},"520":{"start":{"line":1874,"column":8},"end":{"line":1880,"column":9}},"521":{"start":{"line":1876,"column":12},"end":{"line":1876,"column":31}},"522":{"start":{"line":1877,"column":12},"end":{"line":1877,"column":30}},"523":{"start":{"line":1878,"column":12},"end":{"line":1878,"column":41}},"524":{"start":{"line":1879,"column":12},"end":{"line":1879,"column":41}},"525":{"start":{"line":1881,"column":8},"end":{"line":1881,"column":48}},"526":{"start":{"line":1896,"column":8},"end":{"line":1905,"column":24}},"527":{"start":{"line":1906,"column":8},"end":{"line":1910,"column":9}},"528":{"start":{"line":1908,"column":12},"end":{"line":1908,"column":40}},"529":{"start":{"line":1909,"column":12},"end":{"line":1909,"column":40}},"530":{"start":{"line":1911,"column":8},"end":{"line":1911,"column":57}},"531":{"start":{"line":1912,"column":8},"end":{"line":1912,"column":57}},"532":{"start":{"line":1913,"column":8},"end":{"line":1913,"column":49}},"533":{"start":{"line":1914,"column":8},"end":{"line":1922,"column":9}},"534":{"start":{"line":1916,"column":12},"end":{"line":1916,"column":38}},"535":{"start":{"line":1917,"column":12},"end":{"line":1917,"column":36}},"536":{"start":{"line":1918,"column":12},"end":{"line":1921,"column":13}},"537":{"start":{"line":1920,"column":16},"end":{"line":1920,"column":53}},"538":{"start":{"line":1923,"column":8},"end":{"line":1923,"column":51}},"539":{"start":{"line":1924,"column":8},"end":{"line":1924,"column":56}},"540":{"start":{"line":1925,"column":8},"end":{"line":1925,"column":27}},"541":{"start":{"line":1935,"column":8},"end":{"line":1935,"column":42}},"542":{"start":{"line":1936,"column":8},"end":{"line":1939,"column":9}},"543":{"start":{"line":1938,"column":12},"end":{"line":1938,"column":35}},"544":{"start":{"line":1949,"column":8},"end":{"line":1949,"column":42}},"545":{"start":{"line":1950,"column":8},"end":{"line":1953,"column":9}},"546":{"start":{"line":1952,"column":12},"end":{"line":1952,"column":34}},"547":{"start":{"line":1965,"column":8},"end":{"line":1972,"column":54}},"548":{"start":{"line":1973,"column":8},"end":{"line":1996,"column":9}},"549":{"start":{"line":1975,"column":12},"end":{"line":1975,"column":25}},"550":{"start":{"line":1976,"column":12},"end":{"line":1976,"column":43}},"551":{"start":{"line":1977,"column":12},"end":{"line":1994,"column":13}},"552":{"start":{"line":1979,"column":16},"end":{"line":1979,"column":38}},"553":{"start":{"line":1980,"column":16},"end":{"line":1980,"column":48}},"554":{"start":{"line":1981,"column":16},"end":{"line":1981,"column":61}},"555":{"start":{"line":1982,"column":16},"end":{"line":1982,"column":54}},"556":{"start":{"line":1983,"column":16},"end":{"line":1993,"column":17}},"557":{"start":{"line":1985,"column":20},"end":{"line":1992,"column":21}},"558":{"start":{"line":1987,"column":24},"end":{"line":1987,"column":55}},"559":{"start":{"line":1991,"column":24},"end":{"line":1991,"column":49}},"560":{"start":{"line":1995,"column":12},"end":{"line":1995,"column":23}},"561":{"start":{"line":2006,"column":8},"end":{"line":2006,"column":42}},"562":{"start":{"line":2007,"column":8},"end":{"line":2014,"column":9}},"563":{"start":{"line":2009,"column":12},"end":{"line":2009,"column":38}},"564":{"start":{"line":2013,"column":12},"end":{"line":2013,"column":28}},"565":{"start":{"line":2025,"column":8},"end":{"line":2030,"column":9}},"566":{"start":{"line":2027,"column":12},"end":{"line":2027,"column":42}},"567":{"start":{"line":2028,"column":12},"end":{"line":2028,"column":33}},"568":{"start":{"line":2029,"column":12},"end":{"line":2029,"column":29}},"569":{"start":{"line":2034,"column":0},"end":{"line":2360,"column":2}},"570":{"start":{"line":2045,"column":3},"end":{"line":2045,"column":21}},"571":{"start":{"line":2082,"column":12},"end":{"line":2082,"column":31}},"572":{"start":{"line":2083,"column":12},"end":{"line":2083,"column":66}},"573":{"start":{"line":2084,"column":12},"end":{"line":2084,"column":34}},"574":{"start":{"line":2085,"column":12},"end":{"line":2085,"column":23}},"575":{"start":{"line":2090,"column":12},"end":{"line":2090,"column":35}},"576":{"start":{"line":2106,"column":3},"end":{"line":2106,"column":20}},"577":{"start":{"line":2119,"column":3},"end":{"line":2119,"column":19}},"578":{"start":{"line":2124,"column":3},"end":{"line":2124,"column":24}},"579":{"start":{"line":2125,"column":3},"end":{"line":2128,"column":4}},"580":{"start":{"line":2127,"column":4},"end":{"line":2127,"column":33}},"581":{"start":{"line":2129,"column":3},"end":{"line":2129,"column":14}},"582":{"start":{"line":2183,"column":3},"end":{"line":2184,"column":56}},"583":{"start":{"line":2185,"column":3},"end":{"line":2188,"column":13}},"584":{"start":{"line":2187,"column":16},"end":{"line":2187,"column":51}},"585":{"start":{"line":2189,"column":3},"end":{"line":2189,"column":14}},"586":{"start":{"line":2247,"column":3},"end":{"line":2248,"column":54}},"587":{"start":{"line":2249,"column":3},"end":{"line":2249,"column":44}},"588":{"start":{"line":2250,"column":3},"end":{"line":2256,"column":4}},"589":{"start":{"line":2252,"column":4},"end":{"line":2255,"column":5}},"590":{"start":{"line":2254,"column":5},"end":{"line":2254,"column":23}},"591":{"start":{"line":2257,"column":3},"end":{"line":2257,"column":28}},"592":{"start":{"line":2258,"column":3},"end":{"line":2258,"column":15}},"593":{"start":{"line":2295,"column":3},"end":{"line":2296,"column":19}},"594":{"start":{"line":2297,"column":12},"end":{"line":2304,"column":13}},"595":{"start":{"line":2299,"column":16},"end":{"line":2299,"column":46}},"596":{"start":{"line":2300,"column":16},"end":{"line":2303,"column":17}},"597":{"start":{"line":2302,"column":20},"end":{"line":2302,"column":36}},"598":{"start":{"line":2305,"column":3},"end":{"line":2305,"column":43}},"599":{"start":{"line":2306,"column":3},"end":{"line":2306,"column":29}},"600":{"start":{"line":2307,"column":3},"end":{"line":2307,"column":14}},"601":{"start":{"line":2338,"column":12},"end":{"line":2341,"column":13}},"602":{"start":{"line":2340,"column":16},"end":{"line":2340,"column":41}},"603":{"start":{"line":2342,"column":12},"end":{"line":2342,"column":23}},"604":{"start":{"line":2357,"column":3},"end":{"line":2357,"column":24}},"605":{"start":{"line":2361,"column":0},"end":{"line":2361,"column":28}},"606":{"start":{"line":2373,"column":0},"end":{"line":2376,"column":2}},"607":{"start":{"line":2375,"column":1},"end":{"line":2375,"column":58}},"608":{"start":{"line":2377,"column":0},"end":{"line":2377,"column":25}},"609":{"start":{"line":2378,"column":0},"end":{"line":2442,"column":3}},"610":{"start":{"line":2396,"column":8},"end":{"line":2396,"column":26}},"611":{"start":{"line":2397,"column":8},"end":{"line":2397,"column":32}},"612":{"start":{"line":2409,"column":2},"end":{"line":2413,"column":32}},"613":{"start":{"line":2414,"column":2},"end":{"line":2414,"column":40}},"614":{"start":{"line":2415,"column":2},"end":{"line":2415,"column":43}},"615":{"start":{"line":2416,"column":8},"end":{"line":2416,"column":52}},"616":{"start":{"line":2417,"column":8},"end":{"line":2417,"column":42}},"617":{"start":{"line":2418,"column":8},"end":{"line":2418,"column":40}},"618":{"start":{"line":2419,"column":2},"end":{"line":2419,"column":30}},"619":{"start":{"line":2420,"column":2},"end":{"line":2420,"column":16}},"620":{"start":{"line":2421,"column":2},"end":{"line":2421,"column":19}},"621":{"start":{"line":2422,"column":2},"end":{"line":2430,"column":10}},"622":{"start":{"line":2440,"column":8},"end":{"line":2440,"column":21}},"623":{"start":{"line":2444,"column":0},"end":{"line":2500,"column":3}},"624":{"start":{"line":2454,"column":3},"end":{"line":2454,"column":82}},"625":{"start":{"line":2455,"column":3},"end":{"line":2455,"column":31}},"626":{"start":{"line":2460,"column":3},"end":{"line":2460,"column":21}},"627":{"start":{"line":2461,"column":3},"end":{"line":2461,"column":14}},"628":{"start":{"line":2474,"column":3},"end":{"line":2474,"column":82}},"629":{"start":{"line":2475,"column":12},"end":{"line":2475,"column":41}},"630":{"start":{"line":2480,"column":3},"end":{"line":2480,"column":22}},"631":{"start":{"line":2481,"column":3},"end":{"line":2481,"column":14}},"632":{"start":{"line":2497,"column":3},"end":{"line":2497,"column":21}},"633":{"start":{"line":2501,"column":0},"end":{"line":2501,"column":26}},"634":{"start":{"line":2513,"column":0},"end":{"line":2516,"column":2}},"635":{"start":{"line":2515,"column":1},"end":{"line":2515,"column":58}},"636":{"start":{"line":2517,"column":0},"end":{"line":2517,"column":25}},"637":{"start":{"line":2518,"column":0},"end":{"line":2542,"column":3}},"638":{"start":{"line":2536,"column":2},"end":{"line":2537,"column":26}},"639":{"start":{"line":2538,"column":2},"end":{"line":2538,"column":15}},"640":{"start":{"line":2539,"column":8},"end":{"line":2539,"column":34}},"641":{"start":{"line":2540,"column":2},"end":{"line":2540,"column":20}},"642":{"start":{"line":2543,"column":0},"end":{"line":2543,"column":39}},"643":{"start":{"line":2544,"column":0},"end":{"line":2544,"column":26}},"644":{"start":{"line":2556,"column":0},"end":{"line":2559,"column":2}},"645":{"start":{"line":2558,"column":1},"end":{"line":2558,"column":61}},"646":{"start":{"line":2561,"column":0},"end":{"line":2561,"column":31}},"647":{"start":{"line":2563,"column":0},"end":{"line":2587,"column":3}},"648":{"start":{"line":2581,"column":2},"end":{"line":2582,"column":26}},"649":{"start":{"line":2583,"column":2},"end":{"line":2583,"column":15}},"650":{"start":{"line":2584,"column":8},"end":{"line":2584,"column":37}},"651":{"start":{"line":2585,"column":2},"end":{"line":2585,"column":20}},"652":{"start":{"line":2588,"column":0},"end":{"line":2635,"column":3}},"653":{"start":{"line":2598,"column":3},"end":{"line":2598,"column":30}},"654":{"start":{"line":2603,"column":3},"end":{"line":2603,"column":31}},"655":{"start":{"line":2604,"column":3},"end":{"line":2607,"column":4}},"656":{"start":{"line":2606,"column":4},"end":{"line":2606,"column":15}},"657":{"start":{"line":2608,"column":3},"end":{"line":2608,"column":14}},"658":{"start":{"line":2622,"column":3},"end":{"line":2622,"column":31}},"659":{"start":{"line":2627,"column":3},"end":{"line":2627,"column":32}},"660":{"start":{"line":2628,"column":3},"end":{"line":2631,"column":4}},"661":{"start":{"line":2630,"column":4},"end":{"line":2630,"column":15}},"662":{"start":{"line":2632,"column":3},"end":{"line":2632,"column":14}},"663":{"start":{"line":2636,"column":0},"end":{"line":2636,"column":32}},"664":{"start":{"line":2648,"column":0},"end":{"line":2651,"column":2}},"665":{"start":{"line":2650,"column":1},"end":{"line":2650,"column":60}},"666":{"start":{"line":2653,"column":0},"end":{"line":2653,"column":29}},"667":{"start":{"line":2655,"column":0},"end":{"line":2681,"column":3}},"668":{"start":{"line":2673,"column":2},"end":{"line":2673,"column":34}},"669":{"start":{"line":2674,"column":2},"end":{"line":2679,"column":3}},"670":{"start":{"line":2676,"column":12},"end":{"line":2676,"column":25}},"671":{"start":{"line":2677,"column":12},"end":{"line":2677,"column":42}},"672":{"start":{"line":2678,"column":3},"end":{"line":2678,"column":21}},"673":{"start":{"line":2683,"column":0},"end":{"line":2731,"column":3}},"674":{"start":{"line":2693,"column":12},"end":{"line":2693,"column":38}},"675":{"start":{"line":2694,"column":12},"end":{"line":2694,"column":23}},"676":{"start":{"line":2699,"column":3},"end":{"line":2699,"column":33}},"677":{"start":{"line":2712,"column":12},"end":{"line":2712,"column":38}},"678":{"start":{"line":2713,"column":12},"end":{"line":2713,"column":23}},"679":{"start":{"line":2718,"column":3},"end":{"line":2718,"column":33}},"680":{"start":{"line":2732,"column":0},"end":{"line":2732,"column":30}},"681":{"start":{"line":2740,"column":0},"end":{"line":2743,"column":2}},"682":{"start":{"line":2742,"column":1},"end":{"line":2742,"column":62}},"683":{"start":{"line":2744,"column":0},"end":{"line":2744,"column":39}},"684":{"start":{"line":2745,"column":0},"end":{"line":2776,"column":4}},"685":{"start":{"line":2763,"column":8},"end":{"line":2767,"column":40}},"686":{"start":{"line":2768,"column":8},"end":{"line":2768,"column":21}},"687":{"start":{"line":2769,"column":8},"end":{"line":2769,"column":23}},"688":{"start":{"line":2770,"column":8},"end":{"line":2770,"column":29}},"689":{"start":{"line":2771,"column":8},"end":{"line":2771,"column":22}},"690":{"start":{"line":2772,"column":8},"end":{"line":2772,"column":30}},"691":{"start":{"line":2773,"column":8},"end":{"line":2773,"column":54}},"692":{"start":{"line":2774,"column":2},"end":{"line":2774,"column":13}},"693":{"start":{"line":2777,"column":0},"end":{"line":2814,"column":24}},"694":{"start":{"line":2815,"column":0},"end":{"line":2815,"column":34}},"695":{"start":{"line":2827,"column":0},"end":{"line":2830,"column":1}},"696":{"start":{"line":2829,"column":4},"end":{"line":2829,"column":64}},"697":{"start":{"line":2832,"column":0},"end":{"line":2832,"column":37}},"698":{"start":{"line":2834,"column":0},"end":{"line":3083,"column":2}},"699":{"start":{"line":2853,"column":3},"end":{"line":2853,"column":19}},"700":{"start":{"line":2858,"column":3},"end":{"line":2858,"column":25}},"701":{"start":{"line":2859,"column":3},"end":{"line":2862,"column":4}},"702":{"start":{"line":2861,"column":4},"end":{"line":2861,"column":33}},"703":{"start":{"line":2863,"column":3},"end":{"line":2863,"column":14}},"704":{"start":{"line":2879,"column":12},"end":{"line":2879,"column":32}},"705":{"start":{"line":2895,"column":12},"end":{"line":2895,"column":39}},"706":{"start":{"line":2911,"column":12},"end":{"line":2911,"column":30}},"707":{"start":{"line":2924,"column":12},"end":{"line":2927,"column":13}},"708":{"start":{"line":2926,"column":16},"end":{"line":2926,"column":52}},"709":{"start":{"line":2928,"column":12},"end":{"line":2928,"column":23}},"710":{"start":{"line":2941,"column":12},"end":{"line":2944,"column":13}},"711":{"start":{"line":2943,"column":16},"end":{"line":2943,"column":53}},"712":{"start":{"line":2945,"column":12},"end":{"line":2945,"column":23}},"713":{"start":{"line":3018,"column":12},"end":{"line":3018,"column":27}},"714":{"start":{"line":3023,"column":12},"end":{"line":3023,"column":26}},"715":{"start":{"line":3024,"column":12},"end":{"line":3027,"column":13}},"716":{"start":{"line":3026,"column":16},"end":{"line":3026,"column":51}},"717":{"start":{"line":3028,"column":12},"end":{"line":3028,"column":23}},"718":{"start":{"line":3041,"column":12},"end":{"line":3041,"column":27}},"719":{"start":{"line":3046,"column":12},"end":{"line":3046,"column":26}},"720":{"start":{"line":3047,"column":12},"end":{"line":3050,"column":13}},"721":{"start":{"line":3049,"column":16},"end":{"line":3049,"column":50}},"722":{"start":{"line":3051,"column":12},"end":{"line":3051,"column":23}},"723":{"start":{"line":3079,"column":12},"end":{"line":3079,"column":37}},"724":{"start":{"line":3080,"column":12},"end":{"line":3080,"column":23}},"725":{"start":{"line":3085,"column":0},"end":{"line":3668,"column":3}},"726":{"start":{"line":3097,"column":2},"end":{"line":3106,"column":32}},"727":{"start":{"line":3107,"column":2},"end":{"line":3107,"column":53}},"728":{"start":{"line":3108,"column":8},"end":{"line":3125,"column":9}},"729":{"start":{"line":3110,"column":12},"end":{"line":3124,"column":13}},"730":{"start":{"line":3112,"column":16},"end":{"line":3112,"column":35}},"731":{"start":{"line":3114,"column":17},"end":{"line":3124,"column":13}},"732":{"start":{"line":3116,"column":16},"end":{"line":3123,"column":17}},"733":{"start":{"line":3118,"column":20},"end":{"line":3122,"column":21}},"734":{"start":{"line":3120,"column":24},"end":{"line":3120,"column":43}},"735":{"start":{"line":3121,"column":24},"end":{"line":3121,"column":30}},"736":{"start":{"line":3126,"column":8},"end":{"line":3129,"column":9}},"737":{"start":{"line":3128,"column":12},"end":{"line":3128,"column":27}},"738":{"start":{"line":3158,"column":8},"end":{"line":3159,"column":15}},"739":{"start":{"line":3160,"column":8},"end":{"line":3163,"column":9}},"740":{"start":{"line":3162,"column":12},"end":{"line":3162,"column":30}},"741":{"start":{"line":3164,"column":8},"end":{"line":3164,"column":18}},"742":{"start":{"line":3175,"column":8},"end":{"line":3178,"column":40}},"743":{"start":{"line":3179,"column":8},"end":{"line":3179,"column":26}},"744":{"start":{"line":3180,"column":8},"end":{"line":3180,"column":31}},"745":{"start":{"line":3181,"column":2},"end":{"line":3186,"column":10}},"746":{"start":{"line":3187,"column":8},"end":{"line":3187,"column":51}},"747":{"start":{"line":3188,"column":8},"end":{"line":3188,"column":47}},"748":{"start":{"line":3189,"column":8},"end":{"line":3189,"column":49}},"749":{"start":{"line":3190,"column":8},"end":{"line":3190,"column":29}},"750":{"start":{"line":3191,"column":8},"end":{"line":3191,"column":30}},"751":{"start":{"line":3192,"column":8},"end":{"line":3195,"column":9}},"752":{"start":{"line":3194,"column":12},"end":{"line":3194,"column":32}},"753":{"start":{"line":3205,"column":8},"end":{"line":3208,"column":90}},"754":{"start":{"line":3209,"column":8},"end":{"line":3209,"column":49}},"755":{"start":{"line":3210,"column":8},"end":{"line":3210,"column":37}},"756":{"start":{"line":3211,"column":8},"end":{"line":3211,"column":37}},"757":{"start":{"line":3212,"column":8},"end":{"line":3212,"column":41}},"758":{"start":{"line":3213,"column":8},"end":{"line":3213,"column":32}},"759":{"start":{"line":3214,"column":8},"end":{"line":3214,"column":31}},"760":{"start":{"line":3215,"column":8},"end":{"line":3215,"column":29}},"761":{"start":{"line":3216,"column":8},"end":{"line":3216,"column":30}},"762":{"start":{"line":3217,"column":8},"end":{"line":3217,"column":37}},"763":{"start":{"line":3218,"column":8},"end":{"line":3218,"column":20}},"764":{"start":{"line":3228,"column":8},"end":{"line":3228,"column":31}},"765":{"start":{"line":3229,"column":8},"end":{"line":3233,"column":9}},"766":{"start":{"line":3231,"column":12},"end":{"line":3231,"column":45}},"767":{"start":{"line":3232,"column":12},"end":{"line":3232,"column":40}},"768":{"start":{"line":3245,"column":8},"end":{"line":3245,"column":27}},"769":{"start":{"line":3246,"column":8},"end":{"line":3249,"column":9}},"770":{"start":{"line":3248,"column":12},"end":{"line":3248,"column":32}},"771":{"start":{"line":3250,"column":8},"end":{"line":3251,"column":40}},"772":{"start":{"line":3252,"column":8},"end":{"line":3252,"column":33}},"773":{"start":{"line":3253,"column":8},"end":{"line":3253,"column":21}},"774":{"start":{"line":3265,"column":8},"end":{"line":3266,"column":50}},"775":{"start":{"line":3267,"column":8},"end":{"line":3274,"column":9}},"776":{"start":{"line":3269,"column":12},"end":{"line":3269,"column":41}},"777":{"start":{"line":3273,"column":12},"end":{"line":3273,"column":49}},"778":{"start":{"line":3285,"column":8},"end":{"line":3291,"column":9}},"779":{"start":{"line":3287,"column":12},"end":{"line":3290,"column":13}},"780":{"start":{"line":3289,"column":16},"end":{"line":3289,"column":44}},"781":{"start":{"line":3292,"column":8},"end":{"line":3296,"column":9}},"782":{"start":{"line":3294,"column":12},"end":{"line":3294,"column":29}},"783":{"start":{"line":3295,"column":12},"end":{"line":3295,"column":49}},"784":{"start":{"line":3297,"column":8},"end":{"line":3300,"column":9}},"785":{"start":{"line":3299,"column":12},"end":{"line":3299,"column":27}},"786":{"start":{"line":3301,"column":8},"end":{"line":3301,"column":21}},"787":{"start":{"line":3311,"column":8},"end":{"line":3312,"column":14}},"788":{"start":{"line":3313,"column":8},"end":{"line":3319,"column":9}},"789":{"start":{"line":3315,"column":12},"end":{"line":3318,"column":13}},"790":{"start":{"line":3317,"column":16},"end":{"line":3317,"column":36}},"791":{"start":{"line":3320,"column":8},"end":{"line":3320,"column":26}},"792":{"start":{"line":3329,"column":8},"end":{"line":3329,"column":31}},"793":{"start":{"line":3341,"column":8},"end":{"line":3350,"column":9}},"794":{"start":{"line":3343,"column":12},"end":{"line":3343,"column":22}},"795":{"start":{"line":3344,"column":12},"end":{"line":3349,"column":13}},"796":{"start":{"line":3346,"column":16},"end":{"line":3346,"column":40}},"797":{"start":{"line":3347,"column":16},"end":{"line":3347,"column":44}},"798":{"start":{"line":3348,"column":16},"end":{"line":3348,"column":40}},"799":{"start":{"line":3362,"column":8},"end":{"line":3364,"column":52}},"800":{"start":{"line":3365,"column":8},"end":{"line":3374,"column":9}},"801":{"start":{"line":3367,"column":12},"end":{"line":3373,"column":13}},"802":{"start":{"line":3369,"column":16},"end":{"line":3372,"column":17}},"803":{"start":{"line":3371,"column":20},"end":{"line":3371,"column":50}},"804":{"start":{"line":3375,"column":8},"end":{"line":3378,"column":9}},"805":{"start":{"line":3377,"column":12},"end":{"line":3377,"column":53}},"806":{"start":{"line":3391,"column":8},"end":{"line":3391,"column":42}},"807":{"start":{"line":3392,"column":8},"end":{"line":3395,"column":9}},"808":{"start":{"line":3394,"column":12},"end":{"line":3394,"column":25}},"809":{"start":{"line":3396,"column":8},"end":{"line":3396,"column":19}},"810":{"start":{"line":3423,"column":8},"end":{"line":3423,"column":37}},"811":{"start":{"line":3424,"column":8},"end":{"line":3424,"column":21}},"812":{"start":{"line":3435,"column":8},"end":{"line":3435,"column":44}},"813":{"start":{"line":3436,"column":8},"end":{"line":3436,"column":36}},"814":{"start":{"line":3437,"column":8},"end":{"line":3437,"column":17}},"815":{"start":{"line":3438,"column":8},"end":{"line":3438,"column":39}},"816":{"start":{"line":3450,"column":8},"end":{"line":3453,"column":9}},"817":{"start":{"line":3452,"column":12},"end":{"line":3452,"column":59}},"818":{"start":{"line":3454,"column":8},"end":{"line":3454,"column":26}},"819":{"start":{"line":3465,"column":8},"end":{"line":3477,"column":36}},"820":{"start":{"line":3478,"column":8},"end":{"line":3520,"column":9}},"821":{"start":{"line":3480,"column":12},"end":{"line":3519,"column":13}},"822":{"start":{"line":3482,"column":16},"end":{"line":3482,"column":52}},"823":{"start":{"line":3483,"column":16},"end":{"line":3483,"column":53}},"824":{"start":{"line":3484,"column":16},"end":{"line":3484,"column":70}},"825":{"start":{"line":3485,"column":16},"end":{"line":3485,"column":71}},"826":{"start":{"line":3486,"column":16},"end":{"line":3486,"column":40}},"827":{"start":{"line":3487,"column":16},"end":{"line":3507,"column":17}},"828":{"start":{"line":3489,"column":20},"end":{"line":3489,"column":44}},"829":{"start":{"line":3490,"column":20},"end":{"line":3490,"column":45}},"830":{"start":{"line":3494,"column":20},"end":{"line":3506,"column":21}},"831":{"start":{"line":3496,"column":24},"end":{"line":3505,"column":25}},"832":{"start":{"line":3498,"column":28},"end":{"line":3498,"column":61}},"833":{"start":{"line":3499,"column":28},"end":{"line":3499,"column":145}},"834":{"start":{"line":3503,"column":28},"end":{"line":3503,"column":62}},"835":{"start":{"line":3504,"column":28},"end":{"line":3504,"column":148}},"836":{"start":{"line":3508,"column":16},"end":{"line":3508,"column":65}},"837":{"start":{"line":3509,"column":16},"end":{"line":3509,"column":62}},"838":{"start":{"line":3510,"column":16},"end":{"line":3510,"column":61}},"839":{"start":{"line":3511,"column":16},"end":{"line":3511,"column":57}},"840":{"start":{"line":3512,"column":16},"end":{"line":3512,"column":45}},"841":{"start":{"line":3513,"column":16},"end":{"line":3513,"column":70}},"842":{"start":{"line":3517,"column":16},"end":{"line":3517,"column":45}},"843":{"start":{"line":3518,"column":16},"end":{"line":3518,"column":47}},"844":{"start":{"line":3521,"column":8},"end":{"line":3525,"column":9}},"845":{"start":{"line":3523,"column":12},"end":{"line":3523,"column":47}},"846":{"start":{"line":3524,"column":12},"end":{"line":3524,"column":30}},"847":{"start":{"line":3540,"column":8},"end":{"line":3541,"column":18}},"848":{"start":{"line":3542,"column":8},"end":{"line":3553,"column":9}},"849":{"start":{"line":3545,"column":16},"end":{"line":3545,"column":36}},"850":{"start":{"line":3546,"column":12},"end":{"line":3546,"column":18}},"851":{"start":{"line":3548,"column":16},"end":{"line":3548,"column":30}},"852":{"start":{"line":3549,"column":12},"end":{"line":3549,"column":18}},"853":{"start":{"line":3551,"column":16},"end":{"line":3551,"column":26}},"854":{"start":{"line":3552,"column":12},"end":{"line":3552,"column":18}},"855":{"start":{"line":3554,"column":8},"end":{"line":3554,"column":21}},"856":{"start":{"line":3567,"column":8},"end":{"line":3568,"column":16}},"857":{"start":{"line":3569,"column":8},"end":{"line":3569,"column":46}},"858":{"start":{"line":3570,"column":8},"end":{"line":3579,"column":9}},"859":{"start":{"line":3572,"column":12},"end":{"line":3572,"column":41}},"860":{"start":{"line":3573,"column":12},"end":{"line":3573,"column":38}},"861":{"start":{"line":3574,"column":12},"end":{"line":3574,"column":75}},"862":{"start":{"line":3575,"column":12},"end":{"line":3575,"column":70}},"863":{"start":{"line":3576,"column":12},"end":{"line":3576,"column":80}},"864":{"start":{"line":3577,"column":12},"end":{"line":3577,"column":85}},"865":{"start":{"line":3578,"column":12},"end":{"line":3578,"column":38}},"866":{"start":{"line":3580,"column":8},"end":{"line":3583,"column":9}},"867":{"start":{"line":3582,"column":12},"end":{"line":3582,"column":27}},"868":{"start":{"line":3595,"column":8},"end":{"line":3599,"column":21}},"869":{"start":{"line":3600,"column":8},"end":{"line":3611,"column":9}},"870":{"start":{"line":3602,"column":12},"end":{"line":3610,"column":13}},"871":{"start":{"line":3604,"column":16},"end":{"line":3604,"column":33}},"872":{"start":{"line":3605,"column":16},"end":{"line":3605,"column":43}},"873":{"start":{"line":3606,"column":16},"end":{"line":3606,"column":101}},"874":{"start":{"line":3607,"column":16},"end":{"line":3607,"column":96}},"875":{"start":{"line":3608,"column":16},"end":{"line":3608,"column":106}},"876":{"start":{"line":3609,"column":16},"end":{"line":3609,"column":111}},"877":{"start":{"line":3612,"column":8},"end":{"line":3612,"column":60}},"878":{"start":{"line":3613,"column":8},"end":{"line":3613,"column":57}},"879":{"start":{"line":3614,"column":8},"end":{"line":3614,"column":63}},"880":{"start":{"line":3615,"column":8},"end":{"line":3615,"column":66}},"881":{"start":{"line":3616,"column":8},"end":{"line":3616,"column":34}},"882":{"start":{"line":3617,"column":8},"end":{"line":3617,"column":19}},"883":{"start":{"line":3629,"column":8},"end":{"line":3629,"column":43}},"884":{"start":{"line":3630,"column":8},"end":{"line":3633,"column":9}},"885":{"start":{"line":3632,"column":12},"end":{"line":3632,"column":38}},"886":{"start":{"line":3634,"column":8},"end":{"line":3637,"column":9}},"887":{"start":{"line":3636,"column":12},"end":{"line":3636,"column":43}},"888":{"start":{"line":3649,"column":8},"end":{"line":3650,"column":23}},"889":{"start":{"line":3651,"column":8},"end":{"line":3654,"column":9}},"890":{"start":{"line":3653,"column":12},"end":{"line":3653,"column":38}},"891":{"start":{"line":3655,"column":8},"end":{"line":3666,"column":9}},"892":{"start":{"line":3657,"column":12},"end":{"line":3657,"column":48}},"893":{"start":{"line":3658,"column":12},"end":{"line":3665,"column":13}},"894":{"start":{"line":3660,"column":16},"end":{"line":3660,"column":60}},"895":{"start":{"line":3664,"column":16},"end":{"line":3664,"column":47}},"896":{"start":{"line":3670,"column":0},"end":{"line":3670,"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":1321,"type":"if","locations":[{"start":{"line":1321,"column":8},"end":{"line":1321,"column":8}},{"start":{"line":1321,"column":8},"end":{"line":1321,"column":8}}]},"64":{"line":1350,"type":"if","locations":[{"start":{"line":1350,"column":2},"end":{"line":1350,"column":2}},{"start":{"line":1350,"column":2},"end":{"line":1350,"column":2}}]},"65":{"line":1372,"type":"if","locations":[{"start":{"line":1372,"column":8},"end":{"line":1372,"column":8}},{"start":{"line":1372,"column":8},"end":{"line":1372,"column":8}}]},"66":{"line":1377,"type":"binary-expr","locations":[{"start":{"line":1377,"column":23},"end":{"line":1377,"column":38}},{"start":{"line":1377,"column":42},"end":{"line":1377,"column":49}}]},"67":{"line":1378,"type":"binary-expr","locations":[{"start":{"line":1378,"column":22},"end":{"line":1378,"column":36}},{"start":{"line":1378,"column":40},"end":{"line":1378,"column":46}}]},"68":{"line":1381,"type":"cond-expr","locations":[{"start":{"line":1381,"column":97},"end":{"line":1381,"column":106}},{"start":{"line":1381,"column":109},"end":{"line":1381,"column":113}}]},"69":{"line":1381,"type":"binary-expr","locations":[{"start":{"line":1381,"column":31},"end":{"line":1381,"column":40}},{"start":{"line":1381,"column":44},"end":{"line":1381,"column":69}},{"start":{"line":1381,"column":73},"end":{"line":1381,"column":93}}]},"70":{"line":1384,"type":"if","locations":[{"start":{"line":1384,"column":12},"end":{"line":1384,"column":12}},{"start":{"line":1384,"column":12},"end":{"line":1384,"column":12}}]},"71":{"line":1384,"type":"binary-expr","locations":[{"start":{"line":1384,"column":16},"end":{"line":1384,"column":33}},{"start":{"line":1384,"column":37},"end":{"line":1384,"column":47}}]},"72":{"line":1392,"type":"if","locations":[{"start":{"line":1392,"column":12},"end":{"line":1392,"column":12}},{"start":{"line":1392,"column":12},"end":{"line":1392,"column":12}}]},"73":{"line":1400,"type":"if","locations":[{"start":{"line":1400,"column":12},"end":{"line":1400,"column":12}},{"start":{"line":1400,"column":12},"end":{"line":1400,"column":12}}]},"74":{"line":1400,"type":"binary-expr","locations":[{"start":{"line":1400,"column":15},"end":{"line":1400,"column":35}},{"start":{"line":1400,"column":39},"end":{"line":1400,"column":59}}]},"75":{"line":1407,"type":"if","locations":[{"start":{"line":1407,"column":16},"end":{"line":1407,"column":16}},{"start":{"line":1407,"column":16},"end":{"line":1407,"column":16}}]},"76":{"line":1433,"type":"if","locations":[{"start":{"line":1433,"column":2},"end":{"line":1433,"column":2}},{"start":{"line":1433,"column":2},"end":{"line":1433,"column":2}}]},"77":{"line":1452,"type":"if","locations":[{"start":{"line":1452,"column":8},"end":{"line":1452,"column":8}},{"start":{"line":1452,"column":8},"end":{"line":1452,"column":8}}]},"78":{"line":1456,"type":"if","locations":[{"start":{"line":1456,"column":12},"end":{"line":1456,"column":12}},{"start":{"line":1456,"column":12},"end":{"line":1456,"column":12}}]},"79":{"line":1456,"type":"binary-expr","locations":[{"start":{"line":1456,"column":15},"end":{"line":1456,"column":32}},{"start":{"line":1456,"column":36},"end":{"line":1456,"column":53}}]},"80":{"line":1460,"type":"if","locations":[{"start":{"line":1460,"column":17},"end":{"line":1460,"column":17}},{"start":{"line":1460,"column":17},"end":{"line":1460,"column":17}}]},"81":{"line":1463,"type":"if","locations":[{"start":{"line":1463,"column":16},"end":{"line":1463,"column":16}},{"start":{"line":1463,"column":16},"end":{"line":1463,"column":16}}]},"82":{"line":1607,"type":"if","locations":[{"start":{"line":1607,"column":8},"end":{"line":1607,"column":8}},{"start":{"line":1607,"column":8},"end":{"line":1607,"column":8}}]},"83":{"line":1629,"type":"if","locations":[{"start":{"line":1629,"column":8},"end":{"line":1629,"column":8}},{"start":{"line":1629,"column":8},"end":{"line":1629,"column":8}}]},"84":{"line":1629,"type":"binary-expr","locations":[{"start":{"line":1629,"column":11},"end":{"line":1629,"column":27}},{"start":{"line":1629,"column":31},"end":{"line":1629,"column":58}}]},"85":{"line":1634,"type":"if","locations":[{"start":{"line":1634,"column":16},"end":{"line":1634,"column":16}},{"start":{"line":1634,"column":16},"end":{"line":1634,"column":16}}]},"86":{"line":1645,"type":"if","locations":[{"start":{"line":1645,"column":8},"end":{"line":1645,"column":8}},{"start":{"line":1645,"column":8},"end":{"line":1645,"column":8}}]},"87":{"line":1687,"type":"if","locations":[{"start":{"line":1687,"column":2},"end":{"line":1687,"column":2}},{"start":{"line":1687,"column":2},"end":{"line":1687,"column":2}}]},"88":{"line":1704,"type":"if","locations":[{"start":{"line":1704,"column":8},"end":{"line":1704,"column":8}},{"start":{"line":1704,"column":8},"end":{"line":1704,"column":8}}]},"89":{"line":1707,"type":"if","locations":[{"start":{"line":1707,"column":3},"end":{"line":1707,"column":3}},{"start":{"line":1707,"column":3},"end":{"line":1707,"column":3}}]},"90":{"line":1707,"type":"binary-expr","locations":[{"start":{"line":1707,"column":6},"end":{"line":1707,"column":10}},{"start":{"line":1707,"column":14},"end":{"line":1707,"column":21}}]},"91":{"line":1715,"type":"cond-expr","locations":[{"start":{"line":1715,"column":92},"end":{"line":1715,"column":103}},{"start":{"line":1715,"column":106},"end":{"line":1715,"column":107}}]},"92":{"line":1715,"type":"binary-expr","locations":[{"start":{"line":1715,"column":27},"end":{"line":1715,"column":57}},{"start":{"line":1715,"column":61},"end":{"line":1715,"column":88}}]},"93":{"line":1718,"type":"if","locations":[{"start":{"line":1718,"column":5},"end":{"line":1718,"column":5}},{"start":{"line":1718,"column":5},"end":{"line":1718,"column":5}}]},"94":{"line":1734,"type":"if","locations":[{"start":{"line":1734,"column":4},"end":{"line":1734,"column":4}},{"start":{"line":1734,"column":4},"end":{"line":1734,"column":4}}]},"95":{"line":1734,"type":"binary-expr","locations":[{"start":{"line":1734,"column":7},"end":{"line":1734,"column":11}},{"start":{"line":1734,"column":15},"end":{"line":1734,"column":30}}]},"96":{"line":1737,"type":"if","locations":[{"start":{"line":1737,"column":5},"end":{"line":1737,"column":5}},{"start":{"line":1737,"column":5},"end":{"line":1737,"column":5}}]},"97":{"line":1739,"type":"if","locations":[{"start":{"line":1739,"column":24},"end":{"line":1739,"column":24}},{"start":{"line":1739,"column":24},"end":{"line":1739,"column":24}}]},"98":{"line":1744,"type":"if","locations":[{"start":{"line":1744,"column":11},"end":{"line":1744,"column":11}},{"start":{"line":1744,"column":11},"end":{"line":1744,"column":11}}]},"99":{"line":1744,"type":"binary-expr","locations":[{"start":{"line":1744,"column":14},"end":{"line":1744,"column":20}},{"start":{"line":1744,"column":24},"end":{"line":1744,"column":43}},{"start":{"line":1744,"column":47},"end":{"line":1744,"column":62}}]},"100":{"line":1774,"type":"if","locations":[{"start":{"line":1774,"column":8},"end":{"line":1774,"column":8}},{"start":{"line":1774,"column":8},"end":{"line":1774,"column":8}}]},"101":{"line":1776,"type":"if","locations":[{"start":{"line":1776,"column":12},"end":{"line":1776,"column":12}},{"start":{"line":1776,"column":12},"end":{"line":1776,"column":12}}]},"102":{"line":1780,"type":"if","locations":[{"start":{"line":1780,"column":17},"end":{"line":1780,"column":17}},{"start":{"line":1780,"column":17},"end":{"line":1780,"column":17}}]},"103":{"line":1792,"type":"if","locations":[{"start":{"line":1792,"column":8},"end":{"line":1792,"column":8}},{"start":{"line":1792,"column":8},"end":{"line":1792,"column":8}}]},"104":{"line":1793,"type":"if","locations":[{"start":{"line":1793,"column":12},"end":{"line":1793,"column":12}},{"start":{"line":1793,"column":12},"end":{"line":1793,"column":12}}]},"105":{"line":1799,"type":"if","locations":[{"start":{"line":1799,"column":12},"end":{"line":1799,"column":12}},{"start":{"line":1799,"column":12},"end":{"line":1799,"column":12}}]},"106":{"line":1846,"type":"if","locations":[{"start":{"line":1846,"column":2},"end":{"line":1846,"column":2}},{"start":{"line":1846,"column":2},"end":{"line":1846,"column":2}}]},"107":{"line":1850,"type":"if","locations":[{"start":{"line":1850,"column":7},"end":{"line":1850,"column":7}},{"start":{"line":1850,"column":7},"end":{"line":1850,"column":7}}]},"108":{"line":1874,"type":"if","locations":[{"start":{"line":1874,"column":8},"end":{"line":1874,"column":8}},{"start":{"line":1874,"column":8},"end":{"line":1874,"column":8}}]},"109":{"line":1906,"type":"if","locations":[{"start":{"line":1906,"column":8},"end":{"line":1906,"column":8}},{"start":{"line":1906,"column":8},"end":{"line":1906,"column":8}}]},"110":{"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}}]},"111":{"line":1912,"type":"cond-expr","locations":[{"start":{"line":1912,"column":42},"end":{"line":1912,"column":52}},{"start":{"line":1912,"column":55},"end":{"line":1912,"column":56}}]},"112":{"line":1918,"type":"if","locations":[{"start":{"line":1918,"column":12},"end":{"line":1918,"column":12}},{"start":{"line":1918,"column":12},"end":{"line":1918,"column":12}}]},"113":{"line":1936,"type":"if","locations":[{"start":{"line":1936,"column":8},"end":{"line":1936,"column":8}},{"start":{"line":1936,"column":8},"end":{"line":1936,"column":8}}]},"114":{"line":1950,"type":"if","locations":[{"start":{"line":1950,"column":8},"end":{"line":1950,"column":8}},{"start":{"line":1950,"column":8},"end":{"line":1950,"column":8}}]},"115":{"line":1973,"type":"if","locations":[{"start":{"line":1973,"column":8},"end":{"line":1973,"column":8}},{"start":{"line":1973,"column":8},"end":{"line":1973,"column":8}}]},"116":{"line":1976,"type":"binary-expr","locations":[{"start":{"line":1976,"column":18},"end":{"line":1976,"column":37}},{"start":{"line":1976,"column":41},"end":{"line":1976,"column":42}}]},"117":{"line":1983,"type":"if","locations":[{"start":{"line":1983,"column":16},"end":{"line":1983,"column":16}},{"start":{"line":1983,"column":16},"end":{"line":1983,"column":16}}]},"118":{"line":1985,"type":"if","locations":[{"start":{"line":1985,"column":20},"end":{"line":1985,"column":20}},{"start":{"line":1985,"column":20},"end":{"line":1985,"column":20}}]},"119":{"line":2007,"type":"if","locations":[{"start":{"line":2007,"column":8},"end":{"line":2007,"column":8}},{"start":{"line":2007,"column":8},"end":{"line":2007,"column":8}}]},"120":{"line":2025,"type":"if","locations":[{"start":{"line":2025,"column":8},"end":{"line":2025,"column":8}},{"start":{"line":2025,"column":8},"end":{"line":2025,"column":8}}]},"121":{"line":2125,"type":"if","locations":[{"start":{"line":2125,"column":3},"end":{"line":2125,"column":3}},{"start":{"line":2125,"column":3},"end":{"line":2125,"column":3}}]},"122":{"line":2184,"type":"cond-expr","locations":[{"start":{"line":2184,"column":35},"end":{"line":2184,"column":44}},{"start":{"line":2184,"column":47},"end":{"line":2184,"column":55}}]},"123":{"line":2185,"type":"if","locations":[{"start":{"line":2185,"column":3},"end":{"line":2185,"column":3}},{"start":{"line":2185,"column":3},"end":{"line":2185,"column":3}}]},"124":{"line":2248,"type":"binary-expr","locations":[{"start":{"line":2248,"column":11},"end":{"line":2248,"column":27}},{"start":{"line":2248,"column":31},"end":{"line":2248,"column":53}}]},"125":{"line":2249,"type":"cond-expr","locations":[{"start":{"line":2249,"column":18},"end":{"line":2249,"column":36}},{"start":{"line":2249,"column":39},"end":{"line":2249,"column":43}}]},"126":{"line":2250,"type":"if","locations":[{"start":{"line":2250,"column":3},"end":{"line":2250,"column":3}},{"start":{"line":2250,"column":3},"end":{"line":2250,"column":3}}]},"127":{"line":2250,"type":"binary-expr","locations":[{"start":{"line":2250,"column":6},"end":{"line":2250,"column":10}},{"start":{"line":2250,"column":14},"end":{"line":2250,"column":24}}]},"128":{"line":2252,"type":"if","locations":[{"start":{"line":2252,"column":4},"end":{"line":2252,"column":4}},{"start":{"line":2252,"column":4},"end":{"line":2252,"column":4}}]},"129":{"line":2252,"type":"binary-expr","locations":[{"start":{"line":2252,"column":7},"end":{"line":2252,"column":31}},{"start":{"line":2252,"column":35},"end":{"line":2252,"column":56}}]},"130":{"line":2295,"type":"binary-expr","locations":[{"start":{"line":2295,"column":14},"end":{"line":2295,"column":32}},{"start":{"line":2295,"column":36},"end":{"line":2295,"column":60}}]},"131":{"line":2297,"type":"if","locations":[{"start":{"line":2297,"column":12},"end":{"line":2297,"column":12}},{"start":{"line":2297,"column":12},"end":{"line":2297,"column":12}}]},"132":{"line":2297,"type":"binary-expr","locations":[{"start":{"line":2297,"column":15},"end":{"line":2297,"column":18}},{"start":{"line":2297,"column":22},"end":{"line":2297,"column":50}}]},"133":{"line":2300,"type":"if","locations":[{"start":{"line":2300,"column":16},"end":{"line":2300,"column":16}},{"start":{"line":2300,"column":16},"end":{"line":2300,"column":16}}]},"134":{"line":2305,"type":"cond-expr","locations":[{"start":{"line":2305,"column":17},"end":{"line":2305,"column":35}},{"start":{"line":2305,"column":38},"end":{"line":2305,"column":42}}]},"135":{"line":2338,"type":"if","locations":[{"start":{"line":2338,"column":12},"end":{"line":2338,"column":12}},{"start":{"line":2338,"column":12},"end":{"line":2338,"column":12}}]},"136":{"line":2454,"type":"cond-expr","locations":[{"start":{"line":2454,"column":54},"end":{"line":2454,"column":76}},{"start":{"line":2454,"column":80},"end":{"line":2454,"column":81}}]},"137":{"line":2454,"type":"binary-expr","locations":[{"start":{"line":2454,"column":16},"end":{"line":2454,"column":28}},{"start":{"line":2454,"column":32},"end":{"line":2454,"column":50}}]},"138":{"line":2474,"type":"cond-expr","locations":[{"start":{"line":2474,"column":54},"end":{"line":2474,"column":76}},{"start":{"line":2474,"column":80},"end":{"line":2474,"column":81}}]},"139":{"line":2474,"type":"binary-expr","locations":[{"start":{"line":2474,"column":16},"end":{"line":2474,"column":28}},{"start":{"line":2474,"column":32},"end":{"line":2474,"column":50}}]},"140":{"line":2604,"type":"if","locations":[{"start":{"line":2604,"column":3},"end":{"line":2604,"column":3}},{"start":{"line":2604,"column":3},"end":{"line":2604,"column":3}}]},"141":{"line":2628,"type":"if","locations":[{"start":{"line":2628,"column":3},"end":{"line":2628,"column":3}},{"start":{"line":2628,"column":3},"end":{"line":2628,"column":3}}]},"142":{"line":2674,"type":"if","locations":[{"start":{"line":2674,"column":2},"end":{"line":2674,"column":2}},{"start":{"line":2674,"column":2},"end":{"line":2674,"column":2}}]},"143":{"line":2859,"type":"if","locations":[{"start":{"line":2859,"column":3},"end":{"line":2859,"column":3}},{"start":{"line":2859,"column":3},"end":{"line":2859,"column":3}}]},"144":{"line":2924,"type":"if","locations":[{"start":{"line":2924,"column":12},"end":{"line":2924,"column":12}},{"start":{"line":2924,"column":12},"end":{"line":2924,"column":12}}]},"145":{"line":2941,"type":"if","locations":[{"start":{"line":2941,"column":12},"end":{"line":2941,"column":12}},{"start":{"line":2941,"column":12},"end":{"line":2941,"column":12}}]},"146":{"line":3024,"type":"if","locations":[{"start":{"line":3024,"column":12},"end":{"line":3024,"column":12}},{"start":{"line":3024,"column":12},"end":{"line":3024,"column":12}}]},"147":{"line":3047,"type":"if","locations":[{"start":{"line":3047,"column":12},"end":{"line":3047,"column":12}},{"start":{"line":3047,"column":12},"end":{"line":3047,"column":12}}]},"148":{"line":3108,"type":"if","locations":[{"start":{"line":3108,"column":8},"end":{"line":3108,"column":8}},{"start":{"line":3108,"column":8},"end":{"line":3108,"column":8}}]},"149":{"line":3108,"type":"binary-expr","locations":[{"start":{"line":3108,"column":11},"end":{"line":3108,"column":40}},{"start":{"line":3108,"column":44},"end":{"line":3108,"column":75}}]},"150":{"line":3110,"type":"if","locations":[{"start":{"line":3110,"column":12},"end":{"line":3110,"column":12}},{"start":{"line":3110,"column":12},"end":{"line":3110,"column":12}}]},"151":{"line":3110,"type":"binary-expr","locations":[{"start":{"line":3110,"column":15},"end":{"line":3110,"column":30}},{"start":{"line":3110,"column":34},"end":{"line":3110,"column":51}}]},"152":{"line":3114,"type":"if","locations":[{"start":{"line":3114,"column":17},"end":{"line":3114,"column":17}},{"start":{"line":3114,"column":17},"end":{"line":3114,"column":17}}]},"153":{"line":3118,"type":"if","locations":[{"start":{"line":3118,"column":20},"end":{"line":3118,"column":20}},{"start":{"line":3118,"column":20},"end":{"line":3118,"column":20}}]},"154":{"line":3118,"type":"binary-expr","locations":[{"start":{"line":3118,"column":23},"end":{"line":3118,"column":54}},{"start":{"line":3118,"column":58},"end":{"line":3118,"column":67}}]},"155":{"line":3126,"type":"if","locations":[{"start":{"line":3126,"column":8},"end":{"line":3126,"column":8}},{"start":{"line":3126,"column":8},"end":{"line":3126,"column":8}}]},"156":{"line":3160,"type":"if","locations":[{"start":{"line":3160,"column":8},"end":{"line":3160,"column":8}},{"start":{"line":3160,"column":8},"end":{"line":3160,"column":8}}]},"157":{"line":3176,"type":"cond-expr","locations":[{"start":{"line":3176,"column":47},"end":{"line":3176,"column":56}},{"start":{"line":3176,"column":59},"end":{"line":3176,"column":67}}]},"158":{"line":3177,"type":"binary-expr","locations":[{"start":{"line":3177,"column":16},"end":{"line":3177,"column":33}},{"start":{"line":3177,"column":37},"end":{"line":3177,"column":38}}]},"159":{"line":3178,"type":"binary-expr","locations":[{"start":{"line":3178,"column":16},"end":{"line":3178,"column":34}},{"start":{"line":3178,"column":38},"end":{"line":3178,"column":39}}]},"160":{"line":3192,"type":"if","locations":[{"start":{"line":3192,"column":8},"end":{"line":3192,"column":8}},{"start":{"line":3192,"column":8},"end":{"line":3192,"column":8}}]},"161":{"line":3207,"type":"binary-expr","locations":[{"start":{"line":3207,"column":16},"end":{"line":3207,"column":33}},{"start":{"line":3207,"column":37},"end":{"line":3207,"column":87}}]},"162":{"line":3208,"type":"binary-expr","locations":[{"start":{"line":3208,"column":16},"end":{"line":3208,"column":34}},{"start":{"line":3208,"column":38},"end":{"line":3208,"column":89}}]},"163":{"line":3209,"type":"binary-expr","locations":[{"start":{"line":3209,"column":21},"end":{"line":3209,"column":31}},{"start":{"line":3209,"column":35},"end":{"line":3209,"column":48}}]},"164":{"line":3229,"type":"if","locations":[{"start":{"line":3229,"column":8},"end":{"line":3229,"column":8}},{"start":{"line":3229,"column":8},"end":{"line":3229,"column":8}}]},"165":{"line":3246,"type":"if","locations":[{"start":{"line":3246,"column":8},"end":{"line":3246,"column":8}},{"start":{"line":3246,"column":8},"end":{"line":3246,"column":8}}]},"166":{"line":3266,"type":"binary-expr","locations":[{"start":{"line":3266,"column":25},"end":{"line":3266,"column":35}},{"start":{"line":3266,"column":39},"end":{"line":3266,"column":49}}]},"167":{"line":3267,"type":"if","locations":[{"start":{"line":3267,"column":8},"end":{"line":3267,"column":8}},{"start":{"line":3267,"column":8},"end":{"line":3267,"column":8}}]},"168":{"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}}]},"169":{"line":3287,"type":"if","locations":[{"start":{"line":3287,"column":12},"end":{"line":3287,"column":12}},{"start":{"line":3287,"column":12},"end":{"line":3287,"column":12}}]},"170":{"line":3292,"type":"if","locations":[{"start":{"line":3292,"column":8},"end":{"line":3292,"column":8}},{"start":{"line":3292,"column":8},"end":{"line":3292,"column":8}}]},"171":{"line":3292,"type":"binary-expr","locations":[{"start":{"line":3292,"column":11},"end":{"line":3292,"column":16}},{"start":{"line":3292,"column":20},"end":{"line":3292,"column":48}}]},"172":{"line":3297,"type":"if","locations":[{"start":{"line":3297,"column":8},"end":{"line":3297,"column":8}},{"start":{"line":3297,"column":8},"end":{"line":3297,"column":8}}]},"173":{"line":3315,"type":"if","locations":[{"start":{"line":3315,"column":12},"end":{"line":3315,"column":12}},{"start":{"line":3315,"column":12},"end":{"line":3315,"column":12}}]},"174":{"line":3341,"type":"if","locations":[{"start":{"line":3341,"column":8},"end":{"line":3341,"column":8}},{"start":{"line":3341,"column":8},"end":{"line":3341,"column":8}}]},"175":{"line":3341,"type":"binary-expr","locations":[{"start":{"line":3341,"column":11},"end":{"line":3341,"column":15}},{"start":{"line":3341,"column":19},"end":{"line":3341,"column":39}}]},"176":{"line":3364,"type":"cond-expr","locations":[{"start":{"line":3364,"column":31},"end":{"line":3364,"column":40}},{"start":{"line":3364,"column":43},"end":{"line":3364,"column":51}}]},"177":{"line":3365,"type":"if","locations":[{"start":{"line":3365,"column":8},"end":{"line":3365,"column":8}},{"start":{"line":3365,"column":8},"end":{"line":3365,"column":8}}]},"178":{"line":3369,"type":"if","locations":[{"start":{"line":3369,"column":16},"end":{"line":3369,"column":16}},{"start":{"line":3369,"column":16},"end":{"line":3369,"column":16}}]},"179":{"line":3375,"type":"if","locations":[{"start":{"line":3375,"column":8},"end":{"line":3375,"column":8}},{"start":{"line":3375,"column":8},"end":{"line":3375,"column":8}}]},"180":{"line":3392,"type":"if","locations":[{"start":{"line":3392,"column":8},"end":{"line":3392,"column":8}},{"start":{"line":3392,"column":8},"end":{"line":3392,"column":8}}]},"181":{"line":3450,"type":"if","locations":[{"start":{"line":3450,"column":8},"end":{"line":3450,"column":8}},{"start":{"line":3450,"column":8},"end":{"line":3450,"column":8}}]},"182":{"line":3467,"type":"cond-expr","locations":[{"start":{"line":3467,"column":43},"end":{"line":3467,"column":74}},{"start":{"line":3467,"column":77},"end":{"line":3467,"column":96}}]},"183":{"line":3478,"type":"if","locations":[{"start":{"line":3478,"column":8},"end":{"line":3478,"column":8}},{"start":{"line":3478,"column":8},"end":{"line":3478,"column":8}}]},"184":{"line":3480,"type":"if","locations":[{"start":{"line":3480,"column":12},"end":{"line":3480,"column":12}},{"start":{"line":3480,"column":12},"end":{"line":3480,"column":12}}]},"185":{"line":3487,"type":"if","locations":[{"start":{"line":3487,"column":16},"end":{"line":3487,"column":16}},{"start":{"line":3487,"column":16},"end":{"line":3487,"column":16}}]},"186":{"line":3494,"type":"if","locations":[{"start":{"line":3494,"column":20},"end":{"line":3494,"column":20}},{"start":{"line":3494,"column":20},"end":{"line":3494,"column":20}}]},"187":{"line":3496,"type":"if","locations":[{"start":{"line":3496,"column":24},"end":{"line":3496,"column":24}},{"start":{"line":3496,"column":24},"end":{"line":3496,"column":24}}]},"188":{"line":3521,"type":"if","locations":[{"start":{"line":3521,"column":8},"end":{"line":3521,"column":8}},{"start":{"line":3521,"column":8},"end":{"line":3521,"column":8}}]},"189":{"line":3542,"type":"switch","locations":[{"start":{"line":3544,"column":12},"end":{"line":3546,"column":18}},{"start":{"line":3547,"column":12},"end":{"line":3549,"column":18}},{"start":{"line":3550,"column":12},"end":{"line":3552,"column":18}}]},"190":{"line":3570,"type":"if","locations":[{"start":{"line":3570,"column":8},"end":{"line":3570,"column":8}},{"start":{"line":3570,"column":8},"end":{"line":3570,"column":8}}]},"191":{"line":3574,"type":"cond-expr","locations":[{"start":{"line":3574,"column":50},"end":{"line":3574,"column":58}},{"start":{"line":3574,"column":61},"end":{"line":3574,"column":74}}]},"192":{"line":3575,"type":"cond-expr","locations":[{"start":{"line":3575,"column":47},"end":{"line":3575,"column":54}},{"start":{"line":3575,"column":57},"end":{"line":3575,"column":69}}]},"193":{"line":3576,"type":"cond-expr","locations":[{"start":{"line":3576,"column":53},"end":{"line":3576,"column":62}},{"start":{"line":3576,"column":65},"end":{"line":3576,"column":79}}]},"194":{"line":3577,"type":"cond-expr","locations":[{"start":{"line":3577,"column":56},"end":{"line":3577,"column":66}},{"start":{"line":3577,"column":69},"end":{"line":3577,"column":84}}]},"195":{"line":3580,"type":"if","locations":[{"start":{"line":3580,"column":8},"end":{"line":3580,"column":8}},{"start":{"line":3580,"column":8},"end":{"line":3580,"column":8}}]},"196":{"line":3602,"type":"if","locations":[{"start":{"line":3602,"column":12},"end":{"line":3602,"column":12}},{"start":{"line":3602,"column":12},"end":{"line":3602,"column":12}}]},"197":{"line":3606,"type":"cond-expr","locations":[{"start":{"line":3606,"column":55},"end":{"line":3606,"column":86}},{"start":{"line":3606,"column":89},"end":{"line":3606,"column":100}}]},"198":{"line":3607,"type":"cond-expr","locations":[{"start":{"line":3607,"column":53},"end":{"line":3607,"column":82}},{"start":{"line":3607,"column":85},"end":{"line":3607,"column":95}}]},"199":{"line":3608,"type":"cond-expr","locations":[{"start":{"line":3608,"column":57},"end":{"line":3608,"column":90}},{"start":{"line":3608,"column":93},"end":{"line":3608,"column":105}}]},"200":{"line":3609,"type":"cond-expr","locations":[{"start":{"line":3609,"column":59},"end":{"line":3609,"column":94}},{"start":{"line":3609,"column":97},"end":{"line":3609,"column":110}}]},"201":{"line":3612,"type":"cond-expr","locations":[{"start":{"line":3612,"column":47},"end":{"line":3612,"column":55}},{"start":{"line":3612,"column":58},"end":{"line":3612,"column":59}}]},"202":{"line":3613,"type":"cond-expr","locations":[{"start":{"line":3613,"column":45},"end":{"line":3613,"column":52}},{"start":{"line":3613,"column":55},"end":{"line":3613,"column":56}}]},"203":{"line":3614,"type":"cond-expr","locations":[{"start":{"line":3614,"column":49},"end":{"line":3614,"column":58}},{"start":{"line":3614,"column":61},"end":{"line":3614,"column":62}}]},"204":{"line":3615,"type":"cond-expr","locations":[{"start":{"line":3615,"column":51},"end":{"line":3615,"column":61}},{"start":{"line":3615,"column":64},"end":{"line":3615,"column":65}}]},"205":{"line":3630,"type":"if","locations":[{"start":{"line":3630,"column":8},"end":{"line":3630,"column":8}},{"start":{"line":3630,"column":8},"end":{"line":3630,"column":8}}]},"206":{"line":3634,"type":"if","locations":[{"start":{"line":3634,"column":8},"end":{"line":3634,"column":8}},{"start":{"line":3634,"column":8},"end":{"line":3634,"column":8}}]},"207":{"line":3634,"type":"binary-expr","locations":[{"start":{"line":3634,"column":11},"end":{"line":3634,"column":22}},{"start":{"line":3634,"column":26},"end":{"line":3634,"column":31}}]},"208":{"line":3651,"type":"if","locations":[{"start":{"line":3651,"column":8},"end":{"line":3651,"column":8}},{"start":{"line":3651,"column":8},"end":{"line":3651,"column":8}}]},"209":{"line":3655,"type":"if","locations":[{"start":{"line":3655,"column":8},"end":{"line":3655,"column":8}},{"start":{"line":3655,"column":8},"end":{"line":3655,"column":8}}]},"210":{"line":3655,"type":"binary-expr","locations":[{"start":{"line":3655,"column":11},"end":{"line":3655,"column":22}},{"start":{"line":3655,"column":26},"end":{"line":3655,"column":31}}]},"211":{"line":3658,"type":"if","locations":[{"start":{"line":3658,"column":12},"end":{"line":3658,"column":12}},{"start":{"line":3658,"column":12},"end":{"line":3658,"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 lineTo","     * @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 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","     */","    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","        {","            render = Y.one(render);","            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 = Y.one(this.get(\"node\"));","\t\tnode.addClass(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 = Y.one(this.get(\"node\"));","\t\tnode.removeClass(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\treturn needle === Y.one(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.one(this.get(\"node\")).test(selector);","\t\t//return 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{","\t\t\treturn Y.one(\"#\" +  this.get(\"id\")).on(type, fn);","\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.one(this.node).remove(true);","            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();","    }","});","","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 = Y.one(this._node),","            xy;","        if(node)","        {","            xy = node.getXY();","        }","        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 = Y.one(render),","            node = this._node,","            w = this.get(\"width\") || parseInt(parentNode.getComputedStyle(\"width\"), 10),","            h = this.get(\"height\") || parseInt(parentNode.getComputedStyle(\"height\"), 10);","        parentNode = parentNode || DOCUMENT.body;","        parentNode.appendChild(node);","        node.style.display = \"block\";","        node.style.position = \"absolute\";","        node.style.left = \"0px\";","        node.style.top = \"0px\";","        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);","            Y.one(this._node).destroy();","        }","    },","","    /**","     * 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;","","","}, '3.10.3', {\"requires\": [\"graphics\"]});","","}());"]};
       
    11 }
       
    12 var __cov_AYKecnXg3b5jlAls2sgBIg = __coverage__['build/graphics-canvas/graphics-canvas.js'];
       
    13 __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']++;render=Y.one(render);__cov_AYKecnXg3b5jlAls2sgBIg.s['335']++;graphic=new Y.CanvasGraphic({render:render});__cov_AYKecnXg3b5jlAls2sgBIg.s['336']++;graphic._appendShape(this);__cov_AYKecnXg3b5jlAls2sgBIg.s['337']++;this._graphic=graphic;}},addClass:function(className){__cov_AYKecnXg3b5jlAls2sgBIg.f['42']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['338']++;var node=Y.one(this.get('node'));__cov_AYKecnXg3b5jlAls2sgBIg.s['339']++;node.addClass(className);},removeClass:function(className){__cov_AYKecnXg3b5jlAls2sgBIg.f['43']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['340']++;var node=Y.one(this.get('node'));__cov_AYKecnXg3b5jlAls2sgBIg.s['341']++;node.removeClass(className);},getXY:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['44']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['342']++;var graphic=this.get('graphic'),parentXY=graphic.getXY(),x=this.get('x'),y=this.get('y');__cov_AYKecnXg3b5jlAls2sgBIg.s['343']++;return[parentXY[0]+x,parentXY[1]+y];},setXY:function(xy){__cov_AYKecnXg3b5jlAls2sgBIg.f['45']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['344']++;var graphic=this.get('graphic'),parentXY=graphic.getXY(),x=xy[0]-parentXY[0],y=xy[1]-parentXY[1];__cov_AYKecnXg3b5jlAls2sgBIg.s['345']++;this._set('x',x);__cov_AYKecnXg3b5jlAls2sgBIg.s['346']++;this._set('y',y);__cov_AYKecnXg3b5jlAls2sgBIg.s['347']++;this._updateNodePosition(x,y);},contains:function(needle){__cov_AYKecnXg3b5jlAls2sgBIg.f['46']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['348']++;return needle===Y.one(this.node);},test:function(selector){__cov_AYKecnXg3b5jlAls2sgBIg.f['47']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['349']++;return Y.one(this.get('node')).test(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['63'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['359']++;node.style.visibility='hidden';}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['63'][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['64'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['365']++;return Y.one('#'+this.get('id')).on(type,fn);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['64'][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['65'][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['66'][0]++,stroke.linejoin)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['66'][1]++,'round');__cov_AYKecnXg3b5jlAls2sgBIg.s['373']++;linecap=(__cov_AYKecnXg3b5jlAls2sgBIg.b['67'][0]++,stroke.linecap)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['67'][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['69'][0]++,dashstyle)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['69'][1]++,Y.Lang.isArray(dashstyle))&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['69'][2]++,dashstyle.length>1)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['68'][0]++,dashstyle):(__cov_AYKecnXg3b5jlAls2sgBIg.b['68'][1]++,null);__cov_AYKecnXg3b5jlAls2sgBIg.s['377']++;this._strokeWeight=weight;__cov_AYKecnXg3b5jlAls2sgBIg.s['378']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['71'][0]++,IS_NUMBER(weight))&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['71'][1]++,weight>0)){__cov_AYKecnXg3b5jlAls2sgBIg.b['70'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['379']++;this._stroke=1;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['70'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['380']++;this._stroke=0;}__cov_AYKecnXg3b5jlAls2sgBIg.s['381']++;if(IS_NUMBER(opacity)){__cov_AYKecnXg3b5jlAls2sgBIg.b['72'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['382']++;this._strokeStyle=this._toRGBA(color,opacity);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['72'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['383']++;this._strokeStyle=color;}__cov_AYKecnXg3b5jlAls2sgBIg.s['384']++;this._linecap=linecap;__cov_AYKecnXg3b5jlAls2sgBIg.s['385']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['74'][0]++,linejoin==='round')||(__cov_AYKecnXg3b5jlAls2sgBIg.b['74'][1]++,linejoin==='bevel')){__cov_AYKecnXg3b5jlAls2sgBIg.b['73'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['386']++;this._linejoin=linejoin;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['73'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['387']++;linejoin=parseInt(linejoin,10);__cov_AYKecnXg3b5jlAls2sgBIg.s['388']++;if(IS_NUMBER(linejoin)){__cov_AYKecnXg3b5jlAls2sgBIg.b['75'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['389']++;this._miterlimit=Math.max(linejoin,1);__cov_AYKecnXg3b5jlAls2sgBIg.s['390']++;this._linejoin='miter';}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['75'][1]++;}}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['65'][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['76'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['395']++;host._updateHandler();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['76'][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['77'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['398']++;color=fill.color;__cov_AYKecnXg3b5jlAls2sgBIg.s['399']++;type=fill.type;__cov_AYKecnXg3b5jlAls2sgBIg.s['400']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['79'][0]++,type==='linear')||(__cov_AYKecnXg3b5jlAls2sgBIg.b['79'][1]++,type==='radial')){__cov_AYKecnXg3b5jlAls2sgBIg.b['78'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['401']++;this._fillType=type;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['78'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['402']++;if(color){__cov_AYKecnXg3b5jlAls2sgBIg.b['80'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['403']++;opacity=fill.opacity;__cov_AYKecnXg3b5jlAls2sgBIg.s['404']++;if(isNumber(opacity)){__cov_AYKecnXg3b5jlAls2sgBIg.b['81'][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['81'][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['80'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['410']++;this._fillColor=null;}}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['77'][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['82'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['430']++;this._updateTransform();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['82'][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['84'][0]++,this._transforms)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['84'][1]++,this._transforms.length>0)){__cov_AYKecnXg3b5jlAls2sgBIg.b['83'][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['85'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['436']++;matrix[key].apply(matrix,this._transforms[i]);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['85'][1]++;}}__cov_AYKecnXg3b5jlAls2sgBIg.s['437']++;transform=matrix.toCSSText();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['83'][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['86'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['442']++;Y_DOM.setStyle(node,'transform',transform);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['86'][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['87'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['452']++;return;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['87'][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['88'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['456']++;len=cachedMethods.length;__cov_AYKecnXg3b5jlAls2sgBIg.s['457']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['90'][0]++,!len)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['90'][1]++,len<1)){__cov_AYKecnXg3b5jlAls2sgBIg.b['89'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['458']++;return;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['89'][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['92'][0]++,args[0]==='quadraticCurveTo')||(__cov_AYKecnXg3b5jlAls2sgBIg.b['92'][1]++,args[0]==='bezierCurveTo')?(__cov_AYKecnXg3b5jlAls2sgBIg.b['91'][0]++,args.length):(__cov_AYKecnXg3b5jlAls2sgBIg.b['91'][1]++,3);__cov_AYKecnXg3b5jlAls2sgBIg.s['463']++;for(j=1;j<argsLen;++j){__cov_AYKecnXg3b5jlAls2sgBIg.s['464']++;if(j%2===0){__cov_AYKecnXg3b5jlAls2sgBIg.b['93'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['465']++;args[j]=args[j]-this._top;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['93'][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['95'][0]++,args)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['95'][1]++,args.length>0)){__cov_AYKecnXg3b5jlAls2sgBIg.b['94'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['473']++;method=args.shift();__cov_AYKecnXg3b5jlAls2sgBIg.s['474']++;if(method){__cov_AYKecnXg3b5jlAls2sgBIg.b['96'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['475']++;if(method==='closePath'){__cov_AYKecnXg3b5jlAls2sgBIg.b['97'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['476']++;context.closePath();__cov_AYKecnXg3b5jlAls2sgBIg.s['477']++;this._strokeAndFill(context);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['97'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['478']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['99'][0]++,method)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['99'][1]++,method==='lineTo')&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['99'][2]++,this._dashstyle)){__cov_AYKecnXg3b5jlAls2sgBIg.b['98'][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['98'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['481']++;context[method].apply(context,args);}}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['96'][1]++;}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['94'][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['88'][1]++;}},_strokeAndFill:function(context){__cov_AYKecnXg3b5jlAls2sgBIg.f['69']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['487']++;if(this._fillType){__cov_AYKecnXg3b5jlAls2sgBIg.b['100'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['488']++;if(this._fillType==='linear'){__cov_AYKecnXg3b5jlAls2sgBIg.b['101'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['489']++;context.fillStyle=this._getLinearGradient();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['101'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['490']++;if(this._fillType==='radial'){__cov_AYKecnXg3b5jlAls2sgBIg.b['102'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['491']++;context.fillStyle=this._getRadialGradient();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['102'][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['100'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['495']++;if(this._stroke){__cov_AYKecnXg3b5jlAls2sgBIg.b['103'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['496']++;if(this._strokeWeight){__cov_AYKecnXg3b5jlAls2sgBIg.b['104'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['497']++;context.lineWidth=this._strokeWeight;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['104'][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['105'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['501']++;context.miterLimit=this._miterlimit;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['105'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['502']++;context.strokeStyle=this._strokeStyle;__cov_AYKecnXg3b5jlAls2sgBIg.s['503']++;context.stroke();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['103'][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['106'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['515']++;context.lineTo(xCurrent+Math.cos(radians)*dashsize,yCurrent+Math.sin(radians)*dashsize);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['106'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['516']++;if(delta>0){__cov_AYKecnXg3b5jlAls2sgBIg.b['107'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['517']++;context.lineTo(xCurrent+Math.cos(radians)*delta,yCurrent+Math.sin(radians)*delta);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['107'][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['108'][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['108'][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['109'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['528']++;transformX=transformX+x;__cov_AYKecnXg3b5jlAls2sgBIg.s['529']++;transformY=transformY+y;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['109'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['530']++;transformX=!isNaN(transformX)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['110'][0]++,transformX):(__cov_AYKecnXg3b5jlAls2sgBIg.b['110'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['531']++;transformY=!isNaN(transformY)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['111'][0]++,transformY):(__cov_AYKecnXg3b5jlAls2sgBIg.b['111'][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['112'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['537']++;matrix[key].apply(matrix,transform);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['112'][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['113'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['543']++;graphic._toFront(this);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['113'][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['114'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['546']++;graphic._toBack(this);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['114'][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['115'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['549']++;this.clear();__cov_AYKecnXg3b5jlAls2sgBIg.s['550']++;len=(__cov_AYKecnXg3b5jlAls2sgBIg.b['116'][0]++,commandArray.length)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['116'][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['117'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['557']++;if(args){__cov_AYKecnXg3b5jlAls2sgBIg.b['118'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['558']++;this[method].apply(this,args);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['118'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['559']++;this[method].apply(this);}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['117'][1]++;}}__cov_AYKecnXg3b5jlAls2sgBIg.s['560']++;this.end();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['115'][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['119'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['563']++;graphic.removeShape(this);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['119'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['564']++;this._destroy();}},_destroy:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['77']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['565']++;if(this.node){__cov_AYKecnXg3b5jlAls2sgBIg.b['120'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['566']++;Y.one(this.node).remove(true);__cov_AYKecnXg3b5jlAls2sgBIg.s['567']++;this._context=null;__cov_AYKecnXg3b5jlAls2sgBIg.s['568']++;this.node=null;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['120'][1]++;}}},Y.CanvasDrawing.prototype));__cov_AYKecnXg3b5jlAls2sgBIg.s['569']++;CanvasShape.ATTRS={transformOrigin:{valueFn:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['78']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['570']++;return[0.5,0.5];}},transform:{setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['79']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['571']++;this.matrix.init();__cov_AYKecnXg3b5jlAls2sgBIg.s['572']++;this._transforms=this.matrix.getTransformArray(val);__cov_AYKecnXg3b5jlAls2sgBIg.s['573']++;this._transform=val;__cov_AYKecnXg3b5jlAls2sgBIg.s['574']++;return val;},getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['80']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['575']++;return this._transform;}},node:{readOnly:true,getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['81']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['576']++;return this.node;}},id:{valueFn:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['82']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['577']++;return Y.guid();},setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['83']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['578']++;var node=this.node;__cov_AYKecnXg3b5jlAls2sgBIg.s['579']++;if(node){__cov_AYKecnXg3b5jlAls2sgBIg.b['121'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['580']++;node.setAttribute('id',val);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['121'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['581']++;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['582']++;var node=this.get('node'),visibility=val?(__cov_AYKecnXg3b5jlAls2sgBIg.b['122'][0]++,'visible'):(__cov_AYKecnXg3b5jlAls2sgBIg.b['122'][1]++,'hidden');__cov_AYKecnXg3b5jlAls2sgBIg.s['583']++;if(node){__cov_AYKecnXg3b5jlAls2sgBIg.b['123'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['584']++;node.style.visibility=visibility;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['123'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['585']++;return val;}},fill:{valueFn:'_getDefaultFill',setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['85']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['586']++;var fill,tmpl=(__cov_AYKecnXg3b5jlAls2sgBIg.b['124'][0]++,this.get('fill'))||(__cov_AYKecnXg3b5jlAls2sgBIg.b['124'][1]++,this._getDefaultFill());__cov_AYKecnXg3b5jlAls2sgBIg.s['587']++;fill=val?(__cov_AYKecnXg3b5jlAls2sgBIg.b['125'][0]++,Y.merge(tmpl,val)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['125'][1]++,null);__cov_AYKecnXg3b5jlAls2sgBIg.s['588']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['127'][0]++,fill)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['127'][1]++,fill.color)){__cov_AYKecnXg3b5jlAls2sgBIg.b['126'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['589']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['129'][0]++,fill.color===undefined)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['129'][1]++,fill.color==='none')){__cov_AYKecnXg3b5jlAls2sgBIg.b['128'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['590']++;fill.color=null;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['128'][1]++;}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['126'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['591']++;this._setFillProps(fill);__cov_AYKecnXg3b5jlAls2sgBIg.s['592']++;return fill;}},stroke:{valueFn:'_getDefaultStroke',setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['86']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['593']++;var tmpl=(__cov_AYKecnXg3b5jlAls2sgBIg.b['130'][0]++,this.get('stroke'))||(__cov_AYKecnXg3b5jlAls2sgBIg.b['130'][1]++,this._getDefaultStroke()),wt;__cov_AYKecnXg3b5jlAls2sgBIg.s['594']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['132'][0]++,val)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['132'][1]++,val.hasOwnProperty('weight'))){__cov_AYKecnXg3b5jlAls2sgBIg.b['131'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['595']++;wt=parseInt(val.weight,10);__cov_AYKecnXg3b5jlAls2sgBIg.s['596']++;if(!isNaN(wt)){__cov_AYKecnXg3b5jlAls2sgBIg.b['133'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['597']++;val.weight=wt;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['133'][1]++;}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['131'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['598']++;val=val?(__cov_AYKecnXg3b5jlAls2sgBIg.b['134'][0]++,Y.merge(tmpl,val)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['134'][1]++,null);__cov_AYKecnXg3b5jlAls2sgBIg.s['599']++;this._setStrokeProps(val);__cov_AYKecnXg3b5jlAls2sgBIg.s['600']++;return val;}},autoSize:{value:false},pointerEvents:{value:'visiblePainted'},data:{setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['87']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['601']++;if(this.get('node')){__cov_AYKecnXg3b5jlAls2sgBIg.b['135'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['602']++;this._parsePathData(val);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['135'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['603']++;return val;}},graphic:{readOnly:true,getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['88']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['604']++;return this._graphic;}}};__cov_AYKecnXg3b5jlAls2sgBIg.s['605']++;Y.CanvasShape=CanvasShape;__cov_AYKecnXg3b5jlAls2sgBIg.s['606']++;CanvasPath=function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['89']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['607']++;CanvasPath.superclass.constructor.apply(this,arguments);};__cov_AYKecnXg3b5jlAls2sgBIg.s['608']++;CanvasPath.NAME='path';__cov_AYKecnXg3b5jlAls2sgBIg.s['609']++;Y.extend(CanvasPath,Y.CanvasShape,{_type:'path',_draw:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['90']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['610']++;this._closePath();__cov_AYKecnXg3b5jlAls2sgBIg.s['611']++;this._updateTransform();},createNode:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['91']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['612']++;var host=this,node=Y.config.doc.createElement('canvas'),name=host.name,concat=host._camelCaseConcat,id=host.get('id');__cov_AYKecnXg3b5jlAls2sgBIg.s['613']++;host._context=node.getContext('2d');__cov_AYKecnXg3b5jlAls2sgBIg.s['614']++;node.setAttribute('overflow','visible');__cov_AYKecnXg3b5jlAls2sgBIg.s['615']++;node.setAttribute('pointer-events','none');__cov_AYKecnXg3b5jlAls2sgBIg.s['616']++;node.style.pointerEvents='none';__cov_AYKecnXg3b5jlAls2sgBIg.s['617']++;node.style.overflow='visible';__cov_AYKecnXg3b5jlAls2sgBIg.s['618']++;node.setAttribute('id',id);__cov_AYKecnXg3b5jlAls2sgBIg.s['619']++;id='#'+id;__cov_AYKecnXg3b5jlAls2sgBIg.s['620']++;host.node=node;__cov_AYKecnXg3b5jlAls2sgBIg.s['621']++;host.addClass(_getClassName(SHAPE)+' '+_getClassName(concat(IMPLEMENTATION,SHAPE))+' '+_getClassName(name)+' '+_getClassName(concat(IMPLEMENTATION,name)));},end:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['92']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['622']++;this._draw();}});__cov_AYKecnXg3b5jlAls2sgBIg.s['623']++;CanvasPath.ATTRS=Y.merge(Y.CanvasShape.ATTRS,{width:{getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['93']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['624']++;var offset=(__cov_AYKecnXg3b5jlAls2sgBIg.b['137'][0]++,this._stroke)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['137'][1]++,this._strokeWeight)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['136'][0]++,this._strokeWeight*2):(__cov_AYKecnXg3b5jlAls2sgBIg.b['136'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['625']++;return this._width-offset;},setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['94']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['626']++;this._width=val;__cov_AYKecnXg3b5jlAls2sgBIg.s['627']++;return val;}},height:{getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['95']++;__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._height-offset;},setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['96']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['630']++;this._height=val;__cov_AYKecnXg3b5jlAls2sgBIg.s['631']++;return val;}},path:{readOnly:true,getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['97']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['632']++;return this._path;}}});__cov_AYKecnXg3b5jlAls2sgBIg.s['633']++;Y.CanvasPath=CanvasPath;__cov_AYKecnXg3b5jlAls2sgBIg.s['634']++;CanvasRect=function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['98']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['635']++;CanvasRect.superclass.constructor.apply(this,arguments);};__cov_AYKecnXg3b5jlAls2sgBIg.s['636']++;CanvasRect.NAME='rect';__cov_AYKecnXg3b5jlAls2sgBIg.s['637']++;Y.extend(CanvasRect,Y.CanvasShape,{_type:'rect',_draw:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['99']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['638']++;var w=this.get('width'),h=this.get('height');__cov_AYKecnXg3b5jlAls2sgBIg.s['639']++;this.clear();__cov_AYKecnXg3b5jlAls2sgBIg.s['640']++;this.drawRect(0,0,w,h);__cov_AYKecnXg3b5jlAls2sgBIg.s['641']++;this._closePath();}});__cov_AYKecnXg3b5jlAls2sgBIg.s['642']++;CanvasRect.ATTRS=Y.CanvasShape.ATTRS;__cov_AYKecnXg3b5jlAls2sgBIg.s['643']++;Y.CanvasRect=CanvasRect;__cov_AYKecnXg3b5jlAls2sgBIg.s['644']++;CanvasEllipse=function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['100']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['645']++;CanvasEllipse.superclass.constructor.apply(this,arguments);};__cov_AYKecnXg3b5jlAls2sgBIg.s['646']++;CanvasEllipse.NAME='ellipse';__cov_AYKecnXg3b5jlAls2sgBIg.s['647']++;Y.extend(CanvasEllipse,CanvasShape,{_type:'ellipse',_draw:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['101']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['648']++;var w=this.get('width'),h=this.get('height');__cov_AYKecnXg3b5jlAls2sgBIg.s['649']++;this.clear();__cov_AYKecnXg3b5jlAls2sgBIg.s['650']++;this.drawEllipse(0,0,w,h);__cov_AYKecnXg3b5jlAls2sgBIg.s['651']++;this._closePath();}});__cov_AYKecnXg3b5jlAls2sgBIg.s['652']++;CanvasEllipse.ATTRS=Y.merge(CanvasShape.ATTRS,{xRadius:{setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['102']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['653']++;this.set('width',val*2);},getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['103']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['654']++;var val=this.get('width');__cov_AYKecnXg3b5jlAls2sgBIg.s['655']++;if(val){__cov_AYKecnXg3b5jlAls2sgBIg.b['140'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['656']++;val*=0.5;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['140'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['657']++;return val;}},yRadius:{setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['104']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['658']++;this.set('height',val*2);},getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['105']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['659']++;var val=this.get('height');__cov_AYKecnXg3b5jlAls2sgBIg.s['660']++;if(val){__cov_AYKecnXg3b5jlAls2sgBIg.b['141'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['661']++;val*=0.5;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['141'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['662']++;return val;}}});__cov_AYKecnXg3b5jlAls2sgBIg.s['663']++;Y.CanvasEllipse=CanvasEllipse;__cov_AYKecnXg3b5jlAls2sgBIg.s['664']++;CanvasCircle=function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['106']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['665']++;CanvasCircle.superclass.constructor.apply(this,arguments);};__cov_AYKecnXg3b5jlAls2sgBIg.s['666']++;CanvasCircle.NAME='circle';__cov_AYKecnXg3b5jlAls2sgBIg.s['667']++;Y.extend(CanvasCircle,Y.CanvasShape,{_type:'circle',_draw:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['107']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['668']++;var radius=this.get('radius');__cov_AYKecnXg3b5jlAls2sgBIg.s['669']++;if(radius){__cov_AYKecnXg3b5jlAls2sgBIg.b['142'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['670']++;this.clear();__cov_AYKecnXg3b5jlAls2sgBIg.s['671']++;this.drawCircle(0,0,radius);__cov_AYKecnXg3b5jlAls2sgBIg.s['672']++;this._closePath();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['142'][1]++;}}});__cov_AYKecnXg3b5jlAls2sgBIg.s['673']++;CanvasCircle.ATTRS=Y.merge(Y.CanvasShape.ATTRS,{width:{setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['108']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['674']++;this.set('radius',val/2);__cov_AYKecnXg3b5jlAls2sgBIg.s['675']++;return val;},getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['109']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['676']++;return this.get('radius')*2;}},height:{setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['110']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['677']++;this.set('radius',val/2);__cov_AYKecnXg3b5jlAls2sgBIg.s['678']++;return val;},getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['111']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['679']++;return this.get('radius')*2;}},radius:{lazyAdd:false}});__cov_AYKecnXg3b5jlAls2sgBIg.s['680']++;Y.CanvasCircle=CanvasCircle;__cov_AYKecnXg3b5jlAls2sgBIg.s['681']++;CanvasPieSlice=function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['112']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['682']++;CanvasPieSlice.superclass.constructor.apply(this,arguments);};__cov_AYKecnXg3b5jlAls2sgBIg.s['683']++;CanvasPieSlice.NAME='canvasPieSlice';__cov_AYKecnXg3b5jlAls2sgBIg.s['684']++;Y.extend(CanvasPieSlice,Y.CanvasShape,{_type:'path',_draw:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['113']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['685']++;var x=this.get('cx'),y=this.get('cy'),startAngle=this.get('startAngle'),arc=this.get('arc'),radius=this.get('radius');__cov_AYKecnXg3b5jlAls2sgBIg.s['686']++;this.clear();__cov_AYKecnXg3b5jlAls2sgBIg.s['687']++;this._left=x;__cov_AYKecnXg3b5jlAls2sgBIg.s['688']++;this._right=radius;__cov_AYKecnXg3b5jlAls2sgBIg.s['689']++;this._top=y;__cov_AYKecnXg3b5jlAls2sgBIg.s['690']++;this._bottom=radius;__cov_AYKecnXg3b5jlAls2sgBIg.s['691']++;this.drawWedge(x,y,startAngle,arc,radius);__cov_AYKecnXg3b5jlAls2sgBIg.s['692']++;this.end();}});__cov_AYKecnXg3b5jlAls2sgBIg.s['693']++;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['694']++;Y.CanvasPieSlice=CanvasPieSlice;__cov_AYKecnXg3b5jlAls2sgBIg.s['695']++;function CanvasGraphic(){__cov_AYKecnXg3b5jlAls2sgBIg.f['114']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['696']++;CanvasGraphic.superclass.constructor.apply(this,arguments);}__cov_AYKecnXg3b5jlAls2sgBIg.s['697']++;CanvasGraphic.NAME='canvasGraphic';__cov_AYKecnXg3b5jlAls2sgBIg.s['698']++;CanvasGraphic.ATTRS={render:{},id:{valueFn:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['115']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['699']++;return Y.guid();},setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['116']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['700']++;var node=this._node;__cov_AYKecnXg3b5jlAls2sgBIg.s['701']++;if(node){__cov_AYKecnXg3b5jlAls2sgBIg.b['143'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['702']++;node.setAttribute('id',val);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['143'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['703']++;return val;}},shapes:{readOnly:true,getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['117']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['704']++;return this._shapes;}},contentBounds:{readOnly:true,getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['118']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['705']++;return this._contentBounds;}},node:{readOnly:true,getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['119']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['706']++;return this._node;}},width:{setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['120']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['707']++;if(this._node){__cov_AYKecnXg3b5jlAls2sgBIg.b['144'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['708']++;this._node.style.width=val+'px';}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['144'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['709']++;return val;}},height:{setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['121']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['710']++;if(this._node){__cov_AYKecnXg3b5jlAls2sgBIg.b['145'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['711']++;this._node.style.height=val+'px';}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['145'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['712']++;return val;}},autoSize:{value:false},preserveAspectRatio:{value:'xMidYMid'},resizeDown:{value:false},x:{getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['122']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['713']++;return this._x;},setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['123']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['714']++;this._x=val;__cov_AYKecnXg3b5jlAls2sgBIg.s['715']++;if(this._node){__cov_AYKecnXg3b5jlAls2sgBIg.b['146'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['716']++;this._node.style.left=val+'px';}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['146'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['717']++;return val;}},y:{getter:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['124']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['718']++;return this._y;},setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['125']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['719']++;this._y=val;__cov_AYKecnXg3b5jlAls2sgBIg.s['720']++;if(this._node){__cov_AYKecnXg3b5jlAls2sgBIg.b['147'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['721']++;this._node.style.top=val+'px';}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['147'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['722']++;return val;}},autoDraw:{value:true},visible:{value:true,setter:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['126']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['723']++;this._toggleVisible(val);__cov_AYKecnXg3b5jlAls2sgBIg.s['724']++;return val;}}};__cov_AYKecnXg3b5jlAls2sgBIg.s['725']++;Y.extend(CanvasGraphic,Y.GraphicBase,{set:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['127']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['726']++;var host=this,attr=arguments[0],redrawAttrs={autoDraw:true,autoSize:true,preserveAspectRatio:true,resizeDown:true},key,forceRedraw=false;__cov_AYKecnXg3b5jlAls2sgBIg.s['727']++;AttributeLite.prototype.set.apply(host,arguments);__cov_AYKecnXg3b5jlAls2sgBIg.s['728']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['149'][0]++,host._state.autoDraw===true)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['149'][1]++,Y.Object.size(this._shapes)>0)){__cov_AYKecnXg3b5jlAls2sgBIg.b['148'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['729']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['151'][0]++,Y_LANG.isString)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['151'][1]++,redrawAttrs[attr])){__cov_AYKecnXg3b5jlAls2sgBIg.b['150'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['730']++;forceRedraw=true;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['150'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['731']++;if(Y_LANG.isObject(attr)){__cov_AYKecnXg3b5jlAls2sgBIg.b['152'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['732']++;for(key in redrawAttrs){__cov_AYKecnXg3b5jlAls2sgBIg.s['733']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['154'][0]++,redrawAttrs.hasOwnProperty(key))&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['154'][1]++,attr[key])){__cov_AYKecnXg3b5jlAls2sgBIg.b['153'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['734']++;forceRedraw=true;__cov_AYKecnXg3b5jlAls2sgBIg.s['735']++;break;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['153'][1]++;}}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['152'][1]++;}}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['148'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['736']++;if(forceRedraw){__cov_AYKecnXg3b5jlAls2sgBIg.b['155'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['737']++;host._redraw();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['155'][1]++;}},_x:0,_y:0,getXY:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['128']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['738']++;var node=Y.one(this._node),xy;__cov_AYKecnXg3b5jlAls2sgBIg.s['739']++;if(node){__cov_AYKecnXg3b5jlAls2sgBIg.b['156'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['740']++;xy=node.getXY();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['156'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['741']++;return xy;},initializer:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['129']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['742']++;var render=this.get('render'),visibility=this.get('visible')?(__cov_AYKecnXg3b5jlAls2sgBIg.b['157'][0]++,'visible'):(__cov_AYKecnXg3b5jlAls2sgBIg.b['157'][1]++,'hidden'),w=(__cov_AYKecnXg3b5jlAls2sgBIg.b['158'][0]++,this.get('width'))||(__cov_AYKecnXg3b5jlAls2sgBIg.b['158'][1]++,0),h=(__cov_AYKecnXg3b5jlAls2sgBIg.b['159'][0]++,this.get('height'))||(__cov_AYKecnXg3b5jlAls2sgBIg.b['159'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['743']++;this._shapes={};__cov_AYKecnXg3b5jlAls2sgBIg.s['744']++;this._redrawQueue={};__cov_AYKecnXg3b5jlAls2sgBIg.s['745']++;this._contentBounds={left:0,top:0,right:0,bottom:0};__cov_AYKecnXg3b5jlAls2sgBIg.s['746']++;this._node=DOCUMENT.createElement('div');__cov_AYKecnXg3b5jlAls2sgBIg.s['747']++;this._node.style.position='absolute';__cov_AYKecnXg3b5jlAls2sgBIg.s['748']++;this._node.style.visibility=visibility;__cov_AYKecnXg3b5jlAls2sgBIg.s['749']++;this.set('width',w);__cov_AYKecnXg3b5jlAls2sgBIg.s['750']++;this.set('height',h);__cov_AYKecnXg3b5jlAls2sgBIg.s['751']++;if(render){__cov_AYKecnXg3b5jlAls2sgBIg.b['160'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['752']++;this.render(render);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['160'][1]++;}},render:function(render){__cov_AYKecnXg3b5jlAls2sgBIg.f['130']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['753']++;var parentNode=Y.one(render),node=this._node,w=(__cov_AYKecnXg3b5jlAls2sgBIg.b['161'][0]++,this.get('width'))||(__cov_AYKecnXg3b5jlAls2sgBIg.b['161'][1]++,parseInt(parentNode.getComputedStyle('width'),10)),h=(__cov_AYKecnXg3b5jlAls2sgBIg.b['162'][0]++,this.get('height'))||(__cov_AYKecnXg3b5jlAls2sgBIg.b['162'][1]++,parseInt(parentNode.getComputedStyle('height'),10));__cov_AYKecnXg3b5jlAls2sgBIg.s['754']++;parentNode=(__cov_AYKecnXg3b5jlAls2sgBIg.b['163'][0]++,parentNode)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['163'][1]++,DOCUMENT.body);__cov_AYKecnXg3b5jlAls2sgBIg.s['755']++;parentNode.appendChild(node);__cov_AYKecnXg3b5jlAls2sgBIg.s['756']++;node.style.display='block';__cov_AYKecnXg3b5jlAls2sgBIg.s['757']++;node.style.position='absolute';__cov_AYKecnXg3b5jlAls2sgBIg.s['758']++;node.style.left='0px';__cov_AYKecnXg3b5jlAls2sgBIg.s['759']++;node.style.top='0px';__cov_AYKecnXg3b5jlAls2sgBIg.s['760']++;this.set('width',w);__cov_AYKecnXg3b5jlAls2sgBIg.s['761']++;this.set('height',h);__cov_AYKecnXg3b5jlAls2sgBIg.s['762']++;this.parentNode=parentNode;__cov_AYKecnXg3b5jlAls2sgBIg.s['763']++;return this;},destroy:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['131']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['764']++;this.removeAllShapes();__cov_AYKecnXg3b5jlAls2sgBIg.s['765']++;if(this._node){__cov_AYKecnXg3b5jlAls2sgBIg.b['164'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['766']++;this._removeChildren(this._node);__cov_AYKecnXg3b5jlAls2sgBIg.s['767']++;Y.one(this._node).destroy();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['164'][1]++;}},addShape:function(cfg){__cov_AYKecnXg3b5jlAls2sgBIg.f['132']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['768']++;cfg.graphic=this;__cov_AYKecnXg3b5jlAls2sgBIg.s['769']++;if(!this.get('visible')){__cov_AYKecnXg3b5jlAls2sgBIg.b['165'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['770']++;cfg.visible=false;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['165'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['771']++;var ShapeClass=this._getShapeClass(cfg.type),shape=new ShapeClass(cfg);__cov_AYKecnXg3b5jlAls2sgBIg.s['772']++;this._appendShape(shape);__cov_AYKecnXg3b5jlAls2sgBIg.s['773']++;return shape;},_appendShape:function(shape){__cov_AYKecnXg3b5jlAls2sgBIg.f['133']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['774']++;var node=shape.node,parentNode=(__cov_AYKecnXg3b5jlAls2sgBIg.b['166'][0]++,this._frag)||(__cov_AYKecnXg3b5jlAls2sgBIg.b['166'][1]++,this._node);__cov_AYKecnXg3b5jlAls2sgBIg.s['775']++;if(this.get('autoDraw')){__cov_AYKecnXg3b5jlAls2sgBIg.b['167'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['776']++;parentNode.appendChild(node);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['167'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['777']++;this._getDocFrag().appendChild(node);}},removeShape:function(shape){__cov_AYKecnXg3b5jlAls2sgBIg.f['134']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['778']++;if(!(shape instanceof CanvasShape)){__cov_AYKecnXg3b5jlAls2sgBIg.b['168'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['779']++;if(Y_LANG.isString(shape)){__cov_AYKecnXg3b5jlAls2sgBIg.b['169'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['780']++;shape=this._shapes[shape];}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['169'][1]++;}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['168'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['781']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['171'][0]++,shape)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['171'][1]++,shape instanceof CanvasShape)){__cov_AYKecnXg3b5jlAls2sgBIg.b['170'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['782']++;shape._destroy();__cov_AYKecnXg3b5jlAls2sgBIg.s['783']++;delete this._shapes[shape.get('id')];}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['170'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['784']++;if(this.get('autoDraw')){__cov_AYKecnXg3b5jlAls2sgBIg.b['172'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['785']++;this._redraw();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['172'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['786']++;return shape;},removeAllShapes:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['135']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['787']++;var shapes=this._shapes,i;__cov_AYKecnXg3b5jlAls2sgBIg.s['788']++;for(i in shapes){__cov_AYKecnXg3b5jlAls2sgBIg.s['789']++;if(shapes.hasOwnProperty(i)){__cov_AYKecnXg3b5jlAls2sgBIg.b['173'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['790']++;shapes[i].destroy();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['173'][1]++;}}__cov_AYKecnXg3b5jlAls2sgBIg.s['791']++;this._shapes={};},clear:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['136']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['792']++;this.removeAllShapes();},_removeChildren:function(node){__cov_AYKecnXg3b5jlAls2sgBIg.f['137']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['793']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['175'][0]++,node)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['175'][1]++,node.hasChildNodes())){__cov_AYKecnXg3b5jlAls2sgBIg.b['174'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['794']++;var child;__cov_AYKecnXg3b5jlAls2sgBIg.s['795']++;while(node.firstChild){__cov_AYKecnXg3b5jlAls2sgBIg.s['796']++;child=node.firstChild;__cov_AYKecnXg3b5jlAls2sgBIg.s['797']++;this._removeChildren(child);__cov_AYKecnXg3b5jlAls2sgBIg.s['798']++;node.removeChild(child);}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['174'][1]++;}},_toggleVisible:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['138']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['799']++;var i,shapes=this._shapes,visibility=val?(__cov_AYKecnXg3b5jlAls2sgBIg.b['176'][0]++,'visible'):(__cov_AYKecnXg3b5jlAls2sgBIg.b['176'][1]++,'hidden');__cov_AYKecnXg3b5jlAls2sgBIg.s['800']++;if(shapes){__cov_AYKecnXg3b5jlAls2sgBIg.b['177'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['801']++;for(i in shapes){__cov_AYKecnXg3b5jlAls2sgBIg.s['802']++;if(shapes.hasOwnProperty(i)){__cov_AYKecnXg3b5jlAls2sgBIg.b['178'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['803']++;shapes[i].set('visible',val);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['178'][1]++;}}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['177'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['804']++;if(this._node){__cov_AYKecnXg3b5jlAls2sgBIg.b['179'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['805']++;this._node.style.visibility=visibility;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['179'][1]++;}},_getShapeClass:function(val){__cov_AYKecnXg3b5jlAls2sgBIg.f['139']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['806']++;var shape=this._shapeClass[val];__cov_AYKecnXg3b5jlAls2sgBIg.s['807']++;if(shape){__cov_AYKecnXg3b5jlAls2sgBIg.b['180'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['808']++;return shape;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['180'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['809']++;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['810']++;var shape=this._shapes[id];__cov_AYKecnXg3b5jlAls2sgBIg.s['811']++;return shape;},batch:function(method){__cov_AYKecnXg3b5jlAls2sgBIg.f['141']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['812']++;var autoDraw=this.get('autoDraw');__cov_AYKecnXg3b5jlAls2sgBIg.s['813']++;this.set('autoDraw',false);__cov_AYKecnXg3b5jlAls2sgBIg.s['814']++;method();__cov_AYKecnXg3b5jlAls2sgBIg.s['815']++;this.set('autoDraw',autoDraw);},_getDocFrag:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['142']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['816']++;if(!this._frag){__cov_AYKecnXg3b5jlAls2sgBIg.b['181'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['817']++;this._frag=DOCUMENT.createDocumentFragment();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['181'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['818']++;return this._frag;},_redraw:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['143']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['819']++;var autoSize=this.get('autoSize'),preserveAspectRatio=this.get('preserveAspectRatio'),box=this.get('resizeDown')?(__cov_AYKecnXg3b5jlAls2sgBIg.b['182'][0]++,this._getUpdatedContentBounds()):(__cov_AYKecnXg3b5jlAls2sgBIg.b['182'][1]++,this._contentBounds),contentWidth,contentHeight,w,h,xScale,yScale,translateX=0,translateY=0,matrix,node=this.get('node');__cov_AYKecnXg3b5jlAls2sgBIg.s['820']++;if(autoSize){__cov_AYKecnXg3b5jlAls2sgBIg.b['183'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['821']++;if(autoSize==='sizeContentToGraphic'){__cov_AYKecnXg3b5jlAls2sgBIg.b['184'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['822']++;contentWidth=box.right-box.left;__cov_AYKecnXg3b5jlAls2sgBIg.s['823']++;contentHeight=box.bottom-box.top;__cov_AYKecnXg3b5jlAls2sgBIg.s['824']++;w=parseFloat(Y_DOM.getComputedStyle(node,'width'));__cov_AYKecnXg3b5jlAls2sgBIg.s['825']++;h=parseFloat(Y_DOM.getComputedStyle(node,'height'));__cov_AYKecnXg3b5jlAls2sgBIg.s['826']++;matrix=new Y.Matrix();__cov_AYKecnXg3b5jlAls2sgBIg.s['827']++;if(preserveAspectRatio==='none'){__cov_AYKecnXg3b5jlAls2sgBIg.b['185'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['828']++;xScale=w/contentWidth;__cov_AYKecnXg3b5jlAls2sgBIg.s['829']++;yScale=h/contentHeight;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['185'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['830']++;if(contentWidth/contentHeight!==w/h){__cov_AYKecnXg3b5jlAls2sgBIg.b['186'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['831']++;if(contentWidth*h/contentHeight>w){__cov_AYKecnXg3b5jlAls2sgBIg.b['187'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['832']++;xScale=yScale=w/contentWidth;__cov_AYKecnXg3b5jlAls2sgBIg.s['833']++;translateY=this._calculateTranslate(preserveAspectRatio.slice(5).toLowerCase(),contentHeight*w/contentWidth,h);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['187'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['834']++;xScale=yScale=h/contentHeight;__cov_AYKecnXg3b5jlAls2sgBIg.s['835']++;translateX=this._calculateTranslate(preserveAspectRatio.slice(1,4).toLowerCase(),contentWidth*h/contentHeight,w);}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['186'][1]++;}}__cov_AYKecnXg3b5jlAls2sgBIg.s['836']++;Y_DOM.setStyle(node,'transformOrigin','0% 0%');__cov_AYKecnXg3b5jlAls2sgBIg.s['837']++;translateX=translateX-box.left*xScale;__cov_AYKecnXg3b5jlAls2sgBIg.s['838']++;translateY=translateY-box.top*yScale;__cov_AYKecnXg3b5jlAls2sgBIg.s['839']++;matrix.translate(translateX,translateY);__cov_AYKecnXg3b5jlAls2sgBIg.s['840']++;matrix.scale(xScale,yScale);__cov_AYKecnXg3b5jlAls2sgBIg.s['841']++;Y_DOM.setStyle(node,'transform',matrix.toCSSText());}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['184'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['842']++;this.set('width',box.right);__cov_AYKecnXg3b5jlAls2sgBIg.s['843']++;this.set('height',box.bottom);}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['183'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['844']++;if(this._frag){__cov_AYKecnXg3b5jlAls2sgBIg.b['188'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['845']++;this._node.appendChild(this._frag);__cov_AYKecnXg3b5jlAls2sgBIg.s['846']++;this._frag=null;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['188'][1]++;}},_calculateTranslate:function(position,contentSize,boundsSize){__cov_AYKecnXg3b5jlAls2sgBIg.f['144']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['847']++;var ratio=boundsSize-contentSize,coord;__cov_AYKecnXg3b5jlAls2sgBIg.s['848']++;switch(position){case'mid':__cov_AYKecnXg3b5jlAls2sgBIg.b['189'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['849']++;coord=ratio*0.5;__cov_AYKecnXg3b5jlAls2sgBIg.s['850']++;break;case'max':__cov_AYKecnXg3b5jlAls2sgBIg.b['189'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['851']++;coord=ratio;__cov_AYKecnXg3b5jlAls2sgBIg.s['852']++;break;default:__cov_AYKecnXg3b5jlAls2sgBIg.b['189'][2]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['853']++;coord=0;__cov_AYKecnXg3b5jlAls2sgBIg.s['854']++;break;}__cov_AYKecnXg3b5jlAls2sgBIg.s['855']++;return coord;},addToRedrawQueue:function(shape){__cov_AYKecnXg3b5jlAls2sgBIg.f['145']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['856']++;var shapeBox,box;__cov_AYKecnXg3b5jlAls2sgBIg.s['857']++;this._shapes[shape.get('id')]=shape;__cov_AYKecnXg3b5jlAls2sgBIg.s['858']++;if(!this.get('resizeDown')){__cov_AYKecnXg3b5jlAls2sgBIg.b['190'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['859']++;shapeBox=shape.getBounds();__cov_AYKecnXg3b5jlAls2sgBIg.s['860']++;box=this._contentBounds;__cov_AYKecnXg3b5jlAls2sgBIg.s['861']++;box.left=box.left<shapeBox.left?(__cov_AYKecnXg3b5jlAls2sgBIg.b['191'][0]++,box.left):(__cov_AYKecnXg3b5jlAls2sgBIg.b['191'][1]++,shapeBox.left);__cov_AYKecnXg3b5jlAls2sgBIg.s['862']++;box.top=box.top<shapeBox.top?(__cov_AYKecnXg3b5jlAls2sgBIg.b['192'][0]++,box.top):(__cov_AYKecnXg3b5jlAls2sgBIg.b['192'][1]++,shapeBox.top);__cov_AYKecnXg3b5jlAls2sgBIg.s['863']++;box.right=box.right>shapeBox.right?(__cov_AYKecnXg3b5jlAls2sgBIg.b['193'][0]++,box.right):(__cov_AYKecnXg3b5jlAls2sgBIg.b['193'][1]++,shapeBox.right);__cov_AYKecnXg3b5jlAls2sgBIg.s['864']++;box.bottom=box.bottom>shapeBox.bottom?(__cov_AYKecnXg3b5jlAls2sgBIg.b['194'][0]++,box.bottom):(__cov_AYKecnXg3b5jlAls2sgBIg.b['194'][1]++,shapeBox.bottom);__cov_AYKecnXg3b5jlAls2sgBIg.s['865']++;this._contentBounds=box;}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['190'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['866']++;if(this.get('autoDraw')){__cov_AYKecnXg3b5jlAls2sgBIg.b['195'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['867']++;this._redraw();}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['195'][1]++;}},_getUpdatedContentBounds:function(){__cov_AYKecnXg3b5jlAls2sgBIg.f['146']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['868']++;var bounds,i,shape,queue=this._shapes,box={};__cov_AYKecnXg3b5jlAls2sgBIg.s['869']++;for(i in queue){__cov_AYKecnXg3b5jlAls2sgBIg.s['870']++;if(queue.hasOwnProperty(i)){__cov_AYKecnXg3b5jlAls2sgBIg.b['196'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['871']++;shape=queue[i];__cov_AYKecnXg3b5jlAls2sgBIg.s['872']++;bounds=shape.getBounds();__cov_AYKecnXg3b5jlAls2sgBIg.s['873']++;box.left=Y_LANG.isNumber(box.left)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['197'][0]++,Math.min(box.left,bounds.left)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['197'][1]++,bounds.left);__cov_AYKecnXg3b5jlAls2sgBIg.s['874']++;box.top=Y_LANG.isNumber(box.top)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['198'][0]++,Math.min(box.top,bounds.top)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['198'][1]++,bounds.top);__cov_AYKecnXg3b5jlAls2sgBIg.s['875']++;box.right=Y_LANG.isNumber(box.right)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['199'][0]++,Math.max(box.right,bounds.right)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['199'][1]++,bounds.right);__cov_AYKecnXg3b5jlAls2sgBIg.s['876']++;box.bottom=Y_LANG.isNumber(box.bottom)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['200'][0]++,Math.max(box.bottom,bounds.bottom)):(__cov_AYKecnXg3b5jlAls2sgBIg.b['200'][1]++,bounds.bottom);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['196'][1]++;}}__cov_AYKecnXg3b5jlAls2sgBIg.s['877']++;box.left=Y_LANG.isNumber(box.left)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['201'][0]++,box.left):(__cov_AYKecnXg3b5jlAls2sgBIg.b['201'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['878']++;box.top=Y_LANG.isNumber(box.top)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['202'][0]++,box.top):(__cov_AYKecnXg3b5jlAls2sgBIg.b['202'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['879']++;box.right=Y_LANG.isNumber(box.right)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['203'][0]++,box.right):(__cov_AYKecnXg3b5jlAls2sgBIg.b['203'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['880']++;box.bottom=Y_LANG.isNumber(box.bottom)?(__cov_AYKecnXg3b5jlAls2sgBIg.b['204'][0]++,box.bottom):(__cov_AYKecnXg3b5jlAls2sgBIg.b['204'][1]++,0);__cov_AYKecnXg3b5jlAls2sgBIg.s['881']++;this._contentBounds=box;__cov_AYKecnXg3b5jlAls2sgBIg.s['882']++;return box;},_toFront:function(shape){__cov_AYKecnXg3b5jlAls2sgBIg.f['147']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['883']++;var contentNode=this.get('node');__cov_AYKecnXg3b5jlAls2sgBIg.s['884']++;if(shape instanceof Y.CanvasShape){__cov_AYKecnXg3b5jlAls2sgBIg.b['205'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['885']++;shape=shape.get('node');}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['205'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['886']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['207'][0]++,contentNode)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['207'][1]++,shape)){__cov_AYKecnXg3b5jlAls2sgBIg.b['206'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['887']++;contentNode.appendChild(shape);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['206'][1]++;}},_toBack:function(shape){__cov_AYKecnXg3b5jlAls2sgBIg.f['148']++;__cov_AYKecnXg3b5jlAls2sgBIg.s['888']++;var contentNode=this.get('node'),targetNode;__cov_AYKecnXg3b5jlAls2sgBIg.s['889']++;if(shape instanceof Y.CanvasShape){__cov_AYKecnXg3b5jlAls2sgBIg.b['208'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['890']++;shape=shape.get('node');}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['208'][1]++;}__cov_AYKecnXg3b5jlAls2sgBIg.s['891']++;if((__cov_AYKecnXg3b5jlAls2sgBIg.b['210'][0]++,contentNode)&&(__cov_AYKecnXg3b5jlAls2sgBIg.b['210'][1]++,shape)){__cov_AYKecnXg3b5jlAls2sgBIg.b['209'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['892']++;targetNode=contentNode.firstChild;__cov_AYKecnXg3b5jlAls2sgBIg.s['893']++;if(targetNode){__cov_AYKecnXg3b5jlAls2sgBIg.b['211'][0]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['894']++;contentNode.insertBefore(shape,targetNode);}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['211'][1]++;__cov_AYKecnXg3b5jlAls2sgBIg.s['895']++;contentNode.appendChild(shape);}}else{__cov_AYKecnXg3b5jlAls2sgBIg.b['209'][1]++;}}});__cov_AYKecnXg3b5jlAls2sgBIg.s['896']++;Y.CanvasGraphic=CanvasGraphic;},'3.10.3',{'requires':['graphics']});