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