cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccclllccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccclccllcccccccccccccccccccccccccccccccccccccc
ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccclccccccccccllcccllccllllllcccccccccccccccccclllcccccccccccccccc
ccccccccccccccccccccccccccccccccccccccccccccccccccccclllcccccccccllcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccllcllccllcccccllllcllllllllllllccccccccccccccclllllllcccclcccccccccl
llcccccccccccccccccccccccccccccccccccccclllllllllllcclllllllllllllllllllllccccllccccccccccccccccccccccccclcccccccccccccccccccccccccccccccccccllccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccclllllcccllcccccccccccccclclllllllcllllllllllllllllcccccccccclllcccccllllllllllllllcccccccccl
lcclllllccclccccllllllcccccccllllllllllllllllllllllllllllllllllllllllllllllcllllccccccccccccccccccccccccllcccllcccccccccccccllllllllllccccccllccccccccccccccccccccccccccccccccccccccclllllccccccccllllccccclllllllllllllllclllllcclllllllllllllllllllllllllllllllllccccccclllcccccllllllllllllllllccccccccll
lllllllllllllccllllllllcccllllllllllllllllllllllllllllllcclllllllllllllllllllllllllcccccccclcccclllllllllllllllllllcccccllllllllllllllllccclllllllllccccllllllcccccccccccccllllllllllllllllllcccclllllcccllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllcclllllllllllllllllllllllllllll
lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllccccccccllllllllllllllllllllllllllllllllllllllllllllllllllllllllclllllllccccccccccccclllllllllllllllllllllllccclllllcllllllllllllllllllllllllllllccclllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllclllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllc:clllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllcllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllc:llccllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll::::;:c::clllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllcccc:clllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllc:clllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllccllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllc:clllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllcclollllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllc:lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll:cxkdllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllccc:::::cllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllc;,;:cllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllc:c::cccllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll:'.':llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllccllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllooccoollllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllcclllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloooooodddoooooolllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllclollllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllooooooooolloooooodoooolllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllc:dOxlllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllooooolloooolllllllllodooddoollllllllllllllllllllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllc,;::clllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloooolllllooolllllllllloodooddddollllllllllllllllllllllllllllllllllllllllllllllllllllllll
lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll;',;lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllccllllllccccccc:::cloolodddddollllllllllllllllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloooodollllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllolccc::::::;;;,,,,''''''',;;;:looddodoollllllllllllllllllllllllllllllllllllllllllllllllllll
lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloooooodddddoddoooollllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllol,.'''''''''',,,''''.......'',:cccloooollllllllllllllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloooooooddddoooooddddddooolllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloc......................... ....',;::clolllllllllllllllllllllllllllllllllllllllllllllllllll
lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllooooollooooooollllodddddddddoollllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloc,......................';:c:cc;...'',:llllllllllllllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloooooollllolllllccccloddddddddddoolllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloo,.'''''',,,,,,;;;;::::cldkxdxxol:,..;lollllllllllllllllllllllllllllllllllllllllllllllllll
lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloollllcccccccc::::::::looloddddddddolllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloooo:':lc:,,,,,,;;:looollloolldxdoddxxxdooooolllllllllllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllolc;::;;;;;;;;,,,,,,,,',:c::ldooooodddollllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloooooc;cl:,,',,,,,,,,,:lollooodoodxooddddxxdoooocclollllllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllolol;,,''''...................',;clooloooolllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloooooooooll:,,,;,,,,,,,,,,,,:oddddddollolcloddoodddc'',colllllllllllllllllllllllllllllllllllllllllll
lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllooool;........................''....',:cloollllllllllllllllllllllllllloollllllolllllllllllllllolclllllllllllllooooooodddl;,;;,,,,,,,,,,,,,;,:dc;:;;;,,;:;:ollloodc,,;',lollllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloooooo,..''''''''''',,,,,;:loldxdl:,....';loloolllllllllloollllolooooooooooooooooooooooollooloo:;lollllllllooooool:::::;;cl:;;,,;;cc:ll:,,;,';,'''''',,,'',,',:cc,'';:';lolllllllllllllllllllllllllllllllllllllllll
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllooooooc;:;,,,,,,;clllloooooloxxdxxxxxdoc::loolooloooooooooooooooollc:::;;;;;;;;::cooooooooooooollodooolooooolccccc;.',''':xdc;;;:lc::,'cl:;;;'',,,,,,,,,,''''',,,,,,,,c:,coloollllllllllllllllllllllllllllllllllllll
lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloooooooooool;;;,,,,,,',;:odoooooooodxddxddxxxxxxdolloocclooooooooolc:::;,,''''''',''''',;:coddoodooo;',;;;:looool;'''''''''',,',ldo:;;co;.''.'lc;;,,'''',''''''...'',,,ll;;;cdccooolllllllllllllllllllllllllllllllllllllll
lllllllllllllllllllllllllllllllllllllloollllllllllllllllllllllllllllllllllllolllooooooooooool,',;,,,,,,,,,,;lddddddddodxdddddddddxdc;,;clodooooollc;,,,,,,,,''''''''''''''''';lddddddol,...,cooooool:''',',,,,,''',;c:::cl:.';,coc;,,'''''',,,,'''',,'',,:kdodoxl;:llloollllllllllllllllllllllllllllllllllll
lllllllllllllllllllllllllllllllllllllllolllllllllolllllllllllllllllllllllllloooooooooooodool:;;;,,,,,;;;,,,,,okocc::::clccooooddddl,.''',::;colc;,;,,,,,',,,,,,,,,,,,,,,,,''''';oxddlco:',:looooooooll:'.'''','''',,,,;;:cclccllc:;,,,,,,,,;;;;;,,,:;,'lo:k0kkdl;'',;;clolllllllllllllllllllllllllllllllllll
lllllllllllllllllllllllllllllllllllllllllllllloooolllllllllllllllolllllllloooooooooooolc::;:ol;;;;;:clccc:,;,;c:,,,,,,,,,,::;:cloo;......,,:ll:;;,,,,,,,,;;;;;;;;;;;;;;;,,,,''',;lxxc....';ldooooooooool:'',,;,',,;;;;;:::::c::::;;;;;;,,,,,;,,;;;:cl:ck0OKOdl,''''',:llllllllllllllllllllllllllllllllllllll
llllllllooollllllllllllllllllllloollllllllllllllllllllllolllllllllllllllloooooollllccc;',',lxo:;;;cl:,,,cl:;,'',',,,,,,,'''''''',;;,''..';colcc:;,,,;;;;;;:::::::;;;;;;;;;;,,,'',;lxxo,.'cooodooooooooodo;,;,;;,,;;;;;;;;;;;;;;;;;;;;;;;;,,;;;;:c:clocdOO00l,,..'',;clolllllllllllllllllllllllllllllllllllll
looolllooooooooooollllllllllllllolllllloolllllllllllloooollllllllllloooooooooo:,',,'''''',,:dxo:;:ol..'.'lc;;,,,,,,,,,,''''''''.;:cdc,:'.':ool:,,;;;;:::::::::::::::;;;;;;;,,,''.',;:c:,'';;:loloooooooo:',,,;;;;;;;;;;;;;;;::::::::::;;;,',,,,::cllddooloxxl;'';:lollooolllllllllllllllllllllllllllllolllll
ooooooooloooolllllllllllloooollloooooolloollllllllooollooooooolllooooooooloooooc;',,,,,,,,',;colcclc;'',cl:;,,''''',,,,'''''....lc'dkolccoddo:;;;;:::::::::::::;;;;;;;,,,,,,,',,',,,,,''',,,,,'',;cooood:',;;;::;:::::::::::::::::::::;;,,'.''..;;.,:ldxolool:;:loolooooollloollllllllllllllllllllllloolllll
oooooooooooollllllloooolooooooooooooooolllllloooooooooooollllooooooooooooolooooooc,'',,,,'',,,,:::cclllllc;;,,,,,,,;;;;,,,,,...,xx;;;;;;cclllc:;;;:;;:::;;;;;;;;;;;;,,,,,,,,,,''',,,'''''''''',,..cdooo:,'.','';cccccccc:;;;;;;;;;;;;;,,','.''..::.;ccokxxkxdoccolooooooooolllllllllllllllllllllllllllllllll
ooooooooooooloollooooooolloooooooooooooooooolloolloooollloollooooooooloodoloolcloooc;,,,;'',;;;;::::::::;;;;;;;;,,,;;;,,,,;;:;;cx00o'',,,;;;;;;;,,,,,,,,,,,,,,,,,,,,,'''',,,,,,,'',,,,''',,,'':oloddodo;','','.:l::::::::;;;;;;;;;;;;;;,,'''''';oc,coodxddxxxxlldoooloooooollllllllllllllllooollllllolllllll
oolloooooooooolloooloooolooooooooooooooooooooooololllllloooooooooodxkdoodoool;:lllol;,;;;,,;;;:::::::;;;;;;;;;;;;,;;;:cc::clc::ldxkOo,'.',,,,'''''',,,,,,,,,,,,,,,,,,,,,,;;;;;;;,,,;,,'';ool:,..':ddoool,''''';oddddddddoooc:;:::::::;;;;,,::;:lolldxkO0kxxddo,,::cloooooollloooooollollllllloolllllllllllll
oooooooooooooooooooooooolooooooooollooooooooooooooollooooooooooodxooxOxddooc;:c::loc,;;;:;,;;;;;;:;::::::::::::;,''''',cc;:lccccclllll;.',;;;,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,'''''',,,::,'''..,odooodl,;:;;lolllllllolol:,,;;:::::::;;,;clloxxxxOkxkkkkOOOo,'::loooooooooooooooollllooooolllllllooolllloo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooodxdcoOkool;:::cllc:,',,;,,;:::::::::::;:;;;;;;,,,.''.'cc',;,;oxdddocc;',;:;;;;,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,....':;.,:,......,odooodl;clloxxlc:ldddddo:....';::::::;,,,ldooxxxxOOk0Okoodko;:lllooooololloooooolollooooooollloooooolllllo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooolc::lllooc;:::ccc::;'..'..;c::::cccc:;;;;;;;;;;;,,'..'.'lc',::loooddxdc'';,,;,,,;;;:::::::::::::;,,,;;;;;;;;;;;;,'.'.';;.':,...'..,odooodo:cdooxxdoclddoc;...'''..',:::c;,,;ldooxxxxOOO0kdc,cdocodoooooolllllollllllooooooolloooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooollllccclc;,;:olcccllc,..'..;ododdddxxdoc::::::::;;;,,,,,col:clokxdoodddc.,c;,:;';:;:;:::::::::;,'.......'',,;;;;;;,''',::,;c,.'''..,odooodo:ldooxkdoclo:,..',;;;,,'...,:ll;,;ldooxxxxOOOklc;..cxxkOdloollllollllllllolloooolllooooooooooooollo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooc::::ccc::;;:colccc:cc;,,';looooooooodl;,;:::::::;;,:cclddddxxdxxxxxkkxd,.,:;:;;oxddoolllc:;,'....',,''......'',;;;;;;cllcoxc,;;'..,loooddo:ldooxxdoc;'...',,'''''''....:l;,;ldooxxdxOOl:cdx;.'oxkOdloooooooooooooollolooooooooooooloooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooollllccc:;::;::lolloodoccclddl::looodl:'..',;:::::;,,coddxxxxkkdxkxxdoldxc',lollloddddol:;,....'',;;,,,'''.......';,;:;cdddxOo;;;'...',;ccll:ldooxxdo:'''......'...''..':do;';ldooxxxxOO:';;::,.,lkOdooooooooooollloolloooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooodoccccc::oocdxooolcloolldodkdlclddl;..''''..,;:::;;,cdddxxxxkookkkxl;':xl,;dkxxxxolll,.........''''............',,,;:;cddddOx:;;,...'''',,,;ldodxkdc;,,'',;;,'..',,;,',lxo;,;loooxxxxO0o;;..'.,cokOdooooooooolllooooooooooollllooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooolcl:,co:codlcoxddxdollolododkxollc,..',;;;;,'..';cc;,cdddxxxkklckko:,'..co,;dkxxkkdooc,'',,''',,,,''..';;;;,,..,;;;,;::lddddOkc;;'...''''.'';ldddxkl:;;,',;;,.......,,',lxo;,;ldooxxxkO0xclc,c,,dxkOdoooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo:'';:::cooc;,cooxxdddolldodkdoc,...''''''''...'.:o:,cdddxxxkx:,:;',ld:..,,:dkxxkkxdl;,,,',;;;;;;,'...'',;;;;'';:;;,;::cddddOOl;;,...,,''''';ldddxxc;;;,.;;'. ...'lxo;,;ldooxxxxO0dcc,,do:dxkOdoooooooooooooooooooooooooooooooooolooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooool:;dkxdc,cl,',;coodkkdocldodkxoc,;;'''''''.''',;:do;,cdddxxxd:,.....,:c,.',:dkxxkkxl::;;,';llcc;'.........';;,,::;;,;::lddddk0d::,'...','''';ldddxkdl;;;,,. .. .'cxo;,;ldooxxxxO0xc' ;ccxxkOdoooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo;'cookko:;,;cc:ll:ckxddcldodkxl;,,;;;;;,'.',;;''cxo:,cdddxxoc,,'.........,,:dkxxkkdooo:;:;cddl;.. ...... ..,:::;;;,;::cddddk0kc:;'.........;ldddxkdoc:::;. .. .'cxo;,;ldooxxxkOOx:....;okxkOdoooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooolclc:d00OocloxxOOdoxOOxcldodko:;;,,:;,'......''':xo:,cdddxd:;;,'...,,.::',,:dkxxkxddool:lodxl;. . ....... .':c::;;,;::lddddk0Ol:;'... .;ldddxkdol:;;:. . .... .,lxo;,;loooxxxxO0x:'...,dkxkOdoooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooxddxllddxOkdO0xdkxlcokklldodxo:;;,':;.. . ..':xd:,ldddxo:;;,'.. ...;o:,,:dkxxkxdddoolloddc:. ......... ..;c::;;,;::lddddkOOoc:'... .;odddxkdol:;;c'.......... .,lxl;,;loooxxxxOOx:'...,okxkOdooooooooollooooooooooooooooooooooooooooooo
oooooooooooooooooooddxkkkxddddoooooooooooooooooooooooooooool:,,;,..,'.ckod0xlcod:lOxcldodkdc;;;;:. ... .':dd:,lddddl:;;,'.. .;;,;:dkxxkxdddoolldo:,;............ ..;c:;;;,;::lddddkOOxoo;... .;odddxkdol:;;c,........ .'lxl;,;loooxxxxOOxc'.'';dkxkOdoooooooooc:loooooooooooooooooooooooooooooo
oooooooooooooooooodkOO00000OOOkxxddxkkkxkxxdoooooooooooooooc'.....,c;..ldcdkxocoocodlldodkd:;::::. ....... ..:do:,lddddc:;;,'..... .;;,:dkxxkxdddoolloo:;:'........... .';lc;;;,;::lddddkOOkddc'.. .;odddxkdol:;;c,......... .'cxl;,;loooxxxxO0xc'.'';dkxkOdoooooooooc:loooooooooooooooooooooooooooooo
ooooooooooooooooodkOOO00000000000000000OOOOOxooooooooooooool;..,';odxkc;dl:okkodxc:ocldodkdlcc:::. ....... ..:do:,lddddoc:;,'.. .....;;,:dkxxkxdddoollodl:c'........... .':dl;;;,;::cddddkOOkddo,.. .;odddxkdol:;;c,......... .'cxl;,;loooxxxxO0xc'.',;dkxkOdoooooooodlcooooooooooooooooooooooooooooooo
oooooooooooooooodkO0000000000000KKK0000O0000Okxdoooooooooool,..c::dkddkookxdxkxkkOkocldodkxolc:::'........ ..:xo;,ldddxkdl:,'.. ...';;;:dkxxkxdoooollodl:c'........... .,cdl;;;,;::lddddkOOkdoo;.. .;odddxkdol:;;c,......... .'cxl;,;loooxxxxO0xc'.',:dkxOOooooooooodlldoooooooooooooooooooooooooooooo
ooooooooooooooxxkO00000000OO000000K000OO000000OOkxddoooooooo:,,odcoxxddxxdddxdoddodocldodkxolc:;c;........ ..:xo;,ldddxkxkl,... ...,;;,:dkxxkxdddoollodl::'........... .;ldl;;;,;::lddddkOOkdodc... .;odddxkdol:;;c,......... .,cxl;,;ooooxxxkOOkc'..,:dkxOk::cccloodo::ooooooooooooooooooooooooooooooo
oddddddddddxkkOOOO000K00OOOOOOOOO00000OOOOO0000OOOOkdoooooool:;cl::okO00kxxkOd:;:coocldodkxolc:;c;........ ..:do;,ldddxkxko,... ..',;;,:dkxxkxdddoollodl::'........... .;ldl;;;,;::cddddkOOkdool'.. .;odddxkdol:::c,......... .,lxl;,;ooooxxxxO0kc'.'':dkxOk;,,,,,;:cl::ooooooooooooooooooooooooooooooo
kkkkkkkkOOOOOOOOO000K000OOOkOOOOOO0OO0OOOOOOOOOOkkkkdooooooooc::::cccccccc::c::clodocldodkxolc:;c;........ ..:do;;ldddxkxkl'... ..';;;,:dkxxkxdddoollodl::'....','.... .;ldl;;;,;:;cddddkOOkddol,.. .;odddxkdol::::'......... .;lxl;,;ooooxxxxO0kc'.'':dkxOx,',','''',,:loooooooooooooooooooooooooooooo
kkkkOOOOOOOOOOOOO0000000OOOkkkkOOOkkOOOOkkkkkkkkxxxxdoooooooc,'',,,,,,'''''''''cdodocldodkxolc:;c;........ ..:xo;;ldddxkxko,... .,;;;,:dkxxkxdodoollodl::'....,;'......;ldl;;;,;c:cddddkOOkdddl:,''. .;odddxkdol:::,......... .;lxl;,;odooxxxkO0k:..'';dkxOk;''''''''','';lodoooooooooooooooooooooooooo
kkkOOOOOOOOOOOOOOOOOOOOOOOOkkkkkkkkxxxkkkxxxxxxxxxxdoooooooodo:,'.....'''''',;looodocldodkxol::;c,........ ..:xo;;ldddxkxkd;... ';;;;,:dkxxkxdddoollodl::'... .,..... .;lol;;;,;c:cddddkOOkdodl;;;;,'..;odddxkdol:::,. ... .,lxl;,;odooxxxkO0k:....;xkxOk,'''','''''',',:odddooooooooooooooooooooooo
kkOkkOOOOOOOOOOOOOOOOOOOOOOkkkkkkkxxxxxxxxxxdxxdddddooooooooodool,.'''',,,,;lodooodocldodkxol::::'........ ..:xo;;ldddxkxkk:.....,;;;;;,:xkxxkxdddoollodl::'... .,..... .;lol;;;,;c:lddddkOOkdolc;,,,,,,,;odddxkdol:::' .,lxl;,;ododxxxkO0k;....;xkxOk;''''',,,'''''',;coddddddoooooooooooooooooo
kkkkkkkkkkkkkkkkkkkOOOOkkkkkkkkkkkxxxxxddddddddddddooooooooodooodl,'''',;;:ldddooodocldodkxol:::,. . ... ..:xo;,cdddxxxkd;,,;;::;;;;;,:dkxxkxdddoollodc;:'.....,'.... .;lol;;;,;::lddddkOOkolccc,',,,,,;oxddxkdolc::' .,cxdc,,::::ldxodkk;.. .;xkxOk:;,''',,''''''''',:odddddddddoddoddoodddddd
kkkkkkkkkxxkkkkkkkkkOOOkkkkkkkkkkkxxxdddddddddddxddodddddddodddodo;',',,:ododdddooddcldodkxolc;:,. ..:xo;,ldddxxxkddlc:;;,,,,,;,:dkxxkxdddoollodc::'...',,;:,. .;lol;;;,;::codddkOOxol:;;,',,,'.'::::cddool;:,............'';c::,'',,,;cc::lo:....;xkxOk:;;,,'',,'''''''',,;cddddddddooolllllllllcc
xxxxxxxxxxxxxxxxxxxkkkkkkkkkkkkkkkxxxdddddddddddxxdddddddddodddddl;,,,;:oOOxdodddoddcldodkxolc::,. ..:xo;,cdddxxxkxdoc:;;,,,,,,,;dxxxxddddddolooc::..';col;cc....;:cc;,,'''.';:c:cllcl:,,'''..'''''''',cc:::;,,'',,,,,,,,,,,,,,'',,,,,,,,,,,:::;,'.:dkdxd;,,,;;,;coc,,;;,,,,,,;:;;:;;;,,,,,'''''''''
xxddddddddddxxxxxxxxxxxxxxxkkkkkkkkkxxxdddddddddxxddddddooooododdc;;;;::ldddddddooddcldodkxool::,. .'cddc,;:::coolcll:;,,,,,',,,,;::::cloooolcclc:;,',,,:loddo:'';;,,,'''''',,'',:::;;;,,,'''''',,;,,,;;,;;;;;;;;;;;;;;;;;;;;;;,',;;;;;cccclxdlcc:;:clc;c:,'',,;;,:dxl,'''''.......''....'.....'''''
dddddddddddddddddddxxxxxxxxkkkkkkkkkxxxddddxxxxdddddddoooooooododl;;:c::lxkddddddddl;;:::lolol::,. .........,;cc:;,,,,,;:;,;:;,'''''',,,;;;;;;;,;;;;;;;;;,,,;;,,,,,;coxdl:,,,;,,,;;;;;;,;odl;;;;;;;;,,,',;:;;;lo:::::::::::ccccccc::::;;,:ccccldxddxOOOOkxollc;;::;,'',,,,,,:dd:'............'''''''''''''''
ddddddddddddddddddddddxxxxxxkkkkkkxxxxxxdddxxxxxddxddoooooooodddxxo::lc:cxkxxdoddoc,',,,,;;,;;;,,,,,,,,,,;,,,;;,,;;;;;;;;;;;,;;;;;,,,'',clllolcccc:;,,,,;;;,,''.'',;,,;cdkdlc;'',;:;collok0Ooclccclc:;,,;lollldxoloooooooooooooddooooc:;,cdoooodxxxx0OOOOO000Oolkd;',,,,,,,,,,cdd:..'....''''''''''''''''','
ddddddddddddddddddddddxxxxxxxxxxxxxdddddddddddddxxxddoooooooooodddo:',;;,:lldxoddo:,,;;;;:;;;;;;;;;;;;;;;;;;;;;;;;::::odoooc;:::;;;;,,,:xkxxkxdlc:;,;;;;;,,'''''''''',,,;:ldxdc;,,;;cddddk0Oxdddddoc;;;,:odddddkddddddddddddddddddxdl::;;lddddodxxxkOOOO0000O0kxO0c.''',,,,,,,,,:do;.''..'''''''''''''',,'''
ddddddddddddddddddddddxxxxxxxxdddddddddxxxxxxddddddddooooooooooooc;:;;;''ll;odddodl;:cccldlcccccclllllllllllll:;;lolooxxxxxdllllc;;;,;,:dkxdlc;,;:;,;,,,'',,,,,,,,,''''',,,;:loxdccccdxxdk0Okdddddl;;,,,cddddodxxdddddoooooooooddooolcc::oooooooddddO0OOOOO000kxO0c'''''',,,,,,,,,cdl,.'''''''''''''''''',,,
ooooddddddddddddddddddxxxxddddddddddxxxxxxkkkxddoooooooooooooooodo::lc;,lOOdddddddlcoooddxxodddddddddddddddddc:;:loodoxxxxxxooool;;,,;;:ll:;,;:clc;,',,,,,,,,,,,,,,,,'''.'',,,,:coxxdoddoxOOxooool:,,'':llllllloolllllllllllllllllcccc:,;ccccc::cc:coddxxkO000OxO0l'''''''',,,'',,,,col;'''''',''''',,,,''',
oooooddddoddddddddddddxxddddddddddxxxxxxkkkkkxdooooooooooooooooodocddc:ldO0kddddddlcoddddxxdddddddddddddooooocc::ooooodxxdddooooc;,,,::;,;:cccc;''',,,,,,,,,;,,,,,,,,,'''....',,,,:lodddoxddolccc;,,,'',::::;;;::;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,',,''...',:clodddk0k:.'''''''',,,,'',,,cll;,''''',,,,,,,,,',,
oooooddddddddddddddddddddddddddddxxxxxxkkkkkkkxdoooooooooooooooodookxlodxOKkddddddccooooodxoooooooooooooooooool:clcllclollllccc:;;;,,;:clcc:;,,,'',,,,,;;;;;;,,,,,,,'''''........',,,,,,,;;,,,''',,,,,,,,,,,,,,,,,'',,,,,;;;;,,,,,,;;;;;;;;;;,,;;,;,,,;llc:;,',;clo:;,,,,''',''',,,,,,,,:cc;'''''',,,''',,,,
oooooooooooddddddddddddddddddddxxxxxxxkkOOOOOkkddooooooooooooooodookkxxdxOK0xddddl::cc:::llccccccccccccccc:::;;,,;;;;;;;;;;,,,,'';:clllc;,',,,;;,,,,;;;;;;,,,,,,,,,,,,'',,,,,,,,,,;;,,,';lll;'''',,,;,,,,,,,,,,,,;,,,,,,,,,,,,,,,,,,,,'',,,'''''''''''';:ccclllc;'.'',,,,,;,''''',,;,,','':cc;'','',,,'',,,,
oooooooooooodddddddddddddddddxxxxxxkkkkkOOOOOkxdoooooooooooooooododkkxkkkO0X0l;::;,,,,,,,,,'',,,,,,,,,,,,,,,,,,,,,,,;;;;;,''...'.;oddollllccccccc:::;::::::;;;;;;;;;;;,,,,,,,,,,,,,,'''.';;:,'''''..'''''''''''''.''''''''''''','',''''',,,,,,,,''..'''''...';:cc,,:clllc:::;;;;,,',,,,,'''';lc:;'',,,'',,',
oooooooooooodddddddddddddddddxxxxxkkkkkkkkkkkxxooooooooooooooooooloxkkxOKKK0o;,,,,;,,;;;;;;,,,;;;;;;;,,,,,,,,,,,,,,,,,,,,,,,'''''',;;;;;;;;;;;;;,',,,,,,,,,,,,,',,''''''''''',,,,,,,,''''''..'''''''''',,,,,,,,'.',,,,,,,,,,,,,,,,,,,,'',,,,,,,,,''',,,,'''''''....'';:cc;,,,;:ccc:;;,,;;,,''':lc;,,,,''''''
ooooooooooooodddddddddddddddddxxxxxxxxxxxxxxdddooooooooooooooooooloocoolokKOl:,,,,,,,,,,,,,'',,',,,,,,,'''''''''''',,,,'.....''''''''',,,,,,,,,'.',,,,,,,,,,,,,,,,,,,,,,,,,,',,,,,,;,''',,'''',,,,,'''',;;;;;;;,',;;;;;;;;;;;;;;;;;;;,,,;;;;;;;;;,,,;:;;;;,,,''..'''.'''''..''',,,;;:cccc:;,,,'';cc;,,,,''''
ooooooooooooooooddddddddddddddxxxxxxxxxxxxddooooooooooooooooooodo::ol;,;:oOOddl:,'',,,,,,'.'',,,,,,,,,,,,,,,,'',,,,,,,,'.....''''''''',;;;;;;;;'',,,,;;;;;;;;;;;;;;;;;;;;;,,,,;;;;;;;,,,,,,,,,,,,,,,,',;;;;;;;;;,;;;;;;;;;;;;;;;;;;;;;,,;;;;;;;;;;;cdxdc;::;;;,',;;'........'',,''...'',,;;::::;;;cdd:''''''
ooooooooooooooooddddddddddddddddddxxxxxxxxddooooooooooooooooooooo:;;:ccclk0Okkxdo:,,,,,;;,',,;;;;;;;;;;;;;;;;;,,;;;;;;;,''''',,,,,,',,,:::::::;,,;;;;;;;;;;;;;;;;;;;;;;;;;;;,,;;;;;;;,;;::,,',,,,,,'''',;;;;,,,,',,,,,,,,,,,,,,,,,,,,,'',,,,,,,,,,,:lodlcdxddl;,:c:,'............'''''''..'',,,,,;;col:c::::
oooooooooooooooodddddddddddddddddddxxxxxxxxxddooooooooodddddddoooc,':lxkxOK0OOxddl;;;;;;;;,,;;;;;;;;;;;;;;;;;;;;;;;;;;;,,'''',,,,,''',;:::::::c:;;;;;;,,,,;;,;,,,,,,,,,,,,,,,,,,,,,,,,,;;,''''''''''''',,,,,,,,,',,,,,,,,,,,,,,;;;;;,,,,;;;;;;;::::;lolc:ccloo:;dkkl,,,''''''............''''''...''''.cl'''
oooooooooooooooodddddddddddddddddddxxxxxxxxxxxxdoooooodxxxxxxxdddc:cloxOOOK0xkxdxl;;;;;;;,',,;;;;;;;;;;;;;,,,,,,,,,,;;;,,''..'''''''',;;;;;;:;:;,,;;;;,,;;;;;;;;;;;;;;;;;;;,,;;;;;;:lcc:;;;,,,;;;;;,,';::::::::;;;::::::::::::::::::;;,,;;;;;;;collldkkOkxdollc;;cc:,;;;,,;,,,,,'''''.........''''......,...
ooooooooooooddddddddddddddddddddddddxxxxxxxxxxxddddddddxxxxxxxxxdo::ldxxxOKOloddl;,,,,,,,,',,,;;;;;;;;;;;;;;;,,;;;:::;:c;'''',;;,,,,,,cooooooloolllllcc:::::::::;;:::::::;;;,,;;;;;:ollc,;,,,,;;;;,,,',;:;::::::;;;;:::::::::::::::;;,',,,;;::::cclloodxxxkkkOOloOkdc:c::loc;,;;;,,,,'.'''..................
ooooooooooddddodddddddddddddddddddddddddddxxxxxddddddddddddxxxxxxo:;:ooodOK0kdddo;;:;::::;;;:::::::::::::::::;;;::::::cc,,''',;;;,,,,,cxxxxddddddddoooll::::;;'..';;;;;;;;;;'''',,,,cc;;;,'..',,,,,'..',,,,;,,,;:;;;;:::;;,,,;;;;::;;,,''.......;:''c:;:cdkxxxxookkxc;:;;clc;:::;;;,;,',,,,,,'''............
oooooooooooodoooddddddddddddddddddddddddddxxxxxxdddddddddddxxxdddooc;;lodkKKOdddd:,;;;:::;;;:::::::::::::::::;,,;;::::,......',,,,'''';c:::::::cloooooool::,'......',;;;;;;,........;l''l:...'''''''.;c;.......;l;,;;;,'.......'',,,',;;,'''''..',..,c,,:oo::ox:colcldxocloc:::;;,;;::cdo:,,,,,,'.......''''
oddooooooooooodddddddddddddddddddddddxxxxxxxxxxxxddddddddddddddddool:loddk0K0xdoc'.'''''',;,,:::::;;,,,;;;;:;;,'..............'''','',,'.......,cdooooool;'...........',,,,'...'','..,'.,,............,;,,;;;,''',,''.................',,;;;;;,'';;.:kd;:c;..';',:'':okxodxxxxxdolcc:;;cc;,;::::,,'....'''''
dddddddddddddddddddddddddddddddddddddxxxxxxxxxxxxxdddddddddddddddodddxdloOO0KOdc,,'......'c:,;;;''......',;,';:;'',,,'................,:::c:;''.;ooc:;,'.....'..............'',;::;,,,,'',............':lllc::;;::;'...''''''''.......,;cllc:;;:loc:x0kc;ccc;....cl,,lxocllcldxkkkkkkooxxdlllc::;,'.....''''
oooddddddddddccodddddddddxxkOkxdddddxxxxkkkkkxxxxxxdddddddddoddooldkxxkxdkOO0kdc,,'',;;,,..';,'...........''..,,;::::;,''............';dkxxxl;;;ldxo,......... ........',;:::::;ll;;lc'...........;odddo::lddl;.......'..........,,:odoo:;:oxdodk0O:.'',,',':kOl;:oc':;';oxxdoodxoodxkkkkkxdoc:,..''',,,
::::ccclloool,.,coddddddl,,codxxddddxxxxkkkkxxxxxxxdddddddddddddooddodxkkO0KOddddc;:cc::;;;c:.................,;clc::::,,''.........',:xxxxxdlldddd:........ .....',;;::::::oooodo,...........;odddocldxd:;,,;,'''''''''','.',,:ooooccoodxddkOOc''....cloOOd;:l;.,c,;oxd:;:coc;lccldddxxxol,...',,,,
;;;;;;;;;;;;:::::ccccccl:',;;:odddddddxxxxxxxxxxxdddddddddddddddoodxxxkOkO0K0xoddlcodoc::lxo:'...............,;cddl::::;;;,.........',:xxxxxxxxxdo:,,...,'.. .....',;;::::ccdddddx,''.........;odddddddxoc:,;:,...........'.',,:ooooooooxxddkOOc.,;;''lddOOxc:oc'lOdoddlc;:ll;.;,,lddoloo::,...',,,,
;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::ccccccllllodxxdddddddddddddddddolodlccllodkOxoddlcooolclddc;,;;'........';..,;cdo:::::;;,'.........',cxxxxxxxxxdl:,''',,.. ....,,;;::::lcdddddk;... ...;odddddddxxol,.,'. ..',;,:ooooooloxxddkOOo'.....cddOOxdddlcxOxlcxkol;lx;.ll':oc;;cc,:,...'''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:lodddddddddddddddddoloo:;,,;ldkkolldlcoooooodlcc;','....... ...';;clc:::::;;,'... .',cxxxxxxxxxdddc,..','. ...',,;;::ccccdddddOl... ..;ododddddxxo:,',,. .';,;,:oooooolodxddkOOo,..'';xxdOOddkxdoxOxokO;,oolxc;kx;;lll:cc',,........
;;;;;;;;;;;;;;;;;;;;;::::;;;;;;;;;;;;;;;;;;;;;;cllllllloodddddddl:cddlcllk0Kk,.:kkdoooododxdl;';;. . ..;;;;:c:::::c:;;,... .',cxxxxxxxxxddxo;'.':, ..',,;;::ccccdddddOd'.. ..;odooooooxxl:;'';. .;,;;:ooooooloxxdxkOOo'..',cxddOOdxOxddxOxdkl'.ckddodkxdkkldlcc;ol'''.''''
:::;;;;;;;;;;;;;;;;;::::;;:;;;;;;;;;;;;;;;;;;;;;;;;;;;,,;:::::cc:::dkkxxxk0KO,.xOddoooooodxo:;',;. .. ..:c;;::::::cooc;,... .',cxxxxxxxxxdddc,,';l:.. ..',,,;:cccccdddddOx;.. ..;odooooooxxoo:,;:'..... .';;;;:ooooooloxxddkOOo'..';lkddkOdkKxddxkxkx:''c0kdddkkkO:.;xxdoxo,''.''''
::::::;::;;;;;;;;;;;::;;::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,;:ldkOxdk0K0::xkdddooooodxl:;,,;'..... ...;c:;:::cllddxxo:'.. .,,:xxxxxxdxxdddc;'.',,'. ..',,,;ccccccoddddOOc.. ..;odooooooxxodo:;:'..... .,;;;;:oooooolodxxxkOOo'..';oxddkkxO0ddoxkxkd,''c0kdddkkkd;.;xkddxx:,''''''
:c:::::::;;;;;;;;;::::::::;:loooc;;:;;;;;;;;;;;;;;;;;;;;;;;;;;;;:clodxOkdk0K0c;:,:ldooooodxool:::'..... ..;c;;;cloddddxxd:'.. .',:xxxxxxdxxdddooc'',' ..',,,;ccccccoddddOOl.. ..;odooooooxxodo:;:'... .';;;;:oooooolodxddkOOo'...;oxddOkxOOddoxkxkd,''l0kdddkkko,':OOddxdc;''''''
::c::;:::::::::;:::;;:::::::clddc::;;;;;;;;;;;;;;:::::::;;;',;;;::;;:ccldk0KKl;:,lkkdoooodxoddc::'.... ..;c;;:oddddddxxo;'.. .,,cxxxxxxdddoooloc::lc,'''..... ..''',;ccccccoddddOkc.. ..;odooooooxxodo:;:,... .. . .';;;;:oooooolodxddkOOo'...;oxddkkxOOddoxkxkd,',o0kdddkkkl,'c0Ododdlc,'''''
::ccc::::::::::::::;;:;;:::::;;:llc:;;;:okxc;:;;;::::::::::;,''..,::,...oO0KKl;ddxOKOdooodxoddc;:'.........;:;;:oddddodxxl;'.. .,,cxxxdddoooooooooodoodddxdooolc;'....''';ccccc:oddddOkl''. ..;odooooooxxodo:;:,........ .';;;;:ooooooloddddkOOo'...;okddkkxOOddoxkxkd,',o0kdddkkko,'c0kdoddlo:,,,,,
:::::;;;;,,,,,,,,,;;;;;::::::::;;;:;::::coOo;:;::;:::::::::::;;'.;cdkxc':x00Kl,:coxkOdlxddxdddc;:,.........;:;;:oddooodxxl;'.. .,,cdddddddddddddddddddodddxxxxxxxxoc;'..';:cccc:oddddOOd:;. .';odooooooxxodo:;:,........ .';;,;:ooooooloxdddkOOo'..';okddkkxOOddoxkxkd,',o0kdddkkko,,l0kdoddlolc::::
ccc:::;;;;;;,,,,',,,,,,',,,'''''''',cdl,.,xOc;:::::::::;;::;;,'.;odOXKOdcx0KXx;,,,cxd,'oddxddoc;:,.........;:;;:odoooodxxl;'.. .,codddddddddddddddddddoodddxxddxxxxxxo:,.,::ccc:oddddOOdc;. ..;odooooooxxodo:;;'. ...... .';;,,:ooooooloxddxkOOo'...;okddkkxOOddoxkxkd,.,o0xdddkkko,,l0kdoxdlolc:ccc
,,,,,'....'''',,,,;;;;;,,,,''''',,',;,,:l:l0x;,,,,''''',,,,,''''ldld0OOkoxOkOOo;;okkxo;:xOxdooc;:'.........,;;;:odoooooxxl;'.. .:lllllollllllccllllllcc:::llllcldddxxxdo;'::::c:oddddOOd:;. ..;loooooooxxodo:;:'. ... .';;,,:ooooooloddddkOOo'...;okddkkxOOddoxkxkd,',o0kdddkkkl,'l0kdoddlolc:ccc
:::;,',''''''''......................':cOkck0c'''.........''..;ooo:;lkxddx000KOcoOkdkOkkkOkdooc;;'.........;:;;:oooooooxxdo;.,. .'...'''....................'.';:''',;;;:;';:::::oddddOOd:,. ..;ldooooooxdodo:;:,........ .,;;,,:oooololoddddkOOo'..';okddkkxOOddoxkxkd,',oKkdddkxkl,,l0kdoddlolc:ccc
cccc:::;;;;;;;,,,,''''''.............'c;lOockc................lxodxl:ckOkk0K0KOlcccloxkxodd::lc;;,.........::;;:oooooooxxdxc'c: ............................'.'lo,''''''...,:::::oddddOOd:,........;ooooooooxdodo:;:;,,,,,,,,,,,;;,,:oooololoddddkOOo,'',;oxddkkxOOddoxkxkd,.,oKkdddkkko,'l0kdoddlllc::::
dddloxxdxoccc:;;:lollc,'''''''',,'''.';;;xxlOl................;odox00kk00O00KKKkc:l::odxxxc,odc;;,,,,,,,,',::;,:oooooooxxdxc:dd:'................................;odc'.......'ldl:::oodddOOo;,,'......;loooooooxxodo:,,;;;;;;;;;;;;;,,,:oooololoddddkOOo::;;;lkddkkk0Oddoxkxkd'.'o0xdddkxkl''l0kdoxdlllc::::
dkkdkkxkOOkdolllldddxxolc:::::;ldl;::;cc;okk0x;.......,,......,llcldxkkxOKKKKKK0kkxc;;;dkOOoddc,,;;;,;;,,,,::;,:oooooooxddd:',,;;'..',,,;;;;;,,,,,,,,,,,;:;;;ldlc,.':ooolc:..';;;;;:oodddOOdc::;,,,,'';ooooooooxxodocccccccccccclcc:,,,:oooololoddddkOOxdoooodkddkkkOkddoxkxxkdookKxdddxxkl''l0kdoddlllc::::
oooo0XKXOol:;;;:oOOO0kdc;,;:cddxkocoooxkdddxK0oclc;,.'cc;,::..',;;::::ccok0xlcl:col;..;dxxxdddlcclllccccccclc;,:oooooooxxdxl..,''''';;,;;;;;;;;;;;;;,;;,;llloddxkc.;dkxkkxd, .....',oodddOOxlll:,,,,'';loooooooxdodolllllllooooolllc,,,:oollllloddddkOkkxxxxxxxddkkxxdddoxkxddxxxxkxdddxkkxold0kdoddlllc::::
oolo0XKXx::col:cxKKK0l;;:ccld0KKd;:;;oOkl:;dK0xdo:'..';:lol;;:;::c::c;;:::dd,.,,:c:'',cxxdxxxollllllllllllllc;,:oooooooxllxl,;c;',:lc'',,,''''''''''',,,,lkkxc,,;:ldxxdxkkko,..'. ..:ldddOOxlll:,,,,'';loooooooxdodollllllooollllllc,,,:oollllloddddkOkkxxxxxxxddkkxxdddoxkxddxxxddddddkkddxxdxddoddlllc::::
lldOKKKXOdclxo:lkK0KKo:cddc;lOXOl;:,;od:..;dOKo,,,'...';oxdokOoooclccol',;:lc;:cdxl'':loclodxdllllllllllllllc;,:oooooodo;;:,;col:clc::cccccccccccccccccc:;:ll;,,';:cl:':xxxxxoc:;'..':dddOOkoll;.',,'';loooooooxdodolllllol::lollllc,,,:ooolllloddddkOkkxxdxxxxddkkxddddoxkxdooooodddddxkddxxddododdlllc::::
..lKKKKK0O:.':k00KKKK0x::c;;;ldlll;'':lo:.,d0Oo,.''....:l:ldxkd:cldoldxocc;:dxxk0Xd,'cl'';cdxdoooooo:,coooloc;,:oooooc;'...'.''',',;:::::::::::::::::;;;;;'..''''.''',;::ccc:::;,,'.',cloOOkolc,..'''';ldooooooxdodollcc::;,,;:ccclc,,,:ooolooloddddxOkkko:oxxxddkkxddddodkxdddddddddooxxddooooddoddlllc::::
..lKKKKKKO; ,O0OK0K00o. .,;:;;::;',;,;cxl:d0O:....'..'dOxc,;ccc;;clodxxdddddkxddkk:',,';lllodlc:::;,',;:::lc;,:oc,:o:..,;,.....',,,,;,,,,,,,;;;,,;,,,,,,''''''''''''';;;;;;,,,,'.''...'oOOx:,........;loooooooxdodo:;,...........,:,,,:ooolloloddddxOkxc,',ldkddkkxddddodkxdddddddddooxxddddddddoddllc:::::
..lKXKKKK0; ;O0OK0K00d. .clcokdcc'';cl;lkcckkl,....'cddxxoc::;,,;:clllc,,:;;:;,,,:;codc;cccod:,'..........:c;,:c,.':;...''....''.''''''''''''''''''''''''''''''''''''''''''''........;cdOOxc,. ..;loooooooxdodl;;,. .,:;,,:oooololoddddxOOd'...:dkddkkxddddoxkxdddddddddooxxddddddddoddllc:::::
. cKXKKKK0; ;000K0K0Kd. .xxoOKkoc'..okdOOxOXx;....;cc::cooooodl;:cllodo:cc,.......,:cxkddxxko;:;. ........:c;,:l:::c:,:;;::,;c:,',,,',,,,,,,,',,,,,,,,,,''''''''''';cc:;;::;;;'','''.:lcoooc;. ..;loooooooxdodo;;;. ..... .,:;,,:ooooooloddddxOOo'..':dkddkkxddddoxkxdxddddoldooxxddddddddoddllcc::::
. cKXKKKK0: ;000K0K0Kd. .kKkOkxoc. .:odkkxdxc....';'..,ccccllloooodocodool;.......',;oOOOkOOdc::. ........:c;;:ol::lo:;'....'',,.......''..''''''..........''''..'';llllc:c::c,,c:cc,:coOdlc;. ..;odooooooxdodo:;:......... .,:;,,:ooooooloddddkOOd,..':dkddkkxdddddxkxddlloc'.;ldxxddddddddoddllcc::::
. cKXKKKK0: :000KKK0Kd. .kK0KKOko..;odxkkdooc;c:;:ccc::;,,;;:::ccclllllol:,;;'::,;;;:looooooddc:'.........:c;;:odollc:,... ...,'.............''.............''...'.,:,;c'......':codcooo0koc;. ..;odooooooxxodo;::'........ .,c;,,:ooooooloddddkOOd,..'cdkddkkxdddddxkxdl,':;...;okxddddddddoddllc:::::
..l0KKKK0Oc..:0K0XKXKKd. .kK0X0dl:..'clllllllc:cc::cccc:::;;::::::ccc:ccc:;;:;,;;,;;;;cooollodoc:,.........:c;,cooodollo;.''. ':'...''''''...............''...,'...'l;'c;.''.. .;;;odloooOkol;. ..;odooooodxxddo::c'........ .,c;,,:ooooooloxdddO0Od,..'cdkddkkxdddddxkx:,;::lc..;okxxdddddddoddllc:::::
;;lOK000xdolccoooddoodc'.'ldol:,'...'ldoddddoc::c:cdxdl:::::::::;:clloool:;;:;;:;,:,,;oKXXXKXOc;c,.........:c;;coooooold;.,'. ;x:.',,,,'''.. ....''''.'c;...:dc:dolllc'.'olcddldoo0kol;. ..;odooooodxxddo::c'........ .,c;,;cooooooooxdxxk0Oo'..'cdkddkkxxddddxOd....;ld:..:dxxdddddddoxdlll:::::
l:ck000Oxxxxxkkkxxkxxdddddoc,'''....l0OOOO00kdlclclOKxc::::::clloxxkkkOkl::::;;:;;:,;:ckK00000o;c,.........:c;,coooodl:d:,l;..:xc',,,;,''. .''''''lc...:dccdkkkOk:.'olcodlood0kdl;. ..;oddoododxxddo::c,........ .;:;,;cdoooooodxdxxkOOo,..'cdkddkkxxddddxOo. ..ldo;..lkkxddddddddxdlol:::::
llcd0Oxdoddddxxxxxxxdododddc,''''...o0xkxooxOOdlkxok0dc:::::coxxdodkkkOko::cc::c:;;;;;:odddddko;c;........':c:;cooooooox:;d:..:xc',,,;,''. .'''''lo,.':oc:oc;:lxc.,olcodlollxdlo:........;lollllllodddl;;:,....'....',::;,;ccccccccldxodxxl;,',:okdoxxxdddxxxOo. .;;,',,,okkxddddddddxdlllc:cc:
::;;::;;;;:::;,,'''''................lxdllodxkdoOxlk0dcc:c:ldxxxkxdkkO0kl:cccc:c:;;,,;ccccc:lxc,,,,,,,,,''';ll;,,,,,,,';,:d:..:xc',;,;,,'. .'',''cd,';:oc:o,.,cdl';olcolll::lc;ll,'.....',;;;;,,,,;looc;;;;;;;;;;;;;;;cl:,,,,,''''';ll;;::ccccccoxc;::cdxkd::cc;.... .;:,;lloxxxxdxdllcldlccccc
.........'c;,;;,:ll:,.................,dOkkOO0koOxlO0dcccc:cokkxkkkkkxkkoccccc:c::;,;:cllc:cdl::::::::::::::c:;;;;;,;,,;';d:..:xc',;;,,''. ..'',''cd;:l:oc:o,.:lxl';ol:;c::::loc:ol:,...';:::::::ccclcclllllclllllllllc::;;:::;;;;;,;;;;:lllllcllllc:cllllol;;:cc,.'..,::;,;:lddddddo;,;;ldlcccc
........,odxOkxxxxkd;''','.......... .;kK00KkdOxlk0d:c::::cddxxkxxkkxxxl:cccccc:;;::clc::oc,,,,,,,,,,,,,'.'............;d:..:xc',;;,;;'. ..... .... ..'',',ld,;l:dc:o;':lxc.,ol.......'''.,:,'.......'''''.'.'.';;;;;;;;;;;;;;;'...................''''',;:;;'.',''',,'',,'....,::;,,,,,,;:c:c;,;,.;:,;;;
odo:;;,';xd::lO0xkOx:,,...''........ ,OK0KkdOxlx0xc:c::clooloxkxdddkkl:clcccc:::::clc:oo............................ ;d:..:dl;;;;,:c,. ........... ..',,''co,;c:dc:o;':cxc.,dl.......'...'............................................................................ ',..,c;... ................
WNWWNK0xdOo..;K0kkOkl;' ,,........ .xK0KkoOkok0Ooccc:coxxddxxkkkkkOkoclc:cc::;cxkkxxOo.............................,d:..:doll:;,:l:. ..... .......',,',co,;c:dc:o;':cxc.,dc......:ol;'..................''..'..'''''..''.......''''''....''..':c:::::::;..,:::;,...'''';;..,::...'.',,,,,'..'........
WWWMWWWMMWNKOOXXOkkkocc:ccll:loc,... .xX0KkoOkok00klcccccclooxxxxxkO00occc:::;::oOK00O0d'.'''.'''''..................,d:..:xolol:,:lc. ..... .......',,',co,;c;dl:o;':cxc.,dc..'';,lxdl:,.......''''''''',c:'''''''''''''''''....''''''''',:::;:dddddddddd;'lddddxc.:dodc;,..,:c,'colloddooo,,l:'......
dxOkxxxxO0kddkXNX0k0KKNWNNNKXWWN0:...,'''l0KKKOx0OxO0OOolooddxkkkO00000000d:::;:c;:lx0KKK000d;,',,,,,,,'..............'...l:..:xoloo:,:ll' ........... ..',,',ld;,c:dl:d;.;cdc.,oc.'::c:lxddl,.'.....'''''''',:cc,''''''''',,,'''''...'''''''';:llllcolclooooooc,:lloodl,:llo;;,..,;:;,;::ccllclo:,ll;......
','... .lO:..:O000KNWWWMWNKKXXK0k:.....'o0000OxkkxxkkkkdllooodxxxxxkkOOOOOd:cxlcdcccd0KKKK00Kx:;::::::;'.....',''''','....cc..:kdlol:,:lo, . ..... ..''.,ox;,ccdlcd;';:dc.;dl,,ccc:lxdl,........',,,,,',:cclc;::::::::::;'''''..';;;;;,,;::clllcc:::cllccl:',;:ccl:';:;,,''.........''.;:,,:'.;,.......
.. ...,oO; ;OOdxkk0KOkdoc:;,'..... .d000Okdkkdxkxkxl:cllodddxxkkkkkkkko;cdccxl:cxKKKKKKKKOl;,;:::;'......,c:::,....'.'cl''lxdoolc,:lo, . ...... .'''';ox;,ccdoldc,ccoc':do:;ccc:lxd:,'.......;:::::::::clc::::::::,;;''''''..,ccccc:::::clllc::lclllccl:,:lclcl:,,,''''..........,,',:,',,';,',,..'.
;:;,;;:ldkl;;lkkxxdloo:;;;;:;;;;:cccc:.,kK00OxxOxxkkkOxcclooodxxkkOOOOOkkxc;cd:cxc:cxKKKKKKKK0d:cclllc::::cccllcllc:::looccllcllxkdol;cdx; .......... .',',clloc:ccldxdxocddccccdoloooloxd;','...',cloolllllloodolclllc:;..'''''''';looooooooooddddol::looccll:;;:coloc:;,'.......'.,;..,;,cl;'::',:,.,'';'
:;;lolll::cc:::::c:::clccc:::::;;cllll''kK00OddOdoOOkOd:lloodxxxkkOOOOOOOd:;ld:cd:;:xK0KKKK0K0l:llc:::::::;;:,,clc;;;;;;,':cccccdkdol:cdx;........... .,,.,clcccccccdxxxdldd::;;l::l:c:lkxo;;:,,,:cccc:::cccclclol::::::;'.,;,';;;:cccccccccccccccllc:;:::;;:;;,',:cccc:;:;,';:,,c;.,,...'',;'':,..........
,';l:;:l:;cl:;::cc;;,;c;,;,;;';,,lc,:c..x0OOklokolkkkko:cllloodddxxxxkkxxo:;loclo;,:dOO0000OOOxo::l:::cccc::;',:;:c:cc:c,,:;:cccodoll:cooc;::::cc:::;;;:cc;:lolooooloxkxkxdkkdoololloll:lOOkc..'..,;;;;;;;,;;;:lodc;:::::c,.,;,,,,;;:ccc:;;;;,,,,,:c:;;ccccccl:,:cccccccc:;:::lo:,;,..'.... .'. ..
c:;:'.';;::;:;,:;,;,.;;';,';;;cc;::;coloxkkOOxkOkxkkkOxxkkkxkkkkkkOkxkOkkkkkkkkkOxdxkOO0OO0OOOOkkkxxxxxxxxxdl::c;;::cc::;,;;;;;;;;;:ccc:;cdxxddddxkkkkkkOkxxxxxxxxxxxxxkkkkxddxOOkxxxxxddxxdc;;,,;:cccclccccccdO00dloolloo:;l:,,::;looooolllllllllodoooddddddd;'lddddddoocclolodc,,;;,,,....................
dl:c;,,:cooloooododoodxxkkxkOO00OkO000KXKKKXXXXXXXXXXXKKXXXXXXXNXXXKKKXKKNXNNNXXXKXXXNXNNNNNNXXKKNXXNXXXXXXKOO0OkkOOOkxkkddooooollcccc::::clll:,:oollllllc:llclcclc:clcllc;,,:c;cllll:cllllllllllooodddxxxkOOO0O000KKK00KKddKOxxxolkXKKKKKKK00000000KKKKK00000dlk000000Okxxdddddddloxddddodxxxxxxxxdddddddoo
xc:::::coooolloddddllodddolodxxxdodxxdxkO0O0K0K000K0O00O000000000O00OO00OKK00K000000KK0KK0KK00000KK0KKK0K0KKkkkkxxkkkxdxxxddxkkkddkkkxl;;:loooc:clloooooolcloooloolccooool:cccc:coooolcodddddddlloooooodoodddxxxxxxxolxxxxookkkxdllxxxxxxxxxxxxxdddxkkkkkkkxxxxxxxxxxkkkkkkkxxxkxxkkkxxkkxkkkkkkkkkkkkkkkkkk
l';:;:lllllcc:cc:::;;;::::;;:;;:;,;;;;:clooddodddddooooloddoodoodooolloolodddddoooloddoddodxddxooxxdxxddxoddollllllclllllclloololloooolccclollooolllllllllllllllllllllloolooooooooooooollooooooooooooooooooooooooooo;.'coooooooooooooooooooooooooooooolllccccclllllllllllllloooooolllollllloollooollllllllll
- Last Updated: 18 November 2023
-
Welcome to Digital Travel Guide SRL. This privacy policy outlines the types of information we collect
through
our Weather API and how we use, maintain, and disclose this information.
- Information Collection
-
- API Usage Data: We collect information on how our API is accessed and used. This may
include
details like endpoint access times, request parameters, and IP addresses.
- User Data: If users are required to register to use the API, we may collect personal
information such as names, email addresses, and organizational affiliations.
- Use of Information
-
The information collected is used to:
- Improve and maintain the functionality of our API.
- Monitor and analyze usage trends to enhance our service.
- Provide customer support and respond to inquiries.
- Ensure the security of our service.
- Data Sharing
-
- We do not sell or rent user data to third parties.
- Data may be shared with third-party service providers to the extent necessary to provide our
services (e.g., cloud hosting providers).
- We may disclose information if required by law or in response to legal requests by public
authorities.
- Data Security
-
We are committed to protecting the security of your data. We employ a variety of security
technologies and measures to help protect your information from unauthorized access, use, or
disclosure.
- Changes to This Privacy Policy
-
We may update our Privacy Policy periodically. We will notify users of any changes by posting
the new Privacy Policy on this page.
- Contact Us
-
If you have any questions about this Privacy Policy, please contact us at
data_protection@romaniatravel.guide.