__@@@@@___@@_____@@__@@____@@__@@____@@__@_____@__@@_____@@__@@___@@___@@@___@@________@__@@_____@@__@@__@@____@@@@__@@___@@@@@___@@@@@@@@@__@@@@@_____@@_@@_@@__@________@@_____@@__@@__@@____@@__@@@@__@________@@_____@@__@@___@@___@@___@@@__@@@@@@@__@@_____@@__@@____@@__@@____@@_