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