;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;........;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;........;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;........;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................----------------,,,,,,,,9999999988888888((((((((????????>>>>>>>>========================================::::::::888888887777777788888888****************************************))))))))????????8888888899999999,,,,,,,,----------------........????????........----------------,,,,,,,,9999999988888888((((((((????????))))))))****************************************888888887777777788888888::::::::========================================>>>>>>>>????????((((((((8888888899999999,,,,,,,,----------------................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;................;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>;;;;;;;;>>>>>>>>========================////////999999999999999988888888++++++++88888888************************++++++++++++++++>>>>>>>>9999999999999999::::::::;;;;;;;;;;;;;;;;........>>>>>>>>........;;;;;;;;;;;;;;;;::::::::999999999999999977777777>>>>>>>>++++++++++++++++************************88888888++++++++888888889999999999999999////////========================>>>>>>>>;;;;;;;;>>>>>>>>777777779999999999999999::::::::;;;;;;;;;;;;;;;;........;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>><<<<<<<<================;;;;;;;;<<<<<<<<888888889999999999999999999999999999999999999999,,,,,,,,--------,,,,,,,,9999999977777777>>>>>>>>99999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::9999999977777777>>>>>>>>7777777799999999,,,,,,,,--------,,,,,,,,999999999999999999999999999999999999999988888888<<<<<<<<;;;;;;;;================<<<<<<<<>>>>>>>>7777777799999999::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>;;;;;;;;<<<<<<<<<<<<<<<<////////::::::::********9999999999999999,,,,,,,,................9999999977777777777777777777777777777777>>>>>>>>::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------::::::::77777777>>>>>>>>7777777777777777777777777777777799999999................,,,,,,,,9999999999999999********::::::::////////<<<<<<<<<<<<<<<<;;;;;;;;>>>>>>>>77777777::::::::--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>--------9999999999999999--------????????>>>>>>>>----------------,,,,,,,,88888888888888887777777777777777666666666666666677777777>>>>>>>>::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::88888888>>>>>>>>77777777666666666666666677777777777777778888888888888888,,,,,,,,---------------->>>>>>>>????????--------9999999999999999-------->>>>>>>>88888888::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>;;;;;;;;--------........................<<<<<<<<9999999988888888888888887777777777777777666666666666666666666666((((((((((((((((>>>>>>>>--------;;;;;;;;--------;;;;;;;;........;;;;;;;;>>>>>>>>;;;;;;;;........;;;;;;;;--------;;;;;;;;--------77777777>>>>>>>>((((((((((((((((6666666666666666666666667777777777777777888888888888888899999999<<<<<<<<........................--------;;;;;;;;>>>>>>>>77777777--------;;;;;;;;--------;;;;;;;;........;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>;;;;;;;;........--------99999999999999998888888888888888888888888888888888888888666666666666666666666666555555555555555555555555>>>>>>>>;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;77777777>>>>>>>>55555555555555555555555566666666666666666666666688888888888888888888888888888888888888889999999999999999--------........;;;;;;;;>>>>>>>>77777777;;;;;;;;;;;;;;;;<<<<<<<<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>--------99999999::::::::99999999999999998888888888888888888888887777777788888888777777776666666666666666666666665555555555555555>>>>>>>>--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>>>>>>>>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;--------88888888>>>>>>>>55555555555555556666666666666666666666667777777788888888777777778888888888888888888888889999999999999999::::::::99999999-------->>>>>>>>88888888--------;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;