__@@@@@___@@____@@___@@@@@@___@@@@@@@@__@_____@__@@@___@@__@@____@@_______@@___@_____@__@@@@__@@__@@____________@@_____@@@@@@__@@_@@_@@___@@@@@@______@@___________@__@@__@@@@________@@____@@______@_____@__@@___@@@__@@____@@___@@________@@@@@___@@____@@___@@@@@@___@@@@@@@@_