#^#^#^#^##^#^#^#^%^##^%^#^#^%#^#^#^%#^#^#^#^#^#^#^#^##^}##*#^#^%%%%%%#^#^#^#%*%*%*%%*%*%*%%*%*%*%+%+^=%=%=%*%*%*#*}{^{%{%}>~%>~>{^,>{*,>*{*}#*}$<*}$<*$}*{?*${*<$}*<$]*>*