agridData titlesDatarangeAnnotationsminXmaxX baselineXminYmaxY baselineYclipDatabackgroundColor verticalDiffhorizontalDiffextraLinesDatapropslefttoprightbottomminmaxparentAxisSize axisPositionappliedInterval sideTitlesformattedValueaxisSide showTitlesgetTitlesWidget reservedSizeinterval minIncluded maxIncludedlerpcopyWithenableddistanceFromEdge axisNameSizeaxisNameWidgetdrawBelowEverythingshowAxisTitlesshowSideTitlesshow leftTitles topTitles rightTitles bottomTitlesxytoStringnullSpotzeroisNull isNotNull==hashCodedrawHorizontalLinehorizontalIntervalgetDrawingHorizontalLinecheckToShowHorizontalLinedrawVerticalLineverticalIntervalgetDrawingVerticalLinecheckToShowVerticalLinecolorgradient strokeWidth dashArrayspotoffsethorizontalRangeAnnotationsverticalRangeAnnotationsy1y2x1x2image sizedPicturelabel strokeCapcopyVerticalLineWith labelResolverdefaultLineLabelResolverpicturewidthheighthorizontalLines verticalLinesextraLinesOnTopdrawgetSize mainColorhitTestradius strokeColor_lerpsize AxisChartDataAxisSide TitleMetaGetTitleWidgetFunctiondefaultGetTitle SideTitlesSideTitleFitInsideData AxisTitles FlTitlesDataFlSpot FlGridDataCheckToShowGrid showAllGridsGetDrawingGridLinedefaultGridLineFlLine TouchedSpotRangeAnnotationsHorizontalRangeAnnotationVerticalRangeAnnotationHorizontalLine VerticalLineHorizontalLineLabelVerticalLineLabel SizedPictureExtraLinesData FlDotPainterFlDotCirclePainterFlDotSquarePainterFlDotCrossPainter€�Image BaseChartDataEquatableMixindouble FlClipDataColornoneColors transparentoverrideListObject borderData touchDataStringWidgetgetTitlesWidget formatNumberSideTitleWidgetaxisSidechildTextformattedValue getTitlesboolTweenlerp showTitles reservedSize lerpDoubleinterval minIncluded maxIncluded fromTitleMetaspaceenableddistanceFromEdgeparentAxisSize axisPositionaxisNameaxisNameWidget axisNameSize sideTitlesdrawBelowEverythingshow leftTitles rightTitles bottomTitles topTitles immutablexynannullSpot identicalisNaNinthashCodeAxisChartPainterdrawHorizontalLinehorizontalIntervalgetDrawingHorizontalLinecheckToShowHorizontalLinedrawVerticalLineverticalIntervalgetDrawingVerticalLinecheckToShowVerticalLinevaluecolorblueGrey strokeWidth dashArrayblackGradientgradient lerpIntListOffsethorizontalRangeAnnotations!lerpHorizontalRangeAnnotationListverticalRangeAnnotationslerpVerticalRangeAnnotationListwhitey1y2x1x2 LineChart LineChartDataextraLinesData StrokeCapbuttlabelimage sizedPicture strokeCap FlLineLabel alignmentpaddingstyle directionall AlignmenttopLeftLabelDirection horizontaldefaultLineLabelResolvertoStringAsFixed EdgeInsets TextStyle labelResolver fontWeight FontWeightboldfontSize bottomRightPictureextraLinesOnTophorizontalLineslerpHorizontalLineList verticalLineslerpVerticalLineListvoidCanvasSizedefaultScatterTooltipItemhitTestRect fromCentercenterwidthheightinflatecontainsgreenfromRGBOa drawCirclePaint PaintingStylestrokefill fromRadiusradius strokeColordistanceabsdrawRect fromCirclesquaresizePathmoveTodxdyrelativeMoveTorelativeLineTodrawPath BaseChartDataEquatableMixinFlLine FlLineLabel FlDotPainterm,pW³j'ò0�Ì})àWdart:ui, package:equatable/equatable.dartWpackage:fl_chart/fl_chart.dart€€Bpackage:fl_chart/src/chart/base/axis_chart/axis_chart_painter.dart€Í$package:fl_chart/src/utils/lerp.dart�"�,Image€üpackage:flutter/material.dartÀ‰ìÀȵ†J*+V€Ì€û�.�/�d�­�ä‚!‚S‚‡‚Ђâ‚üƒƒBƒZƒrƒ‰ƒ¡ƒ¹ƒÐƒê„„„:„^„‘„Ú„þ…"…Z…›…Þ…û††G†H†]†r†Œ†¡†¶†Ð†Ñ‡‡3‡4‡n‡�‡Ž‡´‡Þ‡ßˆˆ1ˆ2ˆqˆ˜ˆ™ˆÎˆÚˆù‰ ‰‰9‰G‰U‰h‰v‰„‰—‰©‰Â‰Ö‰éŠŠ Š Š Š0Š[Š\ГХгŠÊŠá‹‹#‹F‹d‹†‹¢‹¨‹©‹¾‹Ò‹Ó‹è‹ü‹ýŒ Œ?Œ@ŒnŒ—Œ´ŒµŒë� � �4�S�T�¡�À�ÁŽŽ Ž"Ž#Žhޏ޹ŽðŽô�:�q�‹�¨�¹�Ô�Û�à�â�ã��B�y�´�º‘‘S‘€‘±‘ý’3’9’‚’³’¹“ “U“j“‡“³“Ï“â“ÿ””b”c”—”°”±••2•b•c• •Ñ•î•ï–@–‹–¥–¦–î——3—4—|—§—Á—˜˜S˜u˜¡˜ç™ ™D™h™q™r™«™Ï™ç™ýš*šDšZšqšˆš�š¢šÕ››P›}›³›é›ò›óœ(œ4œSœgœ€œ–œ¨œ½œÒœÛœÝœÞ��5�9�n�¦�ßžžGžmžsžªžäŸŸ%ŸVŸ›Ÿ¡ŸÜ  = X x š ¾ Ä Å ÷¡*¡[¡§¡¿¡Ü¡÷¢¢¢¢Z¢¢¢Ò¢è££"£*£H£b£Ž£»£ä£í£î¤$¤:¤;¤‡¤¨¤©¤Ì¤ë¤ì¥¥O¥l¥m¥y¥˜¥©¥Ã¥Û¥ñ¥ú¥ü¥ý¦D¦k¦ª¦Ä¦Ê§§§b§w§�§¬§Ö§û¨¨¨*¨G¨H¨�¨Þ¨þ¨ÿ©6©U©V©®©´ªª0ª1ªtª¾ª¿«««\«]« «î¬¬^¬¢¬Ö¬ß¬à­­=­U­q­‹­§­Æ­Î­à®®X®‹®Ù®â®ã¯¯$¯C¯[¯q¯…¯¢¯«¯­¯®¯è°°G°Ž°Ð°ç°ý±%±C±]±w±€±‡±®±Ì±æ²² ²²9²W²q²‹²”²›²Å²ã²ý³³ ³'³-³.³A³`³~³ž³¿³À´´M´a´w´»µµLµ�µ–µ—µÔµø¶¶"¶>¶Y¶v¶”¶œ¶°¶Ñ··4·j·£·¬·­·â·î¸ ¸¸/¸B¸W¸m¸v¸x¸y¸¿¸Ê¸Ù¹¹F¹L¹Œ¹¹¹Ù¹Ú¹ì¹þ¹ÿº0ºTºhºwº†ºŽºœº±ºÆºÏºÐºÿ» ».»/»h»©»ª»Æ»ñ»ò¼¼?¼@¼m¼Ž¼�¼Î½½#½3½9½:½Z½j½p½q½„½¤½Ä½Ë½Ï½Ð¾ ¾¾<¾i¾…¾™¾Ÿ¾ ¾à¾ó¾ù¾ú¿#¿'¿(¿@¿L¿{¿}¿~¿¡¿ÈÀ@À@FÀ@LÀ@�À@âÀA7ÀA›ÀA´ÀBÀB~ÀB¦ÀBøÀBþÀCMÀC�ÀCãÀDGÀD`ÀDÃÀE&ÀENÀEœÀE±ÀEÇÀEëÀFÀF=ÀFpÀF’ÀF­ÀFàÀGÀG!ÀGDÀG€ÀG‹ÀG›ÀG¼ÀGöÀHÀHÀHHÀH[ÀH\ÀH•ÀH¶ÀH·ÀIÀI3ÀI4ÀIƒÀI¸ÀI¹ÀJÀJLÀJMÀJ„ÀJ£ÀJ¤ÀJúÀKÀKÀKlÀKŸÀK ÀLÀL1ÀL2ÀLuÀLÃÀLÙÀM ÀM'ÀMnÀM¬ÀMìÀNÀNkÀN¥ÀNáÀNêÀNëÀO$ÀOHÀO`ÀOpÀOŽÀO®ÀOàÀPÀP,ÀPJÀPzÀP¨ÀP°ÀPÂÀPãÀQ.ÀQyÀQ›ÀQâÀRÀRNÀR“ÀRØÀRøÀS;ÀS\ÀS¡ÀSªÀS«ÀSàÀSìÀT ÀTÀT5ÀTQÀTsÀT–ÀT°ÀTÊÀTêÀU ÀUÀUÀUÀUHÀUÀU€ÀU•ÀU¾ÀU¿ÀUðÀUôÀV/ÀVwÀV³ÀV´ÀVÜÀWÀW0ÀWHÀWaÀWhÀWiÀW†ÀW©ÀWÔÀXÀXIÀXƒÀXÏÀXþÀYÀY!ÀY4ÀYNÀYbÀYzÀYÃÀYÄÀYåÀYûÀYüÀZ$ÀZ@ÀZAÀZfÀZ‚ÀZƒÀZªÀZ°ÀZêÀ[6À[eÀ[ƒÀ[„À[ÃÀ\À\1À\mÀ\°À\íÀ\öÀ\÷À](À]LÀ]`À]rÀ]ŠÀ]£À]½À]ÅÀ]ÓÀ]÷À^$À^ZÀ^ŠÀ^“À^”À^ÉÀ^ÕÀ^ôÀ_À_À_*À_=À_FÀ_HÀ_IÀ_ŒÀ_½À_üÀ`.À`4À`kÀ`žÀ`­À`¼À`ÍÀ`ÒÀ`ÓÀa Àa<ÀaQÀaRÀaˆÀa»ÀaÒÀaÓÀbÀbÀb3ÀbAÀbQÀbZÀb\Àb]Àb¥ÀbÒÀcÀctÀc�Àc¿ÀcíÀcóÀcôÀd8ÀdxÀdyÀdÂÀdâÀdúÀeÀe Àe'Àe?Àe†Àe®ÀeÖÀeãÀeïÀf2ÀfXÀf~Àf‹Àf—Àf Àf¡ÀfæÀg Àg(ÀgiÀg¦Àg®ÀgÆÀgêÀh5ÀhWÀhžÀh§Àh¨ÀhÝÀhéÀiÀi,ÀiNÀiWÀiYÀiZÀi‘ÀiÇÀj ÀjhÀj†ÀjœÀj²ÀjÄÀj×ÀjïÀk8Àk9ÀkoÀk‚ÀkƒÀk·ÀkÊÀkËÀlÀlQÀlœÀlÔÀlêÀlëÀm:ÀmqÀm¼ÀmôÀnÀnÀncÀnŒÀn­ÀnÎÀnÜÀnãÀoÀo,ÀoTÀo„ÀoÀÀoÉÀoÊÀp!ÀpEÀplÀp|ÀpŒÀpžÀp¶Àp¾ÀpßÀpúÀqÀq9ÀqfÀqoÀqpÀq¥Àq±ÀqÐÀqÜÀqèÀq÷Àr ÀrÀrÀrÀrNÀr‚ÀrÙÀs!Às=ÀsSÀsiÀs{ÀsŽÀs¦ÀsïÀsðÀt(Àt;Àt<ÀtrÀt…Àt†ÀtÐÀu ÀuUÀu�Àu£Àu¤ÀuñÀv(ÀvsÀv«ÀvÇÀvÈÀwÀw?Àw^Àw}Àw‹Àw’Àw±ÀwÙÀxÀx1ÀxmÀxvÀxwÀxÊÀxîÀyÀy#Ày3ÀyEÀy]ÀyeÀy„ÀyŸÀyºÀyÞÀz ÀzÀzÀzJÀzVÀzuÀz�Àz�ÀzœÀz®Àz·Àz¹ÀzºÀzíÀzñÀ{FÀ{šÀ{ÔÀ|"À|_À|–À|œÀ|¾À|ÄÀ}#À})À}|À}¤À}·À}ÌÀ}ìÀ}ýÀ~À~(À~=À~MÀ~dÀ~‰À~¸À~¹À~úÀ À ÀWÀmÀnÀ´ÀØÀÙÀ€À€$À€%À€nÀ€±À€ÎÀ€ÏÀ�À�dÀ�zÀ�ŸÀ�ÝÀ‚ À‚IÀ‚ŒÀ‚ÉÀ‚áÀƒÀƒ'Àƒ0Àƒ1ÀƒfÀƒrÀƒ‘ÀƒœÀƒ«ÀƒºÀƒÏÀƒâÀƒñÀ„À„À„#À„%À„&À„WÀ„[À„®À…À…:À…†À…ÃÀ…úÀ†À†"À†(À†‡À†�À†âÀ‡ À‡À‡0À‡NÀ‡_À‡sÀ‡ŠÀ‡ŸÀ‡¯À‡ÆÀ‡ëÀˆÀˆÀˆZÀˆlÀˆmÀˆ¹ÀˆÏÀˆÐÀ‰À‰<À‰=À‰eÀ‰†À‰‡À‰ÐÀŠÀŠ0ÀŠ1ÀŠvÀоÀŠÒÀŠ÷À‹3À‹cÀ‹ŸÀ‹âÀŒÀŒ7ÀŒ]ÀŒ}ÀŒ†ÀŒ‡ÀŒÃÀŒçÀ� À�À�:À�LÀ�eÀ�À�‘À�±À�ËÀ�ÓÀ�çÀ�ÿÀŽ#ÀŽGÀŽ}ÀŽ­ÀŽÑÀ� À�:À�CÀ�DÀ�yÀ�…À�¤À�¯À�¾À�ÍÀ�âÀ�õÀ�À�À�-À�6À�8À�9À�cÀ�§À�ýÀ‘HÀ‘eÀ‘ŸÀ‘ÐÀ‘þÀ’ZÀ’rÀ’ŸÀ’°À’ÙÀ’ñÀ“"À“iÀ“oÀ“pÀ“”À“ËÀ“ÌÀ”À”HÀ”iÀ”jÀ”¶À”ÙÀ”ôÀ•À•À•$À•?À•aÀ•„À•§À•´À•ÀÀ•ôÀ–5À–]À–sÀ–“À–œÀ–�À–ÒÀ–ÞÀ–ýÀ—À—"À—3À—BÀ—UÀ—hÀ—qÀ—sÀ—tÀ—œÀ—ÞÀ˜2À˜}À˜šÀ˜ÔÀ™À™3À™�À™¥À™ÒÀ™õÀšÀš3ÀšGÀšNÀš{Àš“ÀšÄÀ› À›À›À›4À›iÀ›jÀ›£À›âÀœÀœÀœNÀœoÀœˆÀœ¡Àœ¯Àœ¶ÀœÏÀœñÀ�À�7À�DÀ�PÀ�„À�ÅÀ�íÀžÀž#Àž,Àž-ÀžbÀžnÀž�Àž¤Àž²ÀžÃÀžÒÀžåÀžøÀŸÀŸÀŸÀŸ@ÀŸDÀŸUÀŸaÀŸŒÀŸ¼À  À PÀ lÀ sÀ {À ¤À ÊÀ ñÀ¡À¡À¡DÀ¡“À¡ÀÀ¡ÊÀ¢ À¢@À¢AÀ¢]À¢vÀ¢wÀ¢•À¢¨À¢©À¢ÈÀ¢ÜÀ¢ÝÀ£À£À£=À£NÀ£]À£mÀ£vÀ£xÀ£yÀ£ÁÀ£ìÀ¤0À¤eÀ¤›À¤ËÀ¤ÑÀ¥-À¥[À¥tÀ¥™À¥¼À¥ÝÀ¥ãÀ¥äÀ¦À¦<À¦ZÀ¦[À¦¢À¦ðÀ§À§2À§KÀ§™À§°À§øÀ¨À¨À¨7À¨CÀ¨bÀ¨{À¨’À¨«À¨´À¨¶À¨·À©À©7À©OÀ©PÀ©ŽÀ©ÎÀ©ÏÀªÀª4Àª5Àª}Àª”Àª•ÀªÔÀªÕÀ«À«CÀ«�À« À«±À«ÅÀ«ØÀ«óÀ«ùÀ¬À¬?À¬UÀ¬nÀ¬‰À¬�À¬ÌÀ¬øÀ¬üÀ¬þÀ¬ÿÀ­BÀ­VÀ­†À­ÉÀ­ýÀ®1À®dÀ®¬À®ÃÀ®âÀ®öÀ¯3À¯OÀ¯nÀ¯oÀ¯šÀ¯¯À¯°À¯ÚÀ¯ñÀ¯òÀ°À°:À°;À°hÀ°„À°…À°ÁÀ°ÍÀ±À±DÀ±]À±uÀ±™À±©À±ÉÀ±ïÀ²À²"À²(À²?À²UÀ²cÀ²qÀ²‰À²¯À²¶À²ºÀ²»À³À³À³TÀ³UÀ³aÀ³�À³‚À³žÀ³¸À³ÒÀ³àÀ³çÀ´À´2À´eÀ´¨À´ëÀ´ôÀ´õÀµÀµAÀµ�Àµ‘Àµ—Àµ²Àµ¶Àµ·ÀµÃÀµÓÀµäÀµøÀ¶ À¶&À¶,À¶dÀ¶“À¶—À¶˜À¶ÍÀ¶ÙÀ¶øÀ·À·À·,À·AÀ·JÀ·LÀ·MÀ·�À·¤À·ÔÀ¸À¸GÀ¸{À¸®À¸öÀ¹ À¹,À¹AÀ¹~À¹šÀ¹ À¹¡À¹ÌÀ¹áÀ¹âÀº ÀºÀº ÀºMÀºhÀºiÀº–Àº²Àº³ÀºïÀºûÀ»<À»rÀ»‰À»¢À»ÄÀ»öÀ¼À¼À¼1À¼WÀ¼�À¼ŠÀ¼�À¼¥À¼¼À¼ÜÀ¼öÀ¼ÿÀ½ À½%À½KÀ½RÀ½VÀ½WÀ½žÀ½ªÀ½êÀ½ëÀ½÷À¾À¾À¾MÀ¾YÀ¾xÀ¾‡À¾•À¾ªÀ¾¿À¾ÈÀ¾ÉÀ¾åÀ¾ÿÀ¿À¿'À¿.À¿HÀ¿yÀ¿§À¿êÀÀ-ÀÀ6ÀÀ7ÀÀCÀÀƒÀÀÃÀÀÓÀÀÙÀÀôÀÀøÀÀúÀÀûÀÁ>ÀÁYÀÁˆÀÁèÀÂ#ÀÂ9ÀÂXÀÂmÀƒÀ‰ÀŠÀµÀÂÊÀÂËÀÂþÀÃÀÃÀÃ:ÀÃPÀÃQÀÃŒÀØÀÃÙÀÃñÀÄ&ÀÄSÀÄvÀÄ«ÀÄ×ÀÄüÀÄýÀÅÀÅ<ÀÅXÀÅoÀÅpÀÅ’ÀÅ–ÀÅ—ÀÅÞÀÅêÀÆÀÆÀÆ(ÀÆHÀÆIÀÆdÀÆ}ÀÆ–ÀƤÀÆ«ÀÆÄÀÆõÀÇ#ÀÇTÀÇ]ÀÇ^ÀÇjÀǪÀÇèÀÇøÀÇþÀÈÀÈÀÈÀÈSÀÈ_ÀÈ~ÀÈ�ÀÈ›ÀȪÀȳÀȵ+V€Ì€û�"�,‚Ò‚ß‚æ‚æ‚òƒƒƒƒƒ"ƒ0ƒFƒFƒTƒ^ƒ^ƒlƒvƒvƒ~ƒ�ƒ�ƒ›ƒ¥ƒ¥ƒ³ƒ½ƒ½ƒÅƒÔƒÔƒàƒîƒîƒõ„ „ „„ „ „/„>„>„N3„o„f„z„q„}„ƒ„�„Ž„ª„™„½„¬„À„Ƅքׄì„â„ø„î„û………………3…*…>…5…A…G…Q…R…V…W…r…b…„…t…‡…�…Ž…²…£…Ã…´…Æ…Ì…Ú…Û‚Ò‚Òƒ …ñ…à…ñ†…ý††5†'†5†W†J†W†l†_†l†�†t†�†›†Ž†›†°†£†°†Å†¸†Å‡)†Ó^‡)B/// clip the chart to the border (prevent draw outside the border)‡|‡6U‡|7/// A background color which is drawn behind the chart.ˆˆˆ4bˆˆŒ/ /// parent axis max width/heightŒ¦ŒBpŒ¦R/// The position (in pixel) that applied to /// this drawing title along its axis.ŒúŒ·RŒú3/// The interval that applied to this drawing title�G�C�G%/// Reference of [SideTitles] object.�°�Vh�°J/// Formatted value that is suitable to show, for example 100, 2k, 5m, ...Ž�Ã[ŽA/// Determines the axis side of titles (left, top, right, bottom)Š\Š\ƒÅŠ™6/// Contains meta information about the drawing title.“]“g“n“n“s“‹“‹&“�“·“·“¼“Ó“Ó “Ø“æ“æ“ë””” “€“¢“Ë“ù””#”)”7”_”3”*”6”9�D�D„‚ô/// It draws some title on an axis, per axis values, /// [showTitles] determines showing or hiding this side, /// /// Texts are depend on the axis value, you can override [getTitles], /// it gives you an axis value (double value) and a [TitleMeta] which contains /// additional information about the axis. /// Then you should return a [Widget] to show. /// It allows you to do anything you want, For example you can show icons /// instead of texts, because it accepts a [Widget] /// /// [reservedSize] determines the maximum space that your titles need, /// (All titles will stretch using this value) /// /// Texts are showing with provided [interval]. If you don't provide anything, /// we try to find a suitable value to set as [interval] under the hood.”¤”eI”¤1/// Determines showing or hiding this side titles•Q”³€­•Q|/// You can override it to pass your custom widget to show in each axis value /// We recommend you to use [SideTitleWidget].•à•e€‡•ài/// It determines the maximum space that your titles need, /// (All titles will stretch using this value)–›•ñ€²–›€—/// Texts are showing with provided [interval]. If you don't provide anything, /// we try to find a suitable value to set as [interval] under the hood.—&–¨€‰—&n/// If true (default), a title for the minimum data value is included /// independent of the sampling interval—´—6€‰—´n/// If true (default), a title for the maximum data value is included /// independent of the sampling intervalœ*œ+›õ›õ€åœH2/// Used for equality check, see [EquatableMixin].˜˜ ˜)˜,˜, ˜7˜:˜:˜A—Ä—Ä�¬˜@/// Lerps a [SideTitles] based on [t] value, check [Tween.lerp].™ë™ë™ñšš'šš.š.š6šHšHšPš^š^šdšušuš{™t™t‚}™ÜX/// Copies current [SideTitles] to a new [SideTitles], /// and replaces provided values.�ã�ãŒù�!7/// Holds data for showing label values on axis numbers $ : A A O \ \ j | | Š ž ž ¬žž‚¯�ñ/// Force child widget to be positioned inside its /// corresponding axis bounding box /// /// To makes things simpler, it's recommended to use /// [SideTitleFitInsideData.fromTitleMeta] and pass the /// TitleMeta provided from [SideTitles.getTitlesWidget] /// /// Some translations will be applied to force /// children to be positioned inside the parent axis bounding box. /// /// Will override the [SideTitleWidget.space] and caused /// spacing between [SideTitles] children might be not equal.¡]¡e¡{¡ƒ Ç Ç�Q¡|€�/// Create a disabled [SideTitleFitInsideData]. /// If used, the child widget wouldn't be fitted /// inside its corresponding axis bounding box¢¤¢¬¢Â¢Ð¢Ö¢Ö¢à¢ì¢ì¢ñ£££ ¢û£¢¢�ТÀƒ/// Help to Create [SideTitleFitInsideData] from [TitleMeta]. /// [TitleMeta] is provided by [SideTitles.getTitlesWidget] function.¤1£ðH¤13/// Whether to enable fit inside to SideTitleWidget¤–¤=i¤–I/// Distance between child widget and its closest corresponding axis edge¤Û¤«>¤Û /// Parent axis max width/height¥^¤î|¥^^/// The position (in pixel) that applied to /// the child widget along its corresponding axis.¥o¥p¥o¥o€Š¥�œÞœÞ‰�å�/// Force child widget to be positioned inside its /// corresponding axis bounding box /// /// To makes things simpler, it's recommended to use /// [SideTitleFitInsideData.fromTitleMeta] and pass the /// TitleMeta provided from [SideTitles.getTitlesWidget]§j§t§{§{§€§”§”§™§°§°$§µ§Ú§Ú§ß§¨§Â§È§Ò§Ó§õ¦m¦m�“€ê/// you can provide [axisName] if you want to show a general /// label on this axis, /// /// [axisNameSize] determines the maximum size that [axisName] can use /// /// [sideTitles] property is responsible to show your axis side labels¨9¨A¨9%/// Determines the size of [axisName]¨î¨J€²¨î€‘/// It shows the name of axis, for example your x-axis shows year, /// then you might want to show it using [axisNameWidget] property as a widget©I©R©I4/// It is responsible to show your axis side labels.ª©X€Öª€±/// If titles are showing on top of your tooltip, you can draw them below everything. /// /// In the future, we will convert tooltips to a widget, that would solve this problem.ª3ª3€Šª@/// If there is something to show as axisTitles, it returns trueªÁªÁ€š« @/// If there is something to show as sideTitles, it returns true¯¯®å®å€Å¯82/// Used for equality check, see [EquatableMixin].«¹«¹ «Ä«Ç«Ç «Ò«Õ«Õ«Ü«_«_�«´@/// Lerps a [AxisTitles] based on [t] value, check [Tween.lerp].­Y­Y­a­u­u­}­�­�­›­«­«­±¬â¬â�ÿ­JX/// Copies current [SideTitles] to a new [SideTitles], /// and replaces provided values.¥ý¥ý‰¯¦JF/// Holds data for showing each side titles (left, top, right, bottom)°Ø°ä°ë°ë°ð±±€„±±‹±‹€ƒ±�²²€…²²Ÿ²Ÿ€†²¤=°÷±±±#±„±5±+±7±A±}±W±K±Y±o±e±q±œ±¢±¬² ±¾±´±À±Ê²±à±Ô±â±ø±î±ú²'²-²7²˜²I²?²K²U²‘²k²_²m²ƒ²y²…²³²¹²Ã³$²Õ²Ë²×²á³²÷²ë²ù³³³°°ƒ€¸/// [show] determines showing or hiding all titles, /// [leftTitles], [topTitles], [rightTitles], [bottomTitles] defines /// side titles of left, top, right, bottom sides respectively.³;³0³;³T³C³T³s³b³s³‘³€³‘³±³ ³±·ä·å·¯·¯€Æ¸2/// Used for equality check, see [EquatableMixin].´ ´ ´-´0´0´=´@´@´G³Â³Â�Ó´B/// Lerps a [FlTitlesData] based on [t] value, check [Tween.lerp].¶¶ ¶¶&¶&¶2¶B¶B¶N¶]¶]¶i¶z¶z¶†µ™µ™‚¶\/// Copies current [FlTitlesData] to a new [FlTitlesData], /// and replaces provided values.¯®¯®ˆÉ¯î9/// Holds data for showing titles on each side of charts.¹Á¹Ç¹È¹È¹Í¹Ð¹Ð¹Õ¸Û¸Û€ý€Õ/// [x] determines cartesian (axis based) horizontally position /// 0 means most left point of the chart /// /// [y] determines cartesian (axis based) vertically position /// 0 means most bottom point of the chart¹é¹Ü¹é¹û¹î¹û »‰»�»¦»�»–»—»œ»¢»£»~»1v»~6/// Used for splitting lines, or maybe other concepts.»ã»é»î»ê»í»Ü»¬C»Ü/// Sets zero for x and y¿B¿C¿*¿*P¿V/// Override hashCodeºlºl ºtº{º{ ºƒºº€Íº]P/// Copies current [FlSpot] to a new [FlSpot], /// and replaces provided values.»»ºÒºÒ[»,///Prints x and y coordinates of FlSpot list»ô»ôJ¼!%/// Determines if [x] or [y] is null.¼B¼BK¼t*/// Determines if [x] and [y] is not null.¼ã¼ã¼ê¼í¼í¼ô¼÷¼÷¼þ¼‘¼‘�=¼ÞÀG+ÀGAÀGNÀG“ÀG™ÀGºÀGþÀG¶ÀG¥ÀG¹ÀGƿʿʈ6…§/// Responsible for rendering grid lines behind the content of charts, /// [show] determines showing or hiding all grids, /// /// [AxisChartPainter] draws horizontal lines from left to right of the chart, /// with increasing y value, it increases by [horizontalInterval]. /// Representation of each line determines by [getDrawingHorizontalLine] callback, /// it gives you a double value (in the y axis), and you should return a [FlLine] that represents /// a horizontal line. /// You are allowed to show or hide any horizontal line, using [checkToShowHorizontalLine] callback, /// it gives you a double value (in the y axis), and you should return a boolean that determines /// showing or hiding specified line. /// or you can hide all horizontal lines by setting [drawHorizontalLine] false. /// /// [AxisChartPainter] draws vertical lines from bottom to top of the chart, /// with increasing x value, it increases by [verticalInterval]. /// Representation of each line determines by [getDrawingVerticalLine] callback, /// it gives you a double value (in the x axis), and you should return a [FlLine] that represents /// a horizontal line. /// You are allowed to show or hide any vertical line, using [checkToShowVerticalLine] callback, /// it gives you a double value (in the x axis), and you should return a boolean that determines /// showing or hiding specified line. /// or you can hide all vertical lines by setting [drawVerticalLine] false. ÀHUÀHUÀHUC/// Determines showing or hiding all horizontal and vertical lines.ÀH¢ÀH^VÀH¢6/// Determines showing or hiding all horizontal lines.ÀIÀH¹xÀIU/// Determines interval between horizontal lines, left it null to be auto calculated.ÀIžÀI6€€ÀIžL/// Gives you a y value, and gets a [FlLine] that represents specified line.ÀJ1ÀI»€�ÀJ1]/// Gives you a y value, and gets a boolean that determines showing or hiding specified line.ÀJ‘ÀJORÀJ‘4/// Determines showing or hiding all vertical lines.ÀK ÀJ¦tÀK S/// Determines interval between vertical lines, left it null to be auto calculated.ÀK‡ÀK~ÀK‡L/// Gives you a x value, and gets a [FlLine] that represents specified line.ÀLÀK¢€�ÀL]/// Gives you a x value, and gets a boolean that determines showing or hiding specified line.ÀSâÀSãÀS­ÀS­�fÀT2/// Used for equality check, see [EquatableMixin].ÀLŽÀLŽ ÀL™ÀLœÀLœ ÀL§ÀLªÀLªÀL±ÀL4ÀL4‚µÀL‰@/// Lerps a [FlGridData] based on [t] value, check [Tween.lerp]. ÀOdÀOd ÀOjÀOtÀOtÀOzÀO’ÀO’ÀOšÀO²ÀO²,ÀOÆÀOäÀOä*ÀOõÀPÀPÀPÀP0ÀP0ÀP8ÀPNÀPN*ÀPbÀP~ÀP~(ÀP�ÀNíÀN턼ÀOUX/// Copies current [FlGridData] to a new [FlGridData], /// and replaces provided values.¿~¿~•—¿§"/// Responsible to hold grid data,ÀYÀY ÀYÀY ÀYÀY%ÀY% ÀY*ÀY8ÀY8ÀY=ÀYRÀYRÀYWÀYKÀYoÀYiÀYwÀYqÀY†ÀYÀÀY«ÀYºÀY‡ÀY©ÀY–ÀYŽÀYˆÀY‘ÀY¢ÀY™ÀY¥ÀY­ÀY³ÀY´ÀY¼ÀW«ÀW«‚�H/// Renders a line, color it by [color], /// thickness is defined by [strokeWidth], /// and if you want to have dashed line, you should fill [dashArray], /// it is a circular array of dash offsets and lengths. /// For example, the array `[5, 10]` would result in dashes 5 pixels long /// followed by blank spaces 10 pixels long.ÀYôÀYÆ3ÀYô/// Defines color of the line.ÀZ6ÀYþ@ÀZ6%/// Defines the gradient of the line.ÀZuÀZC=ÀZu"/// Defines thickness of the line.À[xÀZ…€üÀ[x€×/// Defines dash effect of the line. /// /// it is a circular array of dash offsets and lengths. /// For example, the array `[5, 10]` would result in dashes 5 pixels long /// followed by blank spaces 10 pixels long.À^ËÀ^ÌÀ^–À^–€¯À^é2/// Used for equality check, see [EquatableMixin].À[ØÀ[ØÀ[ßÀ[âÀ[âÀ[éÀ[ìÀ[ìÀ[óÀ[†À[†�oÀ[ÓEÀt�3/// Determines ending point in horizontal (x) axis.ÀuœÀtˆ�Àuœ€þ/// If provided, this [VerticalRangeAnnotation] draws with this [color] /// Otherwise we use [gradient] to draw the background. /// It draws with [gradient] if you provide both [color] and [gradient]. /// If none is provided, it draws with a white color.Àv½Àu¦�Àv½€þ/// If provided, this [VerticalRangeAnnotation] draws with this [gradient] /// Otherwise we use [color] to draw the background. /// It draws with [gradient] if you provide both [color] and [gradient]. /// If none is provided, it draws with a white color.ÀzLÀzMÀzÀz€ŸÀzj2/// Used for equality check, see [EquatableMixin].ÀwCÀwCÀw[ÀwbÀwbÀwzÀw�Àw�ÀwˆÀvÊÀvÊ�«Àw9M/// Lerps a [VerticalRangeAnnotation] based on [t] value, check [Tween.lerp].ÀyÀy ÀyÀy'Ày' Ày/Ày7Ày7 Ày>ÀyIÀyIÀySÀxyÀxy�šÀyr/// Copies current [VerticalRangeAnnotation] to a new [VerticalRangeAnnotation], /// and replaces provided values.ÀrÀrˆ£ÀrT8/// Defines an annotation region in x (horizontal) axis.À}¦À}´ À}»À}»À}ÉÀ}ÐÀ}ÐÀ}åÀ}ðÀ}ð À}öÀ~À~À~À~À~À~À~,À~,À~2À~AÀ~A À~FÀ~QÀ~QÀ~VÀ~hÀ~hÀ~m À~yÀ~‚À~ƒÀ~–À~�À~žÀ~˜À~¡À~´À~µÀ{ÖÀ{Ö‚á�»/// [LineChart] draws horizontal lines from left to right side of the chart /// in the provided [y] value, and color it using [color]. /// You can define the thickness using [strokeWidth] /// /// It draws a [label] over it. /// /// You can have a dashed line by filling [dashArray] with dash size and space respectively. /// /// It draws an image in left side of the chart, use [sizedPicture] for vectors, /// or [image] for any kind of image.À À~»OÀ >/// Draws from left to right of the chart using the [y] value.ÀfÀ\ÀfG/// Use it for any kind of image, to draw it in left side of the chart.ÀÊÀpfÀÊC/// Use it for vector images, to draw it in left side of the chart.À€ÀÛGÀ€%/// Draws a text label over the line.À€ÃÀ€'€¥À€Ã€‡/// if not drawing dash line, then this is the Strokecap for the line. /// i.e. if the two ends of the line is round or butt or square.ÀƒhÀƒiÀƒ3Àƒ3€ïÀƒ†2/// Used for equality check, see [EquatableMixin].À�3À�3À�BÀ�EÀ�EÀ�TÀ�WÀ�WÀ�^À€ÑÀ€Ñ‚^À�.D/// Lerps a [HorizontalLine] based on [t] value, check [Tween.lerp].ÀzºÀzº‰jÀ{ €ß/// Holds data for drawing extra horizontal lines. /// /// [LineChart] draws some [HorizontalLine] (set by [LineChartData.extraLinesData]), /// in below or above of everything, it draws from left to right side of the chart.À‡ À‡ À‡À‡À‡-À‡4À‡4À‡GÀ‡RÀ‡R À‡XÀ‡cÀ‡cÀ‡iÀ‡wÀ‡wÀ‡}À‡ŽÀ‡ŽÀ‡”À‡£À‡£ À‡¨À‡³À‡³À‡¸À‡ÊÀ‡ÊÀ‡Ï À‡ÛÀ‡äÀ‡åÀ‡øÀ‡òÀˆÀ‡úÀˆÀˆÀˆÀ…<À…<‚Û�»/// [LineChart] draws vertical lines from bottom to top side of the chart /// in the provided [x] value, and color it using [color]. /// You can define the thickness using [strokeWidth] /// /// It draws a [label] over it. /// /// You can have a dashed line by filling [dashArray] with dash size and space respectively. /// /// It draws an image in bottom side of the chart, use [sizedPicture] for vectors, /// or [image] for any kind of image.ÀˆiÀˆOÀˆi>/// Draws from bottom to top of the chart using the [x] value.ÀˆÈÀˆo^ÀˆÈI/// Use it for any kind of image, to draw it in bottom side of the chart.À‰.ÀˆÒhÀ‰.E/// Use it for vector images, to draw it in bottom side of the chart.À‰À‰?EÀ‰%/// Draws a text label over the line.ÀŠ%À‰‰€¥ÀŠ%€‡/// if not drawing dash line, then this is the Strokecap for the line. /// i.e. if the two ends of the line is round or butt or square.À�{À�|À�FÀ�F€ïÀ�™2/// Used for equality check, see [EquatableMixin].ÀŠ‘ÀŠ‘ÀŠžÀŠ¡ÀŠ¡ÀŠ®ÀбÀбÀЏÀŠ3ÀŠ3‚RÀŠŒB/// Lerps a [VerticalLine] based on [t] value, check [Tween.lerp].À�À� À�À� À� À�3À�>À�> À�EÀ�PÀ�PÀ�XÀ�iÀ�iÀ�tÀ�ƒÀ�ƒ À�ŠÀ�•À�•À�£À�µÀ�µÀ�ÀÀŒ‰ÀŒ‰‚¹ÀŒö[/// Copies current [VerticalLine] to a new [VerticalLine] /// and replaces provided values.À„&À„&ŒÀ…€Û/// Holds data for drawing extra vertical lines. /// /// [LineChart] draws some [VerticalLine] (set by [LineChartData.extraLinesData]), /// in below or above of everything, it draws from bottom to top side of the chart.À’\À’oÀ’vÀ’v'À’|À’£À’£ À’©À’´À’´#À’ºÀ’ÝÀ’ÝÀ’ãÀ’õÀ’õ+À’ûÀ“&À“&AÀ“+À’†À’ŒÀ’–À’—À’šÀ’œÀ’›À’ÆÀ’ÏÀ’ÐÀ’êÀ“À“À“À“;À“NÀ“OÀ�©À�©‚Å�¤/// Draws a title on the [HorizontalLine], align it with [alignment] over the line, /// applies [padding] for spaces, and applies [style for changing color, /// size, ... of the text. /// Drawing text will retrieve through [labelResolver], /// you can override it with your custom data. /// [show] determines showing label or not. /// [direction] determines if the direction of the text should be horizontal or vertical.À“¼À“rWÀ“¼!/// Resolves a label for showing.À–ÔÀ–ÕÀ–ŸÀ–Ÿ€ÑÀ–ò2/// Used for equality check, see [EquatableMixin].À”0À”0À”?À“ÎÀ“΀šÀ”8/// Returns the [HorizontalLine.y] as the drawing label.À”ÝÀ”ÝÀ”ñÀ”øÀ”øÀ• À•À•À•À”lÀ”l‚/À”ÓI/// Lerps a [HorizontalLineLabel] based on [t] value, check [Tween.lerp].À�9À�9‡9À�i)/// Draws a title on the [HorizontalLine]À™‘À™¢À™©À™©'À™¯À™ÖÀ™ÖvÀ™ÜÀšRÀšR'ÀšXÀšÀšÀš…Àš—Àš—+Àš�ÀšÈÀšÈ?ÀšÍ"À™¹À™¿À™ÉÀ™ÊÀ™ÍÀ™ÏÀ™ÎÀ™äÀ™êÀ™óÀšKÀšÀ™ûÀšÀšÀš Àš ÀšÀš"Àš,Àš-ÀšAÀš9ÀšCÀšdÀšmÀšnÀšŒÀš©Àš·Àš¸ÀšÝÀšîÀšïÀ—àÀ—àƒ.�¢/// Draws a title on the [VerticalLine], align it with [alignment] over the line, /// applies [padding] for spaces, and applies [style for changing color, /// size, ... of the text. /// Drawing text will retrieve through [labelResolver], /// you can override it with your custom data. /// [show] determines showing label or not. /// [direction] determines if the direction of the text should be horizontal or vertical.À›ZÀ›UÀ›Z!/// Resolves a label for showing.ÀždÀžeÀž/Àž/€ÑÀž‚2/// Used for equality check, see [EquatableMixin].À›ÌÀ›ÌÀ›ÙÀ›lÀ›l€–À›³6/// Returns the [VerticalLine.x] as the drawing label.ÀœsÀœsÀœ…ÀœŒÀœŒÀœžÀœ¥Àœ¥Àœ¬ÀœÀœ‚%ÀœiG/// Lerps a [VerticalLineLabel] based on [t] value, check [Tween.lerp].À—tÀ—t‡ŽÀ—¢'/// Draws a title on the [VerticalLine]À¢ À¢À¢À¢ À¢À¢&À¢& À¢+À¢2À¢2 À¢7À ¦À ¦�™�R/// [picture] is the showing image, /// it can retrieve from a svg icon, /// for example: /// ```dart /// const String rawSvg = 'your svg string'; /// final DrawableRoot svgRoot = await svg.fromSvgString(rawSvg, rawSvg); /// final picture = svgRoot.toPicture() /// ``` /// [width] and [height] determines the size of our picture.À¢mÀ¢C1À¢m/// Is the showing image.À¢¡À¢y-À¢¡/// width of our [picture].À¢ÔÀ¢«/À¢Ô/// height of our [picture].À£À£À¢ßÀ¢ß€–À£22/// Used for equality check, see [EquatableMixin].ÀŸÀŸ„sÀ ��v/// Holds data for showing a vector image inside the chart. /// /// for example: /// ```dart /// Future loadSvg() async { /// const String rawSvg = 'your svg string'; /// final DrawableRoot svgRoot = await svg.fromSvgString(rawSvg, rawSvg); /// final sizedPicture = SizedPicture(svgRoot.toPicture(), 14, 14); /// return sizedPicture; /// } /// ```À¥cÀ¥qÀ¥xÀ¥xÀ¥}À¥�À¥�À¥¢À¥ÀÀ¥ÀÀ¥ÅÀ¥�À¥•À¥–À¥²À¥¸À¥¹À¥×À£îÀ£î�ô�`/// [LineChart] draws some straight horizontal or vertical lines, /// you should set [LineChartData.extraLinesData]. /// Draws horizontal lines using [horizontalLines], /// and vertical lines using [verticalLines]. /// /// If [extraLinesOnTop] sets true, it draws the line above the main bar lines, otherwise /// it draws them below the main bar lines.À¦À¥æ*À¦À¦-À¦&À¦-À¦IÀ¦>À¦IÀ¨9À¨:À¨À¨€¯À¨W2/// Used for equality check, see [EquatableMixin].À¦¿À¦¿À¦ÎÀ¦ÑÀ¦ÑÀ¦àÀ¦ãÀ¦ãÀ¦êÀ¦]À¦]�£À¦ºD/// Lerps a [ExtraLinesData] based on [t] value, check [Tween.lerp].À£yÀ£y…<À£ÇG/// Draws some straight horizontal or vertical lines in the [LineChart]À©?À©KÀ©9À©9Àª7Àª7\Àª‰E/// Used to show default UIs, for example [defaultScatterTooltipItem]À©šÀ©š À©¡À©©À©© À©°À©¶À©¶À©½À©RÀ©R{À©•;/// This method should be overridden to draw the dot shape.Àª&Àª& Àª-À©ÑÀ©ÑbÀªE/// This method should be overridden to return the size of the shape.Àª©Àª©Àª¶Àª¹Àª¹ÀªÆÀªÉÀªÉÀªÐÀª—Àª—<Àª¤À«¤À«¤ À««À«µÀ«µÀ«¼À«ÉÀ«É À«ÐÀ«ÜÀ«ÜÀ«ãÀª×Àª×‚$À«—€´/// Used to implement touch behaviour of this dot, for example, /// it behaves like a square of [getSize] /// Check [FlDotCirclePainter.hitTest] for an example of an implementationÀ¨·À¨·„FÀ©M/// This class contains the interface that all DotPainters should conform to.À®®À®ÀÀ®ÇÀ®ÇÀ®ÌÀ®æÀ®æÀ®îÀ®úÀ®ú7À®ÿÀ¯7À¯7À¯<À®ÔÀ®ÚÀ®ÛÀ¯ À¯À¯À¯À¯!À¯0À¯"À¯&À¯+À¯/À¯JÀ¯]À¯VÀ¯fÀ¯_À¯iÀ­ˆÀ­ˆ�å�/// The color of the circle is determined determined by [color], /// [radius] determines the radius of the circle. /// You can have a stroke line around the circle, /// by setting the thickness with [strokeWidth], /// and you can change the color of of the stroke with [strokeColor].À¯¨À¯q<À¯¨(/// The fill color to use for the circleÀ¯éÀ¯²=À¯é'/// Customizes the radius of the circleÀ°-À¯ôDÀ°-*/// The stroke color to use for the circleÀ°wÀ°=EÀ°w*/// The stroke width to use for the circleÀ³WÀ³XÀ³WÀ³W)À³mÀ¶ÏÀ¶ÐÀ¶šÀ¶š€¯À¶í2/// Used for equality check, see [EquatableMixin].À°ÙÀ°Ù À°àÀ°èÀ°è À°ïÀ°õÀ°õÀ°üÀ°ÃÀ°ÄÀ°‡À°‡‚2À°Ô9/// Implementation of the parent class to draw the circleÀ³À³ À³$À³À³À²½À²½€–À³D/// Implementation of the parent class to get the size of the circleÀ³¢À³¢À³µÀ³¼À³¼À³ÏÀ³ÖÀ³ÖÀ³ÝÀ³„À³„�oÀ³—ÀµÀµÀµ"Àµ%Àµ%Àµ2Àµ5Àµ5Àµ<À´÷À´øÀ´÷À´÷€¾ÀµÀµ×Àµ× ÀµÞÀµèÀµèÀµïÀµüÀµü À¶À¶À¶À¶Àµ¹ÀµºÀµ¹Àµ¹€ÝÀµÊÀ¬ÿÀ¬ÿŠLÀ­\V/// This class is an implementation of a [FlDotPainter] that draws /// a circled shapeÀ¸øÀ¹ À¹À¹À¹À¹0À¹0À¹5À¹EÀ¹E7À¹JÀ¹‚À¹‚À¹‡À¹À¹$À¹%À¹<À¹XÀ¹^À¹cÀ¹dÀ¹lÀ¹{À¹mÀ¹qÀ¹vÀ¹zÀ¹•À·ÖÀ·Ö�É�/// The color of the square is determined determined by [color], /// [size] determines the size of the square. /// You can have a stroke line around the square, /// by setting the thickness with [strokeWidth], /// and you can change the color of of the stroke with [strokeColor].À¹ÚÀ¹£<À¹Ú(/// The fill color to use for the squareÀºÀ¹ä9Àº%/// Customizes the size of the squareÀº[Àº"DÀº[*/// The stroke color to use for the squareÀº¥ÀºkEÀº¥*/// The stroke width to use for the squareÀ½íÀ½îÀ½íÀ½í)À¾À¾OÀ¾PÀ¾À¾€­À¾m2/// Used for equality check, see [EquatableMixin].À»À» À»À»À» À»À»#À»#À»*ÀºñÀºòÀºµÀºµ‚ À»9/// Implementation of the parent class to draw the squareÀ½¹À½¹ À½ÀÀ½ À½¡À½YÀ½Y€�À½±D/// Implementation of the parent class to get the size of the squareÀ¾éÀ¾éÀ¾üÀ¿À¿À¿À¿À¿À¿$À¾ËÀ¾Ë�jÀ¾ÞÀÀWÀÀWÀÀdÀÀgÀÀgÀÀtÀÀwÀÀwÀÀ~ÀÀ9ÀÀ:ÀÀ9ÀÀ9€¾ÀÀRÀ·MÀ·M‰¬À·ªV/// This class is an implementation of a [FlDotPainter] that draws /// a squared shapeÀÂ%ÀÂ6ÀÂ=ÀÂ=ÀÂBÀÂ\ÀÂ\ÀÂaÀÂqÀÂqÀÂvÀÂJÀÂPÀÂQÀÂhÀÂ~ÀÁŠÀÁŠ€þ€–/// The [color] and [width] properties determines the color and thickness of the cross shape, /// [size] determines the width and height of the shape.ÀÂÃÀÂŒ<ÀÂÃ(/// The fill color to use for the X markÀà ÀÂÍDÀà 0/// Determines size (width and height) of shape.ÀÃIÀÃ8ÀÃI#/// Determines thickness of X mark.ÀÆÀÆÀÆÀÆ)ÀÆ4ÀÈUÀÈVÀÈ ÀÈ €’ÀÈs2/// Used for equality check, see [EquatableMixin].ÀäÀä ÀëÀóÀó ÀúÀÃÀÀÃÀÀÃÇÀÃŽÀÃ�ÀÃSÀÃS‚BÀß8/// Implementation of the parent class to draw the crossÀÅùÀÅù ÀÆÀÅàÀÅáÀÅ™ÀÅ™€�ÀÅñD/// Implementation of the parent class to get the size of the circleÀÆhÀÆhÀÆzÀÆ�ÀÆ�ÀÆ“ÀÆšÀÆšÀÆ¡ÀÆKÀÆK�ÀÆ]ÀÇ~ÀÇ~ÀÇ‹ÀÇŽÀÇŽÀÇ›ÀÇžÀÇžÀÇ¥ÀÇ`ÀÇaÀÇ`ÀÇ`€¼ÀÇyÀÀûÀÀû‡¹ÀÁ_]/// This class is an implementation of a [FlDotPainter] that draws /// a cross (X mark) shapeŠ@Š@Š@ŠFŠFŠFŠKŠKŠKŠRŠRŠRŠ Š MŠ5"/// Represents a side of the chart�Q�Q �X�_�_�i޹޹�(�A€€/// The default [SideTitles.getTitlesWidget] function. /// /// formats the axis number to a shorter string using [formatNumber].ÀU§ÀU§ ÀU®ÀU€ÀU€=ÀUš/// Shows all lines.ÀVóÀVó ÀVúÀV´ÀV´€³ÀVã'/// Returns a grey line for all values.Ž#Ž#€”ŽpD/// It gives you the axis value and gets a String value based on it.ÀUÀUgÀUP0/// Determines showing or hiding specified line.ÀU¿ÀU¿€óÀV€·/// Determines the appearance of specified line. /// /// It gives you an axis [value] (horizontal or vertical), /// you should pass a [FlLine] that represents style of specified line.†J*+V€Ì€û�.�/�d�­�ä‚!‚S‚‡‚Ђâ‚üƒƒBƒZƒrƒ‰ƒ¡ƒ¹ƒÐƒê„„„:„^„‘„Ú„þ…"…Z…›…Þ…û††G†H†]†r†Œ†¡†¶†Ð†Ñ‡‡3‡4‡n‡�‡Ž‡´‡Þ‡ßˆˆ1ˆ2ˆqˆ˜ˆ™ˆÎˆÚˆù‰ ‰‰9‰G‰U‰h‰v‰„‰—‰©‰Â‰Ö‰éŠŠ Š Š Š0Š[Š\ГХгŠÊŠá‹‹#‹F‹d‹†‹¢‹¨‹©‹¾‹Ò‹Ó‹è‹ü‹ýŒ Œ?Œ@ŒnŒ—Œ´ŒµŒë� � �4�S�T�¡�À�ÁŽŽ Ž"Ž#Žhޏ޹ŽðŽô�:�q�‹�¨�¹�Ô�Û�à�â�ã��B�y�´�º‘‘S‘€‘±‘ý’3’9’‚’³’¹“ “U“j“‡“³“Ï“â“ÿ””b”c”—”°”±••2•b•c• •Ñ•î•ï–@–‹–¥–¦–î——3—4—|—§—Á—˜˜S˜u˜¡˜ç™ ™D™h™q™r™«™Ï™ç™ýš*šDšZšqšˆš�š¢šÕ››P›}›³›é›ò›óœ(œ4œSœgœ€œ–œ¨œ½œÒœÛœÝœÞ��5�9�n�¦�ßžžGžmžsžªžäŸŸ%ŸVŸ›Ÿ¡ŸÜ  = X x š ¾ Ä Å ÷¡*¡[¡§¡¿¡Ü¡÷¢¢¢¢Z¢¢¢Ò¢è££"£*£H£b£Ž£»£ä£í£î¤$¤:¤;¤‡¤¨¤©¤Ì¤ë¤ì¥¥O¥l¥m¥y¥˜¥©¥Ã¥Û¥ñ¥ú¥ü¥ý¦D¦k¦ª¦Ä¦Ê§§§b§w§�§¬§Ö§û¨¨¨*¨G¨H¨�¨Þ¨þ¨ÿ©6©U©V©®©´ªª0ª1ªtª¾ª¿«««\«]« «î¬¬^¬¢¬Ö¬ß¬à­­=­U­q­‹­§­Æ­Î­à®®X®‹®Ù®â®ã¯¯$¯C¯[¯q¯…¯¢¯«¯­¯®¯è°°G°Ž°Ð°ç°ý±%±C±]±w±€±‡±®±Ì±æ²² ²²9²W²q²‹²”²›²Å²ã²ý³³ ³'³-³.³A³`³~³ž³¿³À´´M´a´w´»µµLµ�µ–µ—µÔµø¶¶"¶>¶Y¶v¶”¶œ¶°¶Ñ··4·j·£·¬·­·â·î¸ ¸¸/¸B¸W¸m¸v¸x¸y¸¿¸Ê¸Ù¹¹F¹L¹Œ¹¹¹Ù¹Ú¹ì¹þ¹ÿº0ºTºhºwº†ºŽºœº±ºÆºÏºÐºÿ» ».»/»h»©»ª»Æ»ñ»ò¼¼?¼@¼m¼Ž¼�¼Î½½#½3½9½:½Z½j½p½q½„½¤½Ä½Ë½Ï½Ð¾ ¾¾<¾i¾…¾™¾Ÿ¾ ¾à¾ó¾ù¾ú¿#¿'¿(¿@¿L¿{¿}¿~¿¡¿ÈÀ@À@FÀ@LÀ@�À@âÀA7ÀA›ÀA´ÀBÀB~ÀB¦ÀBøÀBþÀCMÀC�ÀCãÀDGÀD`ÀDÃÀE&ÀENÀEœÀE±ÀEÇÀEëÀFÀF=ÀFpÀF’ÀF­ÀFàÀGÀG!ÀGDÀG€ÀG‹ÀG›ÀG¼ÀGöÀHÀHÀHHÀH[ÀH\ÀH•ÀH¶ÀH·ÀIÀI3ÀI4ÀIƒÀI¸ÀI¹ÀJÀJLÀJMÀJ„ÀJ£ÀJ¤ÀJúÀKÀKÀKlÀKŸÀK ÀLÀL1ÀL2ÀLuÀLÃÀLÙÀM ÀM'ÀMnÀM¬ÀMìÀNÀNkÀN¥ÀNáÀNêÀNëÀO$ÀOHÀO`ÀOpÀOŽÀO®ÀOàÀPÀP,ÀPJÀPzÀP¨ÀP°ÀPÂÀPãÀQ.ÀQyÀQ›ÀQâÀRÀRNÀR“ÀRØÀRøÀS;ÀS\ÀS¡ÀSªÀS«ÀSàÀSìÀT ÀTÀT5ÀTQÀTsÀT–ÀT°ÀTÊÀTêÀU ÀUÀUÀUÀUHÀUÀU€ÀU•ÀU¾ÀU¿ÀUðÀUôÀV/ÀVwÀV³ÀV´ÀVÜÀWÀW0ÀWHÀWaÀWhÀWiÀW†ÀW©ÀWÔÀXÀXIÀXƒÀXÏÀXþÀYÀY!ÀY4ÀYNÀYbÀYzÀYÃÀYÄÀYåÀYûÀYüÀZ$ÀZ@ÀZAÀZfÀZ‚ÀZƒÀZªÀZ°ÀZêÀ[6À[eÀ[ƒÀ[„À[ÃÀ\À\1À\mÀ\°À\íÀ\öÀ\÷À](À]LÀ]`À]rÀ]ŠÀ]£À]½À]ÅÀ]ÓÀ]÷À^$À^ZÀ^ŠÀ^“À^”À^ÉÀ^ÕÀ^ôÀ_À_À_*À_=À_FÀ_HÀ_IÀ_ŒÀ_½À_üÀ`.À`4À`kÀ`žÀ`­À`¼À`ÍÀ`ÒÀ`ÓÀa Àa<ÀaQÀaRÀaˆÀa»ÀaÒÀaÓÀbÀbÀb3ÀbAÀbQÀbZÀb\Àb]Àb¥ÀbÒÀcÀctÀc�Àc¿ÀcíÀcóÀcôÀd8ÀdxÀdyÀdÂÀdâÀdúÀeÀe Àe'Àe?Àe†Àe®ÀeÖÀeãÀeïÀf2ÀfXÀf~Àf‹Àf—Àf Àf¡ÀfæÀg Àg(ÀgiÀg¦Àg®ÀgÆÀgêÀh5ÀhWÀhžÀh§Àh¨ÀhÝÀhéÀiÀi,ÀiNÀiWÀiYÀiZÀi‘ÀiÇÀj ÀjhÀj†ÀjœÀj²ÀjÄÀj×ÀjïÀk8Àk9ÀkoÀk‚ÀkƒÀk·ÀkÊÀkËÀlÀlQÀlœÀlÔÀlêÀlëÀm:ÀmqÀm¼ÀmôÀnÀnÀncÀnŒÀn­ÀnÎÀnÜÀnãÀoÀo,ÀoTÀo„ÀoÀÀoÉÀoÊÀp!ÀpEÀplÀp|ÀpŒÀpžÀp¶Àp¾ÀpßÀpúÀqÀq9ÀqfÀqoÀqpÀq¥Àq±ÀqÐÀqÜÀqèÀq÷Àr ÀrÀrÀrÀrNÀr‚ÀrÙÀs!Às=ÀsSÀsiÀs{ÀsŽÀs¦ÀsïÀsðÀt(Àt;Àt<ÀtrÀt…Àt†ÀtÐÀu ÀuUÀu�Àu£Àu¤ÀuñÀv(ÀvsÀv«ÀvÇÀvÈÀwÀw?Àw^Àw}Àw‹Àw’Àw±ÀwÙÀxÀx1ÀxmÀxvÀxwÀxÊÀxîÀyÀy#Ày3ÀyEÀy]ÀyeÀy„ÀyŸÀyºÀyÞÀz ÀzÀzÀzJÀzVÀzuÀz�Àz�ÀzœÀz®Àz·Àz¹ÀzºÀzíÀzñÀ{FÀ{šÀ{ÔÀ|"À|_À|–À|œÀ|¾À|ÄÀ}#À})À}|À}¤À}·À}ÌÀ}ìÀ}ýÀ~À~(À~=À~MÀ~dÀ~‰À~¸À~¹À~úÀ À ÀWÀmÀnÀ´ÀØÀÙÀ€À€$À€%À€nÀ€±À€ÎÀ€ÏÀ�À�dÀ�zÀ�ŸÀ�ÝÀ‚ À‚IÀ‚ŒÀ‚ÉÀ‚áÀƒÀƒ'Àƒ0Àƒ1ÀƒfÀƒrÀƒ‘ÀƒœÀƒ«ÀƒºÀƒÏÀƒâÀƒñÀ„À„À„#À„%À„&À„WÀ„[À„®À…À…:À…†À…ÃÀ…úÀ†À†"À†(À†‡À†�À†âÀ‡ À‡À‡0À‡NÀ‡_À‡sÀ‡ŠÀ‡ŸÀ‡¯À‡ÆÀ‡ëÀˆÀˆÀˆZÀˆlÀˆmÀˆ¹ÀˆÏÀˆÐÀ‰À‰<À‰=À‰eÀ‰†À‰‡À‰ÐÀŠÀŠ0ÀŠ1ÀŠvÀоÀŠÒÀŠ÷À‹3À‹cÀ‹ŸÀ‹âÀŒÀŒ7ÀŒ]ÀŒ}ÀŒ†ÀŒ‡ÀŒÃÀŒçÀ� À�À�:À�LÀ�eÀ�À�‘À�±À�ËÀ�ÓÀ�çÀ�ÿÀŽ#ÀŽGÀŽ}ÀŽ­ÀŽÑÀ� À�:À�CÀ�DÀ�yÀ�…À�¤À�¯À�¾À�ÍÀ�âÀ�õÀ�À�À�-À�6À�8À�9À�cÀ�§À�ýÀ‘HÀ‘eÀ‘ŸÀ‘ÐÀ‘þÀ’ZÀ’rÀ’ŸÀ’°À’ÙÀ’ñÀ“"À“iÀ“oÀ“pÀ“”À“ËÀ“ÌÀ”À”HÀ”iÀ”jÀ”¶À”ÙÀ”ôÀ•À•À•$À•?À•aÀ•„À•§À•´À•ÀÀ•ôÀ–5À–]À–sÀ–“À–œÀ–�À–ÒÀ–ÞÀ–ýÀ—À—"À—3À—BÀ—UÀ—hÀ—qÀ—sÀ—tÀ—œÀ—ÞÀ˜2À˜}À˜šÀ˜ÔÀ™À™3À™�À™¥À™ÒÀ™õÀšÀš3ÀšGÀšNÀš{Àš“ÀšÄÀ› À›À›À›4À›iÀ›jÀ›£À›âÀœÀœÀœNÀœoÀœˆÀœ¡Àœ¯Àœ¶ÀœÏÀœñÀ�À�7À�DÀ�PÀ�„À�ÅÀ�íÀžÀž#Àž,Àž-ÀžbÀžnÀž�Àž¤Àž²ÀžÃÀžÒÀžåÀžøÀŸÀŸÀŸÀŸ@ÀŸDÀŸUÀŸaÀŸŒÀŸ¼À  À PÀ lÀ sÀ {À ¤À ÊÀ ñÀ¡À¡À¡DÀ¡“À¡ÀÀ¡ÊÀ¢ À¢@À¢AÀ¢]À¢vÀ¢wÀ¢•À¢¨À¢©À¢ÈÀ¢ÜÀ¢ÝÀ£À£À£=À£NÀ£]À£mÀ£vÀ£xÀ£yÀ£ÁÀ£ìÀ¤0À¤eÀ¤›À¤ËÀ¤ÑÀ¥-À¥[À¥tÀ¥™À¥¼À¥ÝÀ¥ãÀ¥äÀ¦À¦<À¦ZÀ¦[À¦¢À¦ðÀ§À§2À§KÀ§™À§°À§øÀ¨À¨À¨7À¨CÀ¨bÀ¨{À¨’À¨«À¨´À¨¶À¨·À©À©7À©OÀ©PÀ©ŽÀ©ÎÀ©ÏÀªÀª4Àª5Àª}Àª”Àª•ÀªÔÀªÕÀ«À«CÀ«�À« À«±À«ÅÀ«ØÀ«óÀ«ùÀ¬À¬?À¬UÀ¬nÀ¬‰À¬�À¬ÌÀ¬øÀ¬üÀ¬þÀ¬ÿÀ­BÀ­VÀ­†À­ÉÀ­ýÀ®1À®dÀ®¬À®ÃÀ®âÀ®öÀ¯3À¯OÀ¯nÀ¯oÀ¯šÀ¯¯À¯°À¯ÚÀ¯ñÀ¯òÀ°À°:À°;À°hÀ°„À°…À°ÁÀ°ÍÀ±À±DÀ±]À±uÀ±™À±©À±ÉÀ±ïÀ²À²"À²(À²?À²UÀ²cÀ²qÀ²‰À²¯À²¶À²ºÀ²»À³À³À³TÀ³UÀ³aÀ³�À³‚À³žÀ³¸À³ÒÀ³àÀ³çÀ´À´2À´eÀ´¨À´ëÀ´ôÀ´õÀµÀµAÀµ�Àµ‘Àµ—Àµ²Àµ¶Àµ·ÀµÃÀµÓÀµäÀµøÀ¶ À¶&À¶,À¶dÀ¶“À¶—À¶˜À¶ÍÀ¶ÙÀ¶øÀ·À·À·,À·AÀ·JÀ·LÀ·MÀ·�À·¤À·ÔÀ¸À¸GÀ¸{À¸®À¸öÀ¹ À¹,À¹AÀ¹~À¹šÀ¹ À¹¡À¹ÌÀ¹áÀ¹âÀº ÀºÀº ÀºMÀºhÀºiÀº–Àº²Àº³ÀºïÀºûÀ»<À»rÀ»‰À»¢À»ÄÀ»öÀ¼À¼À¼1À¼WÀ¼�À¼ŠÀ¼�À¼¥À¼¼À¼ÜÀ¼öÀ¼ÿÀ½ À½%À½KÀ½RÀ½VÀ½WÀ½žÀ½ªÀ½êÀ½ëÀ½÷À¾À¾À¾MÀ¾YÀ¾xÀ¾‡À¾•À¾ªÀ¾¿À¾ÈÀ¾ÉÀ¾åÀ¾ÿÀ¿À¿'À¿.À¿HÀ¿yÀ¿§À¿êÀÀ-ÀÀ6ÀÀ7ÀÀCÀÀƒÀÀÃÀÀÓÀÀÙÀÀôÀÀøÀÀúÀÀûÀÁ>ÀÁYÀÁˆÀÁèÀÂ#ÀÂ9ÀÂXÀÂmÀƒÀ‰ÀŠÀµÀÂÊÀÂËÀÂþÀÃÀÃÀÃ:ÀÃPÀÃQÀÃŒÀØÀÃÙÀÃñÀÄ&ÀÄSÀÄvÀÄ«ÀÄ×ÀÄüÀÄýÀÅÀÅ<ÀÅXÀÅoÀÅpÀÅ’ÀÅ–ÀÅ—ÀÅÞÀÅêÀÆÀÆÀÆ(ÀÆHÀÆIÀÆdÀÆ}ÀÆ–ÀƤÀÆ«ÀÆÄÀÆõÀÇ#ÀÇTÀÇ]ÀÇ^ÀÇjÀǪÀÇèÀÇøÀÇþÀÈÀÈÀÈÀÈSÀÈ_ÀÈ~ÀÈ�ÀÈ›ÀȪÀȳÀȵ AxisChartDataAxisSide TitleMetadefaultGetTitle SideTitlesSideTitleFitInsideData AxisTitles FlTitlesDataFlSpot FlGridData showAllGridsdefaultGridLineFlLine TouchedSpotRangeAnnotationsHorizontalRangeAnnotationVerticalRangeAnnotationHorizontalLine VerticalLineHorizontalLineLabelVerticalLineLabel SizedPictureExtraLinesData FlDotPainterFlDotCirclePainterFlDotSquarePainterFlDotCrossPainteržö