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