18816424109733753481980831314687782948461908677439853150584586618165282985805349553136258641917948833868630470195908641756519597778272879972237744113452678104030160860405610052089443152528586122512567821696769409849110468676667461209461838250891988099509032156399310807674851509997216122244149042745817914283929859409055854493142155727658265082635270371612491245918594183840768062326983378644124603586272424825130347840885845539288444791225903548982604568198810060953708762907766402754419114560989439143450632580762610585496729807184934197011808001694715901462760052394820233297856153832919326320799402576462559227269026219081698433814027084405178164069329798552945596405191349950534649475757140962001579957366398433425850672814129938594291671409767645768107467119550113999403266816236555517376532934397888412244900898254384577386583757482583165601458663075927856288828976936167561213747622777681985761242856220286060603711208643435487491740051952595506346143942967445430402735572389447225240946379817395536248908605925866066602922578452993789512530804531221410468911340878715252762666009595466700244099815903818348227849735406422938105998553939893964017452192389587935535675513502525759940419245945451914955555368912749068288000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000