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