050606030302060303030404050505050606060606060707070808080909090909111111121619040808060607081317050505050505040506060606060605060607070707070707070808080808080808080808080808080909090909090909090909101110101010101010101011111111111212121212121212131313131313131414141414141414161414141414141515151515151515161616161718181819191920202021222325060810111805050607070707070920081111121323040409121504060607080808080809091010101112121314110605050506060707080808080808090909090910111010101111111111111213121212131314141414141414141414141415161616181718192005060606070708080809101010111214171717161811121304081121070710121313142607120406061308020307080606060707070808091010101213151415172404101111150404060708091214140505050606060707070707070707070707070707080808080808040808090909090909090909090909090909101010101010101010101010101010101111111211111111111111111111111111111111111111121212121212121212121212121212121212121212121212121212121313131313131313131313131313131314141414141414141514141414141415151515151515151515161615161616161616161717171716181818181818191919202021212122232325260505060808091014200507070707070707070707080808080809090909090909090910101010101010101111111111111112121212121212121212121313131313131314141414141414151515151515151515161616161616161717171718181819192024251215090909050812141418040606060707080808080808090911111112131605060606060606070707070707070808080808080808080808080808080808080909090909090909090909101010101010101010101010101010101010101010101010111111111111111111121212121212121212121212121212121212121212121213131313131313131313131313131313131414141414141414141414141415151515151516161616161717181819191919202020212226260607070809101012131516250405050606070707070809090909101010101111111111111112121313131313141415151515151821260507081010101114150607080809091011111111121213140506060708080809090909091011111212141414151819040705050505060606070606060607070707070707070708080808080808080808080909091010101010101010101010101010101011111111111111111111111111111112121212121213121212131313131313131313141414141414141414141414151515151515151515151515161617161616161717171717181818191919192021212228060410101215050811050506060607070707070708080907090909090909101011111111111112121212121212121313131313141414141515151616171720202222121214160606060707080808080808080809090909090909101010101011111111111212121213141414141515151616161619200708141516070913040606060607070808080809090909090910101111101212121313131315152108160607080808111212141516050607070808090909090909090910101111111111111112121212131414141515161617192004060607060607080807070807070707070708090908090808080808080908090909090809101009091009090909091010100909111011101110101110101010101110101111111211111111111112111112111112111212111110121211111111121212121212121213131213121311121213131314131314131313141414141314141414151415151415141414141515141615151515151515161515161717181817181818181819192019191920202022222706070808080910101011121314151517070808090905050506060607070707070707070708080808080910080808080808080809090908090910090909091010090909091011101010101011111111111111111111111111111212121211131312121212121212121212121313131313131313131313131313131313131313141414141414141414141414141415151414141414141515151515151515151515151515151617161616161616171717171717181818181818181818181818191920202020212121232323252508101011130707080809090909101010111111111112121212121212121212121213131313131414141415151516161616181820210710130606080910111215172309091010121415060810101010101111111315150606070707070707080808090909090909090909091011101010101010101011111111111112121212121212121212121213131313131313131313131314141414151515151515161616151616161616171717181818181818191920222223230616170810101111121214141515151617060707070707080808080808080808080909090909090910101010101010101010101010101010111111111111111112111111111112111212121212121212121212121212121212121213131313131313131313131313131313131314131313131313141414141414141414141414141414141414141414131414141415151515151515151515151515151515151516161616161616161615161616161616151616161616161616161717171717171717171717171718181818181818191919191919191919191920202020202020202020202121202222232323230707080808081009090909091010101010111111111212121212101213131313131314141415151616171717171920222325060707090909121214180608080808090909101111121212121212131313131314141414151516161617202023070810101112121213141616161718090608080808080910111111111110111212121213131313141414141414141616161616181819261008111516040505060506070607070707070707070707070808080808080808080808090908090909090909101010101010101010101010111010101010101010111111111111111112111111121111111112121211111111111111121212121212121212121212121213121212121212121313131313131313131313131313131313131313131313141414141413141414141414141415151515151515151515141515161615151515161616161616161616161617161616161516171717171717171717171717171718181818181818191918191919191920202020202021212121222121222223232324242606060707070808080808090909090909090910101010101011111111111111111112121212121212121212121213131313131313131313131313131313131414141314141414141414141515151515151515161616161616161616161617171717171718171919201920202021222323270808101409101112080912080810101014171821041006070708080808080909090909101010101111111111111111121212141313131314141415151515151616161717171818192123080707070708080808080808080808090909090909101010101010111011111111111111111212121212121413141313131314141414141412151515151516161617171718191920202020240606060607070707080908080808080910090909090909111010101110101010101111111111111111121212121212131212121212131313131313131313131415141415151515151515151515161616161717161617181717171819191919202309091010111112141414151518260708080909101010101011121111111112121212131313131313141414141414141515151616161617171717171717181819192224251013141517121516070707090909101011111212131313131415151516171818192023130707080808080909090909091010101010101010101010101011111111101111111112121212121212131212121212121213131313131313131414141414141414141414141515151515151515151515151616161616161617171818181818181919192021212122232424280709101111131414151619212508090910101111121314141415151618200809091010101111121313141614171921222907070808080808090909090909090909091010101010101010111111111111111112121212121212121212121212121312121213131313131313131314141414141414141414141414151515151515151515151516161616161616161617171717171717171618181818181818202020202121222322253008091114171717202410101111121314060708080909090909101010101110101010101111111111111112121212121212131313131313131313131313131313131314141414141414141415151515151515161616161616161716171717171717171718181818181818192020202021212122222426070909090910101011111112121212131313131313131314141414141515161616161617181819202129070708080808080809090909090909091010101011111111111111111111111111111111111212121212121212121313131313131313141313131414141414141414141414141515151515151515151515161616161616161717171818181818181821202121212122223007080909090910101011111111111111121212121213131313141415151516161616161617171717171717181819192022060808090910101010111212131313131417181909101010101010101111111111111111111212121212121212121212121212131313131313131313131313141214141414141414141414141515151515151515151515151515151515151515151515151515151516161616161616161616161616161717171717171717171717171717171718181818181818191818181818181818181818191919191919191918192021212121212121212221222223232323242627300910101111111112121212121213131313131314141414141415151515151515161717171717171717181818181818181919192020212123232525080909090910101010101010101010101010101111111111111111111111111112121212121212121212131313131313131314141414141413141414141415151515151515151515151515151515151516161616161616171717171717171717171818171818181919191919191920202020202121222222222324242424252527060807080909101112121316091011111111111112141416230508090909091010101113121313131414161617181921241010101111111112121213141414141415161617181822101011111111111111121212121313131313141414141616181818202109121212090910091113131414141414151517171718210710101111121313141414141415151616161717171718202213060607070810080808080808080808080808090909090909090910101010101010101011111111111111111111111111121212121212121212121212121212121213131313131313131313131313131314141414141614141414141414141415151515151515151513161616161616161616171717171818181819191920202121212122111809131011141516101011151416210809090910101111111112121212121313141414141414141415151516161617171717171717171818201011161617182203060606070707070708080808080808080808080809090909090909090909101010101010101010101010101010101010111111111111111111111111111111111111111211121212121212121212121212121212121212121212121313121314131313131313131313131414141414141414141414141414141414141515151515151515151515151515151615151515151515151515151515151516161616161616161616161616161618161616161616161417171717171717171717171817181818181818181818181818192019191919191920202020202120202020202020212121212122222223232424262526272727282833080910101010111112121313131313151618181820070909091010101111111111111211111212121212121212121313131313121313131414141414141414141414141515151515151514151514151616161617161616171717171717171717171717171717171817181818191919191919191920202020202021212022222223222323232528091011131415101215161908070909081010101112111111101212111212121013141312141414141314141413141414141414141515151515151514141515161616161616171717171717171717171818181818181918202020202121232224242427091011121210101111111212121213131414151516161616171717181819191919192126311113131314151515151516161616171718191920201925090909101011111111111111111111111111111111111212121212121212121212121212121213131313131313131314141414141414141414141415151515151515151515151515151515161616161617171717171819181818181818191919191919192020202020202021212121212122222223060810121213180910121214151718220811121314141415161616161617171721251011111113151515161618191921222525111111111212141515161718181919191811111212121212121213131314141415151515151515151516161616161617171816202123101212131310131414211010101111111112121212121212121313131313131414141414141414151515151515161616161717171718181818181819202020202122222223242509091010111111111111111112121212121212121212121212121213131313131314141414141414141513151515151515151515151515151515161616161616161617161717171717171718181818181919181918202021212223232425281212121212131313131516171719202309090910111111111111111111121212121313131313141414141515151516161616151717171717171818181818181819191920202122222222242627310708091520131415202007070808080809091010101010101011111112121212121314141414151515151616161717181819240506070707080808090913090909090909101010101414111111111111121212131313171314141414141415151516172323090910101111111111121212121212131313131313141415151515161616161616161616171717171819191919192121222224242811101112121212131313141414141414141515151515151515161616161717171717171818181818181818181818191919191919191919191919201920202020202020212120212121212121212223212222222222232323232324242424262909090910101011121517171725101212131811111212121213131314141414141414151515151616161616161616161717171717171719202121212209101205050607071007070808080909090909101010101010101111111111111112121213131313131314141414151515161615161717171920211011121212121313131314151516161617171819201920222532111212131414141414141414151515151616161717171617171718181818181819191919192020222222232524252736522211111215201313131414141616172021212224121212131313131313141414141414151616161616171616171717171717171818181818181818191919191920202021212121212122222323242525262627131414141416171818181919212223131517191920212312121213141616181919221212131313141414141414141414151515151616161516161616171717171717171717181818181818181818181919191919191919191920202020212121212121222222242425111213131313141414141414151516161616161717171717171818181818181819191920202123241718101112121212121312131314131313131313131414141514141415151515151615161616171617171717181717171818181818201919202020202021212121222222222325252627151516181914171617261213131414141414141414151515151515151616161616161616171717171718191818181818181819191919191919202020202020202021212121212121222222222223232324242425262728293416172011121414151515151516161616161617171717171718181919192020212223242512131419222812121414141414141515161617171717181818181818181919191920202020212122242424242525262920211414151622251415151616181818181918202222222324243412131414141515151515151515161616161616161616161617171717171818181818181818181819191919191919191919191919191919191920202020202020202020212121212121212121222222222222222222222223232323232323242424242423252525242727441516162020212118131414141414141515151515151515151515151516161616161616161616161716161616161617171717171717171718181818181818181819191920191919181920202020202020202020202121212121212222222222222223232323232323232324242424242525262731343515171719202124151821232514151515161616181921222424141414151516161616171818181919191919212121222223242225152020161819202123241516162020202121212223251314151516171718181818191920202020212123242525252618192224162424181818192116171819212223231818202020212729171718191920202021212222232324242425252626272829293522092019202121212527