63636464646464646363636363636363636363636362626262626262626262626262626262626262626263636363636363636363646464656565666666676768686869696970707071717272727373737374747575767778798182838384858686868788888990909192929393949595969797989999100101101102102103104104105106107107108109110111111112113114115115116117118118119120121122122123125126126128129130131132133134136137138139140141142144145146147148149150152154154154155156157158159160161162162163164165166166167168169170171172173173174175175177178179180180181182183185186186186187187188189190192192193193194195195196196197197198198199199199199199199198198198197197196196195194195195195195195195195195196196196196197197197198198198198198198199198199199199199199199199199199199200200199199199199198198198198198197197197197197197197198198199199200200201201202202203203203204204205205206206205206205205204204203203203203202202203202202202203203203204204204204204205206207207207208209209210211211212212213213214214214214214214214213213213212212211211211211210210210210209209209209208208208207207206206206206206206207207207207208208209209210212212213214214213211211210209208208207207206206205204203202201201200199197195195188185183181180177173171171168164162159157157154152151149147146144143142141140138137137139140142143143143142141140140139138137136136135134134133132132132132132132131131131131130130130131131132132133132133133133132133132133132133132132132130131131130130130129130129129128128127128127127126126125125125124124124123122122121121121121121121121121121119118118117117117116116116116116116116115115115115115115115115114113114114115114114113113113114114114114114113113114114114114115114113114114114113114113113113112112112112112112111111111111111111111111111110109109108109108107107106106106106106108108107107107106106106106104104105104104104103103102102103103103102102102101102100989797979898979797979898989898989898979797979696969696949393939191919191919292909090909090908989898989898989898989898890918989888786858584848484838382828282828182818181818181818180808080808080808080808080808079798080808079828384848587888691939897979899100101102104105106107108109109110111112113114115116116117119120121123124125127128129130131132132133132133133135136137138139140141142142143143143144144144144144144143143143142141140139138137135134134133132130128128127126125123122121120119118117115114115114114116116117117117117118118118118118119119118119119120122123125126127128129131131132133134135136137139140141141142143144144145145145145145144145144144144144144145144144144144145145146147147148148148148148147146146145144144143143142141140139139138137136135134134133131130130128128127125125125126128129131133135136137139140142143145146148149151152154155157158159160161161161161161161160160160160160160160161161161162164165165166167168169170171172173174175176177177178179180180181181182183183183184184185185185185185186186187187187187187188188188188189189190190191191191192192192193193194194195195195196196196197197198198199200200200200201201201202202203203203204204203203203203203203203203203203203202202202202202203202202202202202203202202202202202201201200198200198198197197197197197197197197196196196196196195195195195195194194194194194193193193193192192191191190190190189189189189189189189189189189189189189189189189189190190190191190190189190190190190189189189189190190190190190191191191191190190190190191191191190190190189189189189190190191191191191191191190190190189190189190188188188188187187186187187187187187188188188188188189189189189189189189189189189189188188188188188189188188187186186185184184183182182181180180179178178178178178178178178179179179179178178177177176176176175175174174173173172173173173173173173174174174174174173173173172172172171171171170170169169169168168168167167167166166166166166166166166166165165166165165165165165165165166166166166166167167167167168168168169169169170170170171171171172172172171171171171170170169169169169169168168168167167167167167168168168168169169169169170170170170171171171172172172172172172171171171171171171171171171171171171171171171171171171171171171171171171171171170170170170170170170170170170170170170170170170170170170170170170170170170170169169168168168167167166166165165164164164163163162162161161161160160160160160160159159160160160161161161162162163163164164164165166166166166165166166167167167168168168167166164163161160160159158157157156155155154153153152151150150148147147147146145145145144143143142142141141139138137137138135134134133132132131130129129128124124124125126124123122122121120119119118118117117115115114113114112111110110109109109107106105105104103102102101101100999897979696969593939294929089888887868586848382828180807978777776757575747474747074747474747575767677787879798081818283838484848686878788888990919192939394959596969798989910210110110210310410410410510510610610710710810910911011111111211211311411411511611611811811811911912012112112212212312412412512512612612712812812913013113113113213313313413513513713713713813813713713613513613413513413413413413313313213213113113012912912812812712812712712612512512512312212212112112011911912012012012012112212312312412512612612712712812912913013013113213213313413413513513513613713813914014114214314314414514514514514514414214114014013914013913713713613513413313313213113012912812712612512512412312212112011911811711611511411311211211211010910910710610710510310210110098989898989898989798989898989898989898989898989999999999991009999991009999999999999999100100100100100101101101101101101101101101101102102102102103104105105106106107107107107107107107107107107107107107107107108107107108108110109110109109109110110111111112112112112112112112113112112112114114114115116116116117117117118118118119119119119120120120121121121122122122123123123124124125125126126127127128128128129129129129130130130130130131131131131131131131131132132132133134134135136137138138139140141141142143143144145146146147148149149150150150151151152152152151151151151151150150150150150151151151151152152151151151152152153153153154154154155155155156156157157158158160161162163163164164164164164164164164163163163163163163163163163163163162162163163163163163163163163163163163162162162162162161162161161161160160160159158158158158158157157157156156156156156156156155155155154154153153152152151151150149149148146148148147148149150150151151152153153154155155156156156156156156156156156156156156156157157157158158158158159159160160160160160159159159159159159159159160160160160161162163163163163163162162162162162162163163164165166167168168169170170170171171172173174175177177178179179180182182184185185185187189188189189191192192193194194195196196197197199199200200201201202202203204204204204204204204205205206206208209210210211211210210209209209208208208209209209209209209209209209209208208207207206206207207208208208209210211211212212212212212211211210210210209209208208208208208208208207207207207207207207208207208208209210210211211210210210210210211211211212213215216217218219220221221221220218216214212211209208207207205204202200200198198197196195194192191190189188187186186186185185185185185184184184183183183182182181181180180179178178177177176176175175175175174174173173173173172172172171171171170170169169168167167166165164163162160161161161162162162162163163163163163163162162162162162162162162163163165166167168170171171173174175176178179180182183184185186186186187187187188188188189189189189189189189189189189190190190190190190190190190191191191191190191190189188188187187186186185184184184183182182182181181180180180180180180181181181182182182182182181181181181180180180180180181181181181181181181181180180180179179179179178178178178177177178178178178178177177177177177178179180180181181180178178178177176175174173172170169168166164163162161160158157157157156156155154153152152151149148147146146144143142141139140139140140140141142142143144144144145145145146146146147147148149150150151152153155155156157158159160160161160160160161161161161161161162162163163165165166166165165165164163163162162162161161159160159159159159159159160160160161161161160160159158157156155154153152151150148148148145145145144142141140139138137136135134133132132131131131129130131132132133134135135136137138139140141142143143144145146147148148150150151151152154155156156157158159160161163162165165166167167168168169170171170170172172173174176178176174177178179177176177175174174174174174175175176176177177178179179181181182182183184184185187187187188188188189189189188188187186185184183182181180179178177176175174174173172172173174174175176176177177178179180180181182183183184185186186187187187187187186186186186186186186186185185185185185186187187188189191192192193193193193192192192191192192192192192192192192192192192193193193194194194194194194195195195196196197198199200201203204206207208209211212213214215217217218219219220221220220220220220220221221221222222223223224224224224224224223222222221221222222222223223223223223223222222222222222222222222222222222222222222221221220219218218215216213213212212210209209208208208208208207207206206206205205205205205205205205205204203203202201200199198196196195194193191190188188187187186185184183182181180179178178177177177176176176176176178178179180181180179179180180181182183184185186188188189187186186185185185186186187187189190190190190190191192192192192193193193194196195195196196196197197197198198198199199199199199199199200200200200200201201201201201201201201201201201201201201201201202202202202203203203204204205205205206206207207207208208209209209209210210211211211210211212212211212212212212213212212211210209208208208207207207207206206206205205205205205205205206206206206206206206207207207207207208207207207206206206205205204204204204204204204204204204203203203203203203203203203203202203203203204204205205206206206207207208208208209209209210210210210211211211211211211211211212212212212213213213213213213213213214214214214214214214214215215215215215215216216216216216216216216216216216217217217218218219220220221221221222223223223224224225226226227227228228228228228228228227227227227227227227226226226226226226226226226226227227227228228228228229229229229229230230230230231231231231232232232233233234234234234233233233233234233233232232232232231231231231230230230229229228228227227227226226226225225225224224224224223223224223223223222222223224223222221221221221221220220219219218218217217217217217216216216216216216216215215214214213213213213212212211211210210210210209209209209208208208208208208208208207207207207207206206206206206205205205204204204204204203203203203203202202202203202203203203203203203203203203203203203203204204204205205205205206206206206206206206207208208208209209210210211211212212213213214214214215216216217217218218218219220220221221222223223224224226227228229231233233233234235235236238238238239240240241241242243243244244245246247248249249250249249248247247246245245244243243242242241240240239238238237237237236236235235235234234234233233233233233232232232232232232232233232231230231230229228228228227227227227226226225225225224225225225225225225225224224224223221222222222220218219217217217216216216215215215215214214214213212213212213213210209209211207207206205205204203202202201201200199199199197197196196195195195195195195195195195194194193193192192192192192192191190190190189189189188188188188188188188188188188188188188187187188188188187187187187186186186186186185185185185185184184184184184184184183183182182182183183183182181182181181181181181180180179179179179178178178178178178178178177177177177177176176176176176176176176176176177177177178178178179179179180180181181182182183183184184185185186186187188188189189189189188188188187187187187187187187186186186185185185184183183183183183183183183184185185185186186187187188189189190190191192192192192192193192192192191191190190189189188188188187187187186186186185185185184184183183183183183183182182182183183183183183183184184184184184184183183183182182182182182182182182182182182182182182182182182182183183183183184184184185185185186186187187187188187188187187187186186186185185185185184184184184184184184184184185185185185186186186187187187188188188188187187187187186186186186186186187187187188188188189189189189190189189189189189189189189189188188188188187187187188188188188188188189189189190190191191192192192193192192192192191192191191192192192191191193192192192192191191191191191191191191191191191191191190190189189188188187187187187187186186187187186186186186187187189189190192191191191191192192192192193193194194195195197198198199200201202203204205205206206207208208208207207206205204203202201201200198197195193192190188187185183182181178177176175174173172171170169167167165164163162161160158157156156154153152151151150148146144144141140138137136135135134133131129128127126125124122122121120119117117115114113113112112111110111112113115115117117117116116116117118119120121121122124125126128128129130131132133134135136138138139140141142143144147148149150152153155157158158160161162163163165166167168168169170172174174176177178177177176176176177177178179181182183185186186187187187188188189188189190190191193194195196196198199201202203205207208209210211212214215217218220221222223224225226228229230230232233234235236236237238238239239239239239239239239239239239239239239238238238238238238238238238238238238238238237237237237237237237237237236236236236236235235235234234234234234234234234234234234234234234234234234234234234234234234234234234234234234234234234234234234234234234234234234233233233233232232232231231231231231230230230230229229229229228228228228228228228228228228228228228228228228228229229229229229229229228229228228229229229229229229229229229229229229230230230230230230231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231232232232232232232232232232232232232232233233233233234234234235235235235235235235235235234234234234234234234234234234234234233233233233233233234234234234234234234234234234234234234234234234234234234234234234234234234234234234234234234234234235235235235235235236236236236236235234234233232231232232232232232232232233233233233233233233233233233233232232231231230230230230230230231231231232232232232233233233233233233233233233233233234234233233233233233233233233233233233233232232232232232232232231231231231231231230230230230230229229229229228228228227227226226225225224223223222221221221221221221221221221221220220220219218218217216216215214213212211210209207206205204203201201200200200199199198197196195194193192191190189188187185185184183183182182181181181179179178178178178177175174173172171170169169168167167166166165165164163162162161161160160160160160159159159159158158158157157156156155154154153152152151151150150150149149149149149148148147146144145145145145146146146146146147147147148148148149148149150150151151151151152153152152151149148147146146145143143142141140139138137136135134133131131130130130130130130131132132132132132132133133134135138138139138140140140140141141142143143144145146147148148149150150151152152153154154155156157158158157158160161162162162163164164166164167169169170170172173175175175176177178179180180181182182183184184183184186187188189190191191192193193195195196197197198198198197196195195194193193192192191190190189188186183183183184184182179181181181180180180179177174173173175175174174174172172171171169169168167167166166165165164164163163162162161160160159158157158157156156155155154153152151150149149149149146147146146145145144144144142142141141141141140138137137137137137137136136135135133132130128126124123126127126126125124124122122122121121120120119118119118117116116116115114113112112111111110110109107105106104105104105105104103103102102101991009899979695949392939494939393929292929291919291919191919090909090909090909089898989898989888888888888888787878787878787868686868685858585858484848483848483838282828180808182818282828281828281818080818181818282828282828281818180797877767676757472717271717171707069696868686767676666656564646463