__@@@@@___@@____@@__@@@@@@@@____@@@@@@___@_____@__@@@___@@__@@_____@@__@@____@@__@_____@__@@@@__@@__@@_____@@__@@_________@@@@@@__@@_@@_@@__@@@@@@@@____@@@@@@_________@__@@__@@@@__@@___@@__________@@__@_____@__@@___@@@__@@____@@___@@____@@___@@@@@___@@____@@__@@_____@@___@@@@@@__