__@@@@@___@@____@@__@@____@@__@@____@@__@_____@__@@___@@___@@@___@@___@@__@@___@_____@__@@__@@____@@@@__@@____@@@@_____@@@@@@__@@@@@_____@@_@@_@@_____@@___________@__@@__@@____@@__@@@@_____@@_____@_____@__@@___@@___@@___@@@_____@@______@@@@@___@@____@@__@@____@@_____@@____