home *** CD-ROM | disk | FTP | other *** search
/ Classic Fond 56 / ClassicFond56.iso / games / chesstal.ace / Datafile / egtbs / 4man / kqbk.nbw < prev    next >
Text File  |  1998-11-27  |  2MB  |  1 lines

  1. ~|}{}||}|{~~~|}||~}|}~~~~}|~~|}~~}~|}|}~~|}|}|}~}|}|}|}~|}|}|}|}~~~|~|}~~|~~~~~~|~~}~~~~~}~}~~~|~}~}~~~|~}~}~~|~|~}~}~~~~|||}|}|}~~~~}|~~}}~~}~}}}}~~|}}}}}~}|}}}}}~|}|}}}}}~~~|}||||}}~~~~}|~~|}~~}~|}|}~~|}|}|}~}|}|}|}~|}|}|}|}~~~|}||||}|~~~~}|~~|}~~}~|}|}~~|}|}|}~}|}|}|}~|}|}|}|}~~~|~}}{~~}~~~~~}~~}~~~~~}~}~~~|~}~}~~~}~}~}~~}~}~}~}|~~~~|~}}~~~}~~~~~}~~}~~~~~}~}~~~|~}~}~~~}~}~}~~}~}~}~}~||}|{}}~~|}|~}||}~}}|}~|}}|}|}~||}|}|}{}|}|}||}|}|}|}|~|}|{}}{~|}|~}~{}~}}|~~|}}|}|~~||}|}|~{}|}|}|~}|}|}|}|||}|{}}{~|}|~}|{|~}}|}~|}}|}|}~||}|}|}{}|}|}||}|}|}|}|~~}|~||{~~|~~}~~~|}|~~~~}|~|~~~|~|~|~~~|~|~|~~|~|~|~||~}~}{}||~}}|~~~~}}~}{~~}~}{}|~~}}}|}|~{}}}|}{~}|}}}{|{{}|}~}{}}~~|}|~~}~|}~~}}~|~}|}|}~}|}|}|}{}|}|}||}|}|}|}|~~~|||}|}|||~~~|||~~}|||~}|}|~|||}|}|~|||}|}|~||||}|}|||}|{{|~}|{{~}||||~}||||}|||||~|||||||{||||||||{||||||~z}|{||{}||{~}~|||~}||~{}||||~|||||||~{||||||~|{||||||~|~|{}||~|}|~}~~|}~}||~~|||}|~~||}|}|~{}|}|}|~}|}|}||||{~|{||{~||{~~|~||~}|{|~|~||{|~|||||{|{|||||{||{|||||{{}}||~||||~~|||~~|~||~~|||~|~||||~|||||||||||||||||||||||~{}|{}}{~|}|~}~~|}~}}|}~|}}|}~~||}|}|~{}|}|}|~}|}|}|}|~~~|{||z||||~~|{||~~|||{|~||||{||||||~{||||||~||||||||||}|{||~||{{~}|{|{~}|||{|}||||||||||||{||||||||{|||||||z}|{||z|||{~}|{{|~}|||{{}|||||{||||||{||||||||{|||||||{~|{|}{~|||~~|~||~}}{|~|~}|}||~|}|}||{||}|}||||||}|}|z}||||~|{||~~|{{~~|~||~~|||~|~|||{|~||||||{||||||||{||||||~{}|{|}{||||~}~|||~}}||||}}|}|~|||}||~{||}|}|~||||}|}|||}|{}|{~|}|~}|~|}~}||}~|}||}|}~||}|}}{}|}|}||}|}|}|||~~~|{{|z||{|~~|{||~~|||{|~|||||{||||||{||||||~|||||||||{}|{|}{}|||~}||||~}}||||}}|}|||||}|}||||}|}||||||}|}|||~|{||{~||{{~|~||~}|||~|~|||||~|||||||{|||||||{||||||z}|||{|~|{{|~~|{{~~|~|{~~|{{~|~||{{{~|||||{{{{|||{{{{{||||{~z}|{|}z}|||~|~|||~}}{|||}}|}{~|||}|||~{||}}{~||||}{}{||}|{||{|||{~}|{||~}|||{|}|||||{|||||||{|||||||{|||||||{}|{}|{~|}|~}|~|}~}||}~|}||}|}~||}|}|}{}|}|}|}|}|}|||~~~|{||z||{|~~|{|{~~|||{|~|||||{|||||||{||||||||||||||||}|{|{z|||{{}|{||{}|||{|}|||||{|||||||{|||||||{||||{||{~|{||{~{|{~~|~{|~}|||~{~|||{|~|||{|||{||||||||||||||z||{{{||~|{{|~~|{{~~|~|{~~|{|~|~|||{|~|||||{|{{||||{|{{{|||{~z||{|}z||||~|~|||~}}{{||}}|}{~|||}|||~{||}|}{~|||||}{||}|{||z}{|{~}||{|~}||||{}|||||||||||{|{||||||||{||||||{}|{||{|||{~}|{||~}|||{|}|||||{|||||||{||||||||{||||||{}|{}|{~|}|~}|~|}~}||}~|}||}|}~||}|}|}{}|}|}||}|}|}|||}}|}||}~~}|}}}|}|}~}~|}~}}}~|~}}}}}~}}}}}}}~|}}}}}}}}|}}}}|}}~~}|}}||}||~}~|}~}|}~|~}|}|}~}|}|}|}~|}|}|}|}}|}|}|}|}~~}|}}}}}|}~}~|}~}}}~|~}}}}}~}}}}}}}~|}}}}}}}}|}}}}}}}~~}|||}}||}~}~|}~}}}~|~}}}}}~}}}}}}}~|}}}}}}}}|}}}}|}}~~}|}|}}|}}~}~|}~}}}~|~}}}}}~}}}}}}}~|}}}}}}}}|}}}}|}{||}||}||}|}}}|}|}}|{}}}}|}}{}}|}}}}{|||}}}}|{|}|}}|}{{~~}|~}||}~}|}~}~~}|~~}~}|~}~~}|~}~}~~|~}~}~|{~}~}~|}{}}~~}|}~}|}}}|~}}}~~|}~}~~|~}}~}|~}~}}~|}}~}~|}}}}}~|~|}|}|||}||}|}|}}||}}|}}}}}|}}}}||}}}}}|||}}}}|}|}|}}|}|{|||||}||}|}|}}||}}|{}}}}|}}{}||}}}}{|||}}}}|{|}|}}|}|}~~}|||{{||{{}}~{|}|}~{~}||{}~}||{|{}~||{|{|{}|{|{|{|{{|}}|{{{|}{}{}}|}{}|{}}}}|{}{}}|{}|}{||{}|}{{{{}{}{{{{|}||}}||}}}}|}}}}|}|}}}}}}}}}}{}}}}}}}{|||}}}}}{|}|}}}}}}~~|||}||||||~}|||~}|}|~}|}|}~||}|}|}~|||}|}|}||||}|}|}{}||{|{{|{|{}}||{}||}|}||||}|||||||}||{|||||}{|{|||||}~~}|{{{z|{zz}}~|{}}|}~|}|{{}~}|{{{{}~|{{{{{{}{z{{{{{{{|}}|{{{}}{}|}}|}{}}|{}}}|{}{}}}{}|}{||{}|}{{{{}{}{|{{}|}|{|}||||||}}|||}}{}||}}}|}|||}|}|}||||}|}|}||||}|}|{}|{|}}||}||||||}}|||}}|{||}}|}{|}|}|}|{||||}|}|{||||}|}{}{}||{|{{}{}{}}|}{}||}}}}|||}}|||}|}}||{}|}||}{}{}||||{~~|||}||||||~}|||~}|{||~}|}|{||}|}|{~|||}|}|{||||}|}|{||}|{z{|}{}{}}|}{}||{}}}||{}{}|{}|}{||{}|}{{{{}{}{{{{}|}}||}||||||}}|||}}|}||}}|}|}|}}|}|}||||}|}|}||||}|}|{z}||{{|{|{||}}||{}||{||}||{|{||||{|{||{|{|{|{{|{|{|{|{}|{{|}}||}||||||}}|||}}|{}|}}|}|{}}|}||{}|||}|}|{||||}|}{}|}}|{|{{{{|{}}||{}}|}||}}|||{|}||||}||{|||||}{|{|||||{z}||{{|{}{}|}}|}{}||{}}}||{}{}||{}|}||{}|}{|{{}{}{|{|{~~|||}||||||~}|||~}|{||~}|}|{|||}|}|{|||}|}|{||||}|}{}|}|||}||||||}}|||}}|}||}}|}|}|||}|}|}|||}|}|}||||}|}|{|}}|{{|{{{||}}||{}}|{||}||{|{|}|{|{|{|||{|{|{{|{|{|{|{z|||{{{{|{z{}}|{{}||{||}||{z{|||{z{{{||{{{{{{{z{{{{{{z{{{z{|}}{|}||||||}}|||}}{{||}}|}|{|}|}|||{|{||}}|{||||}|}{}{}||{|{{|{|{}}||{}||}||}||||{||||||{}||{||||}{|{|||||{||}|{{|{{{||}}|z{}}|{||}}|{|{|}|{|{|{||{|{|{{{|{|{|{|{z}{|{{{{}{}{}}|}{}||{}}}||{}{}||{}|}{||{}|}{{{}{}{{{{{z}||{{|{|{||}}||{}||{||}||{|{|||{|{|{||{|{|{|{|{|{|{|{||}|{{{{{{z{}}|z{}}|{||}||{{{|}|{{{{{||{{{{{{{{{{{{{{{z|{{zz{z|zzz{}|{z||{{|{||{zz{||{{zzz{|{zzzzzz{zzzzzzzz}z{zz{|}}{|}||||||}}|||}}{{||}}|}|{|}|}|||{|{||}|}|{|||||}{}{}|{{|{{{{|{}}{|{}||}||}||||{||||||z}||{|||{|}{|{||||{z|||{{|{|{||}}||{}||{||}||{|{|||{|{|{||{|{|{{{{|{|{||{||}|{{{{{{z{}}||{}}|{|z}}|{{{|}|{{{{{||{{{{{{{{z{{{{{{||||{|}~~}|||||{||~}~||~}|}~~}|||}~~}|||||}}||||||||{|||||||}~~}|||||{||~}~||~}|}~~}|||}~~}|||||}}||||||||{|||||||}~~}||}||}}|~}~||~}|}~~}|}|}~~}|}|}|}}|}|}|}||}|}|}|}|}~~}||}||}}|~}~||~}|}~~}|}|}~~}|}|}|}}|}|}|}||}|}|}|}|}~~}||||||||~}~||~}|}~~}|||}~~}|||||}}||||||||{||||||{{||{|{|{{|{{|}||{}||{}}||||{|||||}|{{{||}|{|{|{||{|{|{{||}|{|{{|{||}||{}}|{}}}|||{||}||}|{{}||}|{|{|{||{|{|{{~~}|{|{{|~|{}~|{~}|~~~}|~|~~~}|~}~{{}|~}~{|{|~|~{|{|}|}~~|||~}|||~|~}||~~|}~~~|~|}~~~|~}~|}||~}~|~||||~|~|~|}||{|{||{|{|||}||}||}}}||||}|||||}||}{||}|||||{||||{|z{|{}|{{{z|{{{|}|||}|{||}|{{{||}|{{{z{}|{{{{{z|{{{{{{{z{~~}|{{{{|{{{|}~|{}|{~~}|{{{~~}|{{{z{}|{{{{{z|{{{{{{{{{|{{|{z{||{{{|}||{}|{}}||{|{||||{}{{{{|{}{{{{|{|{{{{{{}|{|}{||||||{||}}|||}||}}||||{|}|||}||{{||}|||||{|||||||}~~{{{|{{{{|{~}||{~||}~||||}~~||||||}{||||||||{||||{|z{~~{|zzz{|{{z|}~|z|{|{~{|{{{~~{|{{{z{{|{{{z{z|{{{z{z{{{|{}|{{{{|{{{|}||{}}|{}}|{|{|}}|{}{{{}|{}{{{{|{|{{{{{|}||{|{|{{|{|{|}||{|||}|||||}||||||||}{||||||||{||||{|z}|{{||}|{|{{{{|{|}|{{|}{{||}||{||}||{|{{}||{|{|{|{{|{|{||}{|{|{|{z|{|{|}||{}||}}}||||z||||}||}{||}|||||{||||{||{~~{|{||{{{||~}|{|~||{|~||||{~||||||{{||||||||{||||{|z{~~{|zzz{|{zz|}~|z|||{~|||{{{~||{{{z{{|{{{z{z|{{{z{z{z{{{{|{z{{|{{{|}||{}{|{}}{|{|{|||{}{z{{|{}{{{z|{|{{{{{|}||}|{|{{{{|{|}||{|}|}||||||}||}||||}}||||||||{||||{||{z{{|{{|{{z{||}||||||{||||z|{|||||{|{{|{|{|{||{|{|{{{{}|{{{||{|{|{{|{|{|}||{|||{}||||{{}||||{{{{||{|{|{|{{|{|{||}||}|{|{{{{|z|}||z|}|}||}|||{||}||||}}||||||||{||||{||{z{{|{{|{|z{||}|||}||{}}||{|{z|||{}{|{|{}{|{||{|{|{{{z{{{{|{z{{|{z{|}||{}||{}}||{|{||||{}{z{|{}{{{z|{|{{{{{|}||{|{|{{|{|{|}||{|||}||||||}||||||||}{|||||||{||||{||{|{}|{{|z{{{||}||||}|{||||{|{||}|{|{|{}||{|{||{|{|{{{z{z{zz{zz{{zz{{}|{{{{z{{{{{zz{z{{{z{zz{{zzz{zzzzzzzz{zzzzzz{{||{|{|{{|{|{|}||{|||{|||{|{{|||||{{{{{||{||{|{{|{|{||}{|{|{|{z|{|z|}||z|||}||||||{|||||||z}{|||||||{||||{||{|{}|{{|{{{{||}|{||}|{||}|{|{||}|{|{|{}|{|{|{|{|{|{{{|}||{|{|{{|{|{|}||{|||}||||||}||||||||}{|||||||{||||{||{z{{|{{|z|{{||}||||||{||||{|{||||{|{|{{|{|{|{|||{|{{{z{|{}|{{z{z{{{{}|z{{}|{|{{|{{{|{}{{{{z{}|z{{{{z|{{{{{{z{z{zzzzz{{zzz{}|{z{zz{{{{zzz{z{{zzzzz{zzzzzzzzzzzzzzzz{zzzz{{||{z{|{{{{|{|}z{{||{z|||{|z{|||{|{z{{{{|{|{|{z{{|{{||}{|{|{|{z|{|z|}||z|||}||||||{|||||||z}{|||||{||{||||||{z{{|{{|{|{{||}||||||{||||{|{||||{|{|{{|{|{|{z|{|{|{{{{z{|||{|}~~}|{||||{|~}~{|~}|}~|~}|||}~}|||{|~}|||{|{}|||{|{|{|}~~}{{||||{|~}~{|~}|}~|~}|||}~}|||{|~}|||{|{}|||{|{|{|}~~}{|||||{|~}~{|~}|}~|~}|||}~}|||{|~}|||{|{}|||{|{|}|}~~}}|}|||}|~}~}|~}|}~|~}|}|}~}|}|}|~}|}|}|}}|}|}|}|}|}~~}}|}|||}|~}~}|~}|}~|~}|}|}~}|}|}|~}|}|}|}}|}|}|}|{{{{z{{{|{{{{{|}|{{}{|||{}{|{{{}{||{{{|{||{{{{{{{{{{{{{{{{z{{{|{{|{{|}|{{}{|||{}{|{{{}{||{{{|{||{{{{{|{{{{{{{{{|z}{{|{{|{{|}|{{}}|||{}}||{{}}||{{{|}||{{{{}||{{{{{{{{~~}{{|{{{{{{}~{{~}|~~{~}|~{{~}|~{{{~}|~{{{{}|~{{{{{}~|}~~{~{~{{{{~{~}~{~~|}~{~~|~|}~~|~{~|~~|~{~{~{{~{~{~{{{{zz{{{{zz|{{{|}|{|{|||{|{|{{{|{|{{{{|{|{{{{{{|{{{{{{{{{|z}{{{zzz{{{|}|{|}|||{|}||{{|}||{{{|}||{{{{}||{{{{{{{{~~}{{{zzz{{{|}~{{}||~{~}||{{~}||{{{~}||{{{{}||{{{{{{{{|z{{{|{||{{{|}|{{}|||{}{|{{{}{||{{{|{||{{{{{|{{{{{{{}{|{{|{{{|||{{{{|}|{{}{|{{}{|{|{}{||{{||{||{{{{{{{{{{{{{|}~~{{{|{{z{{{~}|{{~{|}{~{{{|}~{{{{{|~{{{{{{{{z{{{{{{{{{|z}{{{zzz{{{|}|{{|}||||}||{{|}||{{{|}||{{{{}||{{{{{{{{~~{{{{zz|{{z|}~{{|{||~{{|{{{~{|{{{{~{|{{{{{{|{{{{{{{{{|{}{{|{{{{{{|}|{{}}|||{}||{{}}||{{{|}||{{{{}||{{{{{{|}{|{{{|{{z{{{|}|{{|{|}|{|{{|}|{{{{{||{{{{{{{{z{{{{{{{}|{{{|z}{{|{{z{{{|}|{{{}z||{{}||{{}||{{{z}||{{{{}||{{{{{{|}z|{{{|{{{{{{|}|{{}{|}{{}{|{|}{||{{||{||{{{{{{{{{{{{{{{~~{{z{zzz{{{|}~{z|{||~{|{{{{{{{{{{{~{{{{{{{{z{{{{{{{{{z{{{{|{{|{{{|}|{{}{|||{}{|{{{}||{{{|{||{{{{{|{{{{{{{|}||}{{|{{z{{{|}|{{|}|}|{|{|||}|}|{{||}||{{{{}||{{{{{{{{z{{{{{z{z{{{|}|{{|{|||{|z{{{{|{{{{{|{{{{{{{{z{{{{{{z}|{{{{{z{{{|{{|{{{|}|{{|{|||{|{|{{{|{|{{{|{|{{{{{{|{{{{{{{|}||}{{{zzz{{{|}|{{|}|}|{|}|||{|}||{{|}||{{{{}||{{{{{{{{~~{{z{zzzz{{|}~{{|{||~z|{{{{{|{{{{{{{{{{{{{{z{{{{{{{{{z{{{{|{{{{{{|}|{{}{|||{}{|{{{}{||{{{|||{{{{{{{{{{{{{|}{|{{{|{{|{{{|}|{{|{|}|{|{|{|}|{|{{{||{{{{{{{|{{{{{{{{{|z}{{{zzz{{{|}|{{{}|||{{z||{{{}z|{{{z}|{{{{}||{{{{{{z{zzz{z{zzzz{zz}|{z{zz|zz{zz{z{{z{zz{zzz{{{z{zz{z{z{zz}|{{{{{{z{{z|{{z{{{|}|{{{{|||{|{z{{{|{{{z{{|{{{{{{{z{{{{{{{|}z|{{{{zz|{{{|}|{{|{|}|{|{|{|{|{|{{{{|{|{{{{{|{{{{{{{{{z{{{{|{{{{{{|}|{{}{|||{}{|{{{}{||{{{{{||{{{{{{{{{{{{|}{|{{{|{{z{{{|}|{{|{|}|{|{{{|}|{{{{{||{{{{{{{{{{{{{{{{{zz{{{zzz|{{z|}|{{|{|||{{{|{{{|z|{{{{|{z{{{{{{|{{{{{{{{|z}{{{zzz{{{z}|{{z}|||{{z||{{{}z|{{{z}|z{{{{}||{{{{{z{zzz{z{zzzz{zz}|{z{zz|zz{zz{z{{z{zz{zzz{{z{z{zz{zz{zz{z{zz{{{{z{zz|{{z{z{|}|{{|{|||{|{{{{{|{{z{{{|{{{{z{{{z{{{{{{|}z|{{{{yzz{{y|}|{{|{|}|{|{{{|{|{{{{{{|{{{{{{{{z{{{{{{|{||{|{}}|||}~~{|{|}||||~}~|||~}}}||~}}|||~}}|||~}}||||~}}||||||||}~~||{|}||||~}~|||~}}}||~}}|||~}}|||~}}||||~}}||||||||}~~||{|}||||~}~|||~}}}||~}}|||~}}|||~}}||||~}}||||||||}~~||||}||||~}~|||~}}}||~}}|||~}}|||~}}||||~}}||||||}|}~~|}|}}}|}|~}~|}|~}}}}|~}}}||~}}}|}~}}}|}|~}}}|}|}}{|{}}}{}{}|z{||}}}{}}{|{{}}{}{|}}{}{}{}{}{}{}}{}{}{}{}{|{}}}{}{}|{{||}}}{}}{|{{}}{}{|}}{}{}{}{}{}{}}{}{}{}{}{|{}}}{}{}|{}||}}}{}}{|{{}}{}{|}}{}{}{}{}{}{}}{}{}{}{}||{}}}|}|}||}||}}}|}}}|{|}}}}||}}}}|}|}}}|}|}}}}|}|}|}|||~~}|}|}}|}|}}~}|}~}}||}~}}||}~}}|}|~}}|}|}~}}|}|}|}}~|{~~}~}~}|~}~}~}}~}~~|{~}~~}~|}~~}~}~~~}~}~}~~}~}~}~{{|{|z{{{z{z{{{||}}{||{|{{||{{{|||{{{{{|{{{{{{|{{{{{{{|{|{|{|{|z{z{|{||}}|||{|{{||{|{|||{|{|{|{|{|{||{|{|{|{|||{}z||||{{|||||}}|||}|{|||}|||||}|||||}||||||}|||||||||{~~|||||||||||}~|||}|{||~}||||~}||||~}|||||~}||||||}{|{}}}{}{}|{}{}|}}}{}}|{{}}{}{|}}{}{}{}{}{}{}}{}{}{}{|}}{|{||}{}z}|{}{}|}}}{}}{|{}}{}{|}}{}{}{}{}{}{}|{}{}{}{|{|{|{|{|z{z{|{||}}|{||{|{||{|{|||{|{|{|{|{|{||{|{|{|{|||{}z||||{{|||||}}||||}|{||}|||||}|||||}||||||}|||||||{|{~~|{|{||{|{||}~|{||{|{{|{|{||~{|{|{~{|{|{|~{|{|{|{}||{}{}|}|}{|}|}|}}}|}}}|{|}}}||}}}}|}|}}}|}|}|}}|}|}||{|{}}|{|{||{|{||}}|{|}{|{{|}{{||}{|{|{}{|{|{|}{|{|{|{z}|||{{}}|||||||||||}}|||}}{{||}}|||}}||||}}|||||}}|||||||||{}z||||{{|||||}}||||}|{|||}||||}|||||}||||||}|||||||{|{~~|{|{||{|{||}~|{||{|{{||{|{||{|{|{~{|{|{|~{|{|{|{}{|{|z}{}z}z{}{}|}}}{}}{|{{}}{}{|}}}{}{}{}{}{}|{}{}{}{|||{}{||||{{|||||}}||||}|{|||{|||||}||||}||||||}|||||||{|{}}|{|{||{|{||}}|{|}{|{{|}z|{||}{||{}{|{|{|}{|{|{|{z}|{|{|{|z|{|z{z{|{||}}|{||{|{{||{|z|||{|{||{|{|{||{|{|{|{|{|{~~|{|{||{|{||}~|{||{|{{||{|{|||{|{|{{|{|{|~{|{|{|{}{|{|z}{}z}z{}z}|}}}{}}{|{{}}{}{|}}{}{}{}}{}{}|{}{}{}{|{|{|z|{|z{z{|{{|}}|{||{|{{||{|{|||z|{|{|{{|{||{|{|{|{||{{}{||||{{|||||}}||||}|{|||z|||||}z||||}|||||}|||||||{|{}}|{|{||{|{||}}|{|}{|{{|}{|{||}{|{|{}{|{{|}{|{|{|{z}|{zz{|{|z{{{z{z{{{{|}}{{||{|{{||{z{|||{{{z{|{{{{{|{{{{{{{|{|{~~|{|{||{|{||}~|{||{|{{||{|{|||{|{|{|{|{|{|{|{|{|{}{|{|z}z}z}z{}{}|}}}z}}{|{{}}{}{|}}{}{}{}{}{}{}|}{}{}{z{|{|z{{{z{z{{{||}}{{{|{|{{||{{{|||{{{z{|{{{{{z|{{{{{{|{|{|z|{|z{z{|{{|}}|{||{|{{||{|{|||z|{|{|{z{|{||{||{|{||{{}{||||{{||||{}}||||}|{|||z|||||}z||||}|z||||}||||||{{{}}|{|{||{|{||}}|{|}z|{{|}z|{{|}z|z|{}z|{|{|}z|{||{z}|{z{z{|{|z{z{z{z{{z||}}{{||{|{{||{{{|||{{zz{|{{{{zz|{{{{{{{{|}z{|}z|}{}z}}|}|~~|}|}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|}|}|~~}}|}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|{|}|~~}||}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|}|}|~~}|}}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|}}{|~~}}}}||}}}}}~~}}}}~}|}}}~}}}}}~}}}}}~}}}}}~}}}}}}~}~|~~~}~}~~}~}~~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}|}{|}y|}|}|~z|{|z|}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}|}{|}z|}|}|~z}{|||}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}|}{|}z|}|}|~z}||||}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}|}{|}z|}|}|~{}|}}~}|}|~~||}|~~|}{|~~|}|}~~|}|}|~|}|}|}|}{|}z|}|}|~~}|}||}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}~}~|~~~}~}~~~}~}~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}}{|{|}{{|{|||z|{||||}{{{|||||||||{|||||{|||||{|{|||{|{|{|{|}{{|{|||z|{||||}{{{|||||||||{|||||{|||||{|{|||{|{||}{|}{|}|}||{}|}|}~}|}}~||}|}~|}{|}~|}|}}~|}|}|~|}|}|}||{|}z||||||~||||||}||||||||~|||{|~|||||~||||||||||||||}{|}~|}|}||z}|}|}~}|}|}||}|}~|}{|}~|}|}}~|}|}|~|}|}|}}}}|~|}}}}}~~}}}}~|~}}}~}|}}~}}}{}~}}}}}~}}}}}}}}}}}}}z}{{{|}y{{{{||z{{{|||}{{|||||{{||{{||||{{{|||{{{{||{{{{{|}{|}z|}|}||{}|}|}~}|}|}~||}}~|}{|}~|}|}}~|}|}|~|}|}|}|{{|}z|{|{||~{|{|||}|{|||||{|||{{|~||{|{~||{|{|||{|{|{||{|}~||||||z||||||}||||||||||||{||~|||||~|||||~|||||||}{|}{|}|}|~z}|}|~~}|}|~}||}|~~}{|~~|}|}~~|}|}|~|}|}|}}|}|~|}|}|}~~|}|}~|~}|}~|}||}~|}}}~|}|}|~|}|}|}|}|}|}|{}||}{|}z|}|}||{}|}|}~}|}|}~||}|}~|}{}~|}|}}~|}|}|~|}|}|}|{{|}z|{|{||~{|{|||}|{|||||{||||{{|||{|{~||{|{|||{|{|{|{{|}~|{|{||z{|{|||}|{|||||{||||{{|||{|{|~|{|{|~|{|{|{|}{|}{|}|}|~{}|}|~|}|}|~}||}|~}|}{|~}}|}~}|}|}|}|}|}|}|}{|}z|}|}||z}|}|}~}|}|}|||}|}~|}{|}~||}}~|}|}|~|}|}|}}|}|~|}|}|}~~|}|}~|~}|}~|}||}~|}|}}~|}||~|}|}|{|}|}|}|z}|{|{{|}z|{|{||~{|{|||}|{|||||{||||{{||||{|{||{|{|||{|{|{|{{|}~|{|{||z{|{|||}|{|||||{||||{{||||{|{||{|{|~|{|{|{|}{|}{|}|}|~z}|}|~|}|}|~}||}|~}|}{|~}|}|}~}}|}|}|}|}|}{|{|}z{|{|||{|{||||}{|||||||||{||{|||{|{||||{|{|||{|{||}{|}z|}|}||z}|}|}~}|}|}|||}|}~|}{|}~|{|}}~|}}|~|}|}|}}|}|~|}|}|}~~|}|}~|~}|}~|}||}~|}|}}~|}|}|~|}|}}|}|}|}|z}|{{|{{|}~|{|{||z{|{|||}|{|||||{||||{{||||{|{|||{|{||{|{|{|}{|}{|}|}|~z}|}|~|}|}|~}||}|~}|}{|~}|}|}~}|}|}|}}|}|}{{{|}z{{{{||y{{{|||}{{|||||{||||{{||{|{{{||{{{{{||{{{{{|{|}z{|{|||{|{||||}{|||||||||{||{|||{|{||||{{|{||||{||}{|}z|}|}||y}|}|}~}|}|}z||}|}~|}{|}~|{|}}~|}|}|~|}||}}|}|~|}|}|}~~|}|}~|~}|}~|}||}~|}|}}~|}|}|~|}|}|}|}|}||z}|{{{}|{|}||}|||{{||||~}{}{|~}{}|}{|{}|}|}{||}|}{||||}{}{{}{z{||{|{{|||{|{~|{|||~|{{{||{|{{{{{{{|{{{{z{{|{{{{}}||}|{|{||||||||~}{}||~}{}|}||{}|}|}{||}|}{||||}{}{z}{{{|{{{z{|{|{{{~|{||{~|{{{||{{{{{{{{{{{{{{z{{{{{{{z}|||{{|{{{}}|{|}||~|||||{||}}{}||}}|}|}|||}|}|}{||}|}{||||}|}{}}}|}~}}}}}}}}}}}}~|}}}}~}~}}}}}~}~}}|}}~}~}}}}}~}~|}}|{|}||}|||||{||}}|}||}}|}|}|||}|}|}{||}|}|||||}|}|}}|{|}||}||||||{|}}{}||}}|}|}|||}|}|}{||}|}{||||}|}{}}|{|}||}||||||{|}}{}||}}|}|}|||}|}|}{||}|}{||||}|}{{~}{||{{~||{|||}{|}{|}{~}{|||}}{|{||{{|{|{|{|{|{|{|{|}}|||}||~|||{}{}||}}}}|}}|}|}}||}|}|}|||}|}|||||}|}|}}|{|}|{}|||||{|||}}{||}}{}|}||{}|}|}{||}|}{||||}{}{{}|{{|||}|{{||{|{{||{|{}|{|{|||{|{|{{{{{|{|{{{{{|{|{{||{{|{{}|{{||{|{{||{|{||{|{|||{|{|{{{{{|{|{{{{{|{|{{}|{||{{}{|{{z{|{|}|{||{|z|||||{|{||{{|{|{|{|{|{|{|{{~|{z{{|~|{{|||{|{}|{|{|~|{{|{||{|{{{{{|{|{{z{{|{|{{|}{}|{{||}}}{{}}}|}{}|{||}}|}||||}|}|||{{}|}||{{{}|}||}}|{|}||~|||||{|||}}{}||}}{}}||{}|}|}{||}|}{||||}{}{}}|{|}|{||||{{{{||}}{|{|}}{}|{|{}|}|}{||}|}{||||}{}{z}{{z{|||{{{|{{{{{}|{|{{}|{{{|{{{{{{{{{{{{{{z{{{{{{{{}{{z{{|}|zz{|{{{z|{{|{{}{{{z|{|{{{{{{z|{{{zzzz|{{{z}~|{|}|{~|||||||||}}z}||~}z}|}||}|}|}{||}|}{||||}{}{||{{}|{{|{|}|{{|||||{}|{|||}|{{||||||||{{{||{||{{{||{||}}|{|}||}|||{|{{||}}{}{|}}{}{}{|{}||}{||}|}{||||}{}{z}|z{||{~{{{||{|{{}|{{|{}|{|{{||{|{|{z{{|{|{{{{{|{|{}}|{|}|{{|||{{z{||}}{|{|}}{}||{|{}|}|{||}|}{||||}{}{}}|{|}|{}|||||{|||}}z}||}}z}|}||{}|}|}||}|}{||||}{}{{~|{z{|{~{{{|{|{{{}|{{|{~|{{{{||{z{{{{{{{{{{z{{{{{{{||{{{}|{{|{|}|{{|||||{}|{|||}|{{||||||{||{{{|{||{{{||{||}}|{|}||}|||{{{{||}}{}{|}}{}z}{|{}|{|}{||}}{||||}{}{{}{{z{|{}|{{||{{{{}|{||{}|{{{||{{{{{{{{{{{{{z{{{{{{{z}|z{|{{~{{{||{|{{}|{||{}|{|z{||{|{|z{z{{|{|{{{{|{|{{}{{z{|{}{{{|{{{{{}|{||{}|{{{||{{{{{{{{z{{{{{{{{{{{{{~|zz{{{~{{z{{|{{{||{{{{~|{{z|{|{{z{{{z{z{{{zz{{{{{z|{z{z{}|{{|{{}{{{||||{{}|{{|{}|{z|{||||{||{{{{z{||{{{|{||}}|{|}||{|||{{{{||}}{}{|}}{}z}{|{}|z|}{||}{}{||||{}{{||zz{|{}{{{|{{{{{||{||{||{{{|||{{{{{{z{{{{{{z{{{{{{{}{{z{{z}|z{{|{{{z}{{|{{}{{{{|{{{{{{{{{z{{{{{z{{{{{{z}|z{|{{~{{{||{|{{}|z||{}|z|z|||{|{|z{z{{|{|z{{{{|{|{{{zz|zz{z{{{y{{z{|{{|{|{z{{{{{{{z{z{z{{{z{zz{z{{{z{{{{{{{z{|{|{{zz|{{||{{{||{{{{{{{||{{{{||{{{{{|{{{{{{{{|zzz|{{{zzz{|zzz|{z|z|{zz{{{{{zzz{{zzzzzz{zzzzzzzz{{{{{|{{{z{{{{y{{{|{{{{|{{{{{{{{{|{{{{{|{{{{{{{{{{{{zzz|{{{{{{{|{{|{|||{{||{{{||{{|{|{|{{||{|{|{{{{{|{|{{{{{{|{|{{||{{{{|||{{{||{|||{{|{|{|{|||{|{|{{{{{|{|{{{{|{|{|{|}}|{|}|||||}|}|||}}|}|}}|}|}}}|}|}|||}|}|}|{||}|}|}{{|{{|{|||{{{||{{|||{|||||{|{|||{|{|{{{|{|{{{{|{|{|{{{|{{|{|||{{{||{z||{{|||{|{{||{|{|{{{{{|{|{{{{{{|{|{z{{{zz|{z|{{{{{{{z|{z|{|{z{z{{{{{z{z{z{{{z{zz{z{{{z{z{{|zz|{z}{{{{{{|z{|{||||z{{{{|{{z{z|z{{{z{zz{z{{{z{|||}||||{{}|||{}{}|{}||}}||||{}||||||||||||||||||||||{{{{{{|{{|{{{{{{{{{|{{{|{{{{{{|{{|{{{{{|{{{{{{{{{{{{z{{{zz|{{|{{{{{{{z{|{z{|{z{{{{{{{z{{{{{{{z{zz{z{{{z{z{{{z{zzz}{zz{y{{{{|{{|{{zz{{{{{z{zz{{z{z{zzzz{z{z{zz{|{{{zz||{yz{|{z{||{{|z|{zz{|{|z{zz{{z|z{zz{y{z|z{z{{|{}|{||{|||{{||}{||}{{|{}{|||}||{|{|||{|{|{|{{|{|{|{{{{{{{|{{{{{{{{{|{{||{{{||{{{{|{{|{{{{{|{{{{{{{{{{{{{{{{{{{z{{{{{{z{{{{|{{{{|{{{{{|{{|{{{{{|{{{{{{{{{{{{zz{{yzzzz}zzzyyzzzz|{{{z|{zz{{{zzzzz{zzzzzzzyzzzzzzzz{{{zzzz{|{yzz{{zz{|{z|z|{zyz{|{yzzz{{z{yzzzzy{z{yzz{{{{{{|{{|{{{{{{{{{|{z{{|{z{{{{{{|{{{{{|{{{{{{{{{{{{{z{|{}|z{|{{|{{{{{|{{{}{z|{}{{z|{}||{{||{{{{{{|z{{{{{{{{{{{{{{z{{{{{{{{{{{|{{|{|{{{z{{|{{|{{{{|{{{{{{{{{{{{zz{{zz|{z{z{{{{{{z{|{z{{|{z{{{{{{{z{{z{{{z{zz{z{{{z{z{{{zzzz{|{yyz{{zzz|zz|z|{zyz{|{{yzyzzyzyzyzzyzyzyzy{{{{{{|{{{{{{{{{{{{|{z|{|{z{{{{{z{|{{{{|{{{{{{{{{{{{zz{{z{zyy|{zz{z{z{{|{z{z|{{z{{{{{y{z{{{{z{zzzz{z{z{z{{zz|{}|z{|{{|{{{{{|{{{}{z{{}{{z|{}||{z{||{{{{{|z{{{{{{{{{{{{{{z{|{{{{z{{{{|{{|{|{{{z{{|{{|z{{{{|{{{{{{{{{{{z{{zz{zzz{{zz{{{z{{|zz|z|{{z{{{{{z{zzz{z{z{zzz{z{z{zzz{{zz|{z{z{{{{{{z{|{z{{|{z{z{{{{{z{z{z{{{z{z{z{{{z{{{{{{{|{{{{{{{{{{{{|{z{{|{z{{{{{z{|{{{z{|{{{{{{{{{{{z{{zz{zzy{{zz{z{z{{|{z|z|{{y{{{{{y{z{z{y{z{zzz{z{z{zzy{{zzzzz|zzzzz{zzz|{zzz|{zzz{{{zzzzz{zzzzzzzzzzzzzz{zzzz|{}|z{|{{|{{{{{|{{{}{z{{}{{z|{}||{z{||{{{y{{|z{{{{{{{{{{{{{z{{{{{{z{{{{|{{{{|{{{z{{|{{|y{{{{|{z{{{{{{{{{z{{{zzzzz|zzzzz{zzz|{z|z|{zz{{{{zzzzz{zzzzzzzzzzzzzzz{{zz{zzy{{yy{{{z{{|zz|z|{{yz{{{{y{zzz{z{z{yzzy{z{y{z{zzzzyzzzzzzz{{zzz{zz{z{zzzz{zzzzzz{zzzzzzzzzzzzzzz{{{zzz{yz{zzz{y{{zz{{{{z{zz{z{zzzz{z{zzzzzz{zzzzzzzzz{|{{z{zz{zz{zyyz{z{|{{z{{z{{{{z{z{{{{z{z{zz{z{z{z{zzz{{zz{zzzzz{z{{z{z{{z{z{{zzz|{z{zzz{{z{z{zzzzzz{zzzyyyyyz{z{z{|{z{z{zz{z{zz{{{z|{{{z|{z{{|{z{z{{{{z{z{zzzz{z{z{zz{|{z{z{zz{zzzz{{{z|{{{z|{z{{|{z{z{{{{z{z{zzzz{z{z{zz{|{{{z{{{{{{{{{{{{|{{{{|{{{{|{{{{{{{{{{{{{z{{{{{{{{{{|{{{{}||{{{{|{{{||{{{||{{|{|{{{{|{{{{{{{{{{{{{{{{{{{|{{{z{z{{zz{zz{{z|{{{z|{z{{|{z{{{{{{z{{{z{{z{{{z{z{z{z{zz{{z{zzz{{{{yz{z{z{{z{z{{zzz{z{{zzzzz{{zzzzzzz{z{z{zz{{z{zzz{{{{z{{z{z{{z{z{{zzz{z{{zzzzz{{zzzzzzz{z{{{{z{{z|zz{{{{{{z{{{z{{z{z{{z{z{z{{z{z{z{{z{z{z{z{{{|{{|{|{{|{{|{{{{|{{{{{{|{{{||{|{{{{{{|{|{{{{{{|{|{{{|z{{z{{z{zz{{{{{{z{{{z{{z{{{{z{z{{{{z{z{z{{z{z{z{zyz{zzyzyyzzzzyzy{zyz{zz{{zzzz{zzzzyz{zzzzyzyzzzzyzyzzz{{{zzzzz{zzzzy{zzz{{{{z{zzz{{zzzzz{{zzzzzz{zzzzzzzyz{{{zzzz{{z{zz{{zz{{{z{{|zzz|{{zzzz{{{z{zzz{zz{z{zz{{{{{{{z{{{{{{{{{{|{{{|{z|{|{{{|{{{{{{{{{{{{{{{{z{{{z{{{|{z{z{{z{zz{{{{{{z{{{{z{{z{{{z{z{{{{z{z{z{zz{z{z{zyzz{{yyyzz{yyyyyzzzyz{{zyz{zzz{zzyyz{{zzyyyy{yzyzyyyyz{zzzzzzz{zzzz{{zzz{zz{z{zzzz|zzzyz{{zzzzzyzzzzzzzz{{|z{{z{{z{zz{{{{{{z{{z{z{{z{{{{{z{{z{z{z{z{{z{z{z{z{zz{z{{{zz{{z{zzz{{{{zz{{y{z{{zzz|{zz{z{{zzzzz{{zzzzzzzz{|zz{z{zzzzz{z{{z{z{z{{z{{z{z{{z{z{{zz{z{zzzz{z{z{z{zz{zzz{{z{zz{{{{{{z{{z{z{{z{z{{z{z{{zz{z{z{zzzz{zzzyzz{{yyyzz{yyyyyzzzyz{{zyz{zzzz{zzyyz{zzyyyy{yzyzyyyyz{zzzzzzz{zzzz{{zzz{zz{z{zzzz|zzzzyz{zzzzzyzzzzzzzz{{|zz{z{{z{zz{{{{{{z{{y{z{{z{{{{z{z{{{z{z{z{zz{z{z{zzzzz{zz{yz{zz{zyzz{z{{z{z{{zzz{{zyzzzz{zz{zz{zzz{zzz{zzz{zz{zzz{{z{zzz{{{{zz{{z{z{{zzz|{zzy{z{{zzzz{zzzzzzzzz{|z{{z{yz{zz{zy{z{z{{{{z{{z{y{{z{zy{{{z{z{z{z{z{z{zzz{zzzz{zzzzz{z{{z{z{zz{z{{zzz{{z{zzz{zz{z{zzzzz{zzzyz{zzzzzzz{zzzz{{zzz{zz{z{zzzz|zzzzyz{zzzzzzyzzzzzzz{{|zz{z{{z{zz{{{{{{z{{y{z{{z{{{{z{z{{zzz{z{z{z{z{z{zzz{zzzz{yzzzz{zy{z{z{zz{z{{zzz{{zzzzz{zzzz{zzzzz{zzzyyyz{yyyyy{yyyyyzzyyz{zyy{zyzy{{yzyzyz{yzyyyz{yzyyyy{yyzy{zz{zzz{{z{zzz{{{{zz{{y{z{{zzz|{zzy{z{{zzzyz{zzzzzzzz{|zz{z{yzzzz{zyzz{z{z{{z{{z{y{{z{zy{zzz{z{yzzz{z{zzzz{z{zz{yy{yz{zy{z{zz{z{z{{zzz{{z{zzy{{z{z{zy{zzz{zzzz|{zzzzzz{zzzyz{zzz{{{zz{{zzzz{{zzyz{{zzzzy{{zzzzzzzz|z{z{yzyyz{z{{z{z{zz{z{{zzzz{{z{zzzzz{z{zzzzzz{z{zy{|{zyz{z{zzzzzz{zzz{{|zz{{z{{z{{zyy{{{zzzyy{zzzzzzyzz{{zzzz{z{zzz{y{zz|{{|z|{{zz{{{{zzzz{{zzzzz{{zzzzzzyzyzzyzzzz{zz{|{zyzz{{zzyz{{zy|{z|y|{{{z{{{{{zzz{{{zzyz{z{zzyzyzz{|{zyzz{{zyyz{{zy|{z|y|{{{z{{{{{zzz{{{zzyz{z{zzyzyzz{|{zyzz{{zzzz{{zz|{z|z|{{{z{{{{{zzz{{{zzzz{z{zzzzzzz{|{{{zz||{{{{{|{{|{{|{|{{{z{{{{{{{z{{{{{{{{{{{{{{{{{{|{|{|{|{z{|{|{|{|{{|{||{{{{||{|{{{{{|{|{{{{{{|{|{z{z|z{z{{zz{z{z{{{yzz{{z{{{z{z{{{{zz{z{{z{zzz{zz{z{zz{z|z{z{{zz{z{z{{{{zz{{z{{{z{z{{{{zz{z{{z{zzz{zz{z{zz{z|{{z{{zz{z{z{{{{z{{{z{{{z{z{{{{zz{{{{z{zz{{zz{z{zz{{|{{{{{{{{{{{{{{{{{{|{{{{{{{{{{{{z{{{{{{{z{{{{{{{{{{{{|{{{{{{{{{{{{{{{{|{{{|{{{{{{{{{{{{{{{{{{{{{z{{{{{yyzyzzyzyzyyyzyyzzzyzzz{zzzzyzzzzzyyyzzzyzyyzzzyzyzyyyz|{zyzyzyzyzyyz{zyz{z{y{{zyzz{{zyyy{{zyzyy{zzyzyzyyz{|{zzzz{{{zzzzz{zzz{{|zz{zz{z{{zzyz{{zzzzy{{zzzzzzzz{|z{z{z{z{z{z{{{{z{z{{z{{{z{{{{{zzz{{{z{zzz{{z{z{z{{z{z|{{z{{zzzz{z{{{{z{{{{z{{zzz{{z{zz{{z{z{zz{zzz{z{zz{{{{zzz{{{zzzz{zzzz|{{{z|{zz{{{zzzz{{zzzzzz{zzzzzzzyyz|{zyzyzyzyzyyz{zyz{z{yz{{zyz{{zyyy{{zyzyy{zzyzyzyyz{y{zzzz{{{zzzzz{zzzz{|zzz{zz{z{zzyz{{zzzzy{{zzzzzzzzz|{{z{zzyzz{z{{{{z{{z{z{{{zyz{{{zzy{{{z{zz{zzz{z{zz{{{zzzz{zz{zzz{z{zz|z{{z|zyz{{{z{zz{z{zzzzzz{zzzzzz{zzy{z|{zzz{zz{zzzzz{zzzz{{zz{{yzzz{{zz{{{zzzzy{{zzzzzzzz{|z{z{zzzyz{z{{z{z|zz{z|{zzzz{{z{zzzz{z{zzzzzz{z{zyz{y{yzzz{{{zyzzz{zzzz{|zzz{zz{zz{zzyz{zzzzy{{zzzzzzzzz|z{z{zyyzz{z{{z{z{zz{z{{zzyz{{z{zzyz{z{zzzzzz{z{zz{{|{zyz{zzzzzz{z{zz|{{{z|z{z{{{{zzzz{{{zzyz{zzzzzzyyzzzzzzzzzz{zyzzz{zzzz{{zzzyzzzzz{zzyzz{zzzyz{zzzzzz{zzzy{zyzzyz{zzzzzzzzzzzzz{{zzzzzyzzzzzyy{zzzzzyzzzzzzzyzz{|{zzzzzz{zzz{z{zz|z{{z|{{zzz{{{zzzz{{zzzz{{zzzzzzyz{y{zzzz{{{zyzzz{yzzz{|zzz{zz{zz{zzyzz{zzzzy{zzzzzzzzz|z{z{zyyzz{z{{z{z{zz{z{{yzyz{{y{zzyzy{z{zzzzz{z{zz{{{zzyz{zzyzzz{zzzz|z{{z|zzz{{{zzzzz{zzzzzyzzzzzzzyyyz|{zyzyzyzyzyyz{zyz{z{yzz{zyzz{yzyyy{{yyzyy{zzzyzyyzzzzyzyzzz{zyzzz{yzzy{{zzzyzzzzz{yzyzz{zyyzyz{zzzyz{zzzzy{zyzzyz{zzzzzzzzzzzzz{{zzzzzyzzzzzyy{zzzzzyyzzzzzzyzz{{zzyzyyzyyzy{zzzy|zz{y|zyzzz{zzzzzyzzzzzyyzzzzzyzzzzyzzyz{zyzzzzzyzz{zz|zz{zzzz{zzz{zzzzz{zzzzzzzzzzzzzzyzz{z{zyzzz{zyzz{{{|zz{{{{z{{{{{zzz{{{zzzz{{zzzzzzzz{zzzz{{{zzzz{{zz{|{|zz{||zz{z||{zzz{|{zzzz{zzzzzzzz|yzz{z|{{z{z{{y{z{{{|{z{{||z|{{||z{zz||z{zz{|z{zzzyyy{{yy{{z{{{{{zz{{y{z{z|zz{z{zz{z{z{|{z{z{{z{{z{{zzzz{{z{zz{{z{z{zzz{{zzz{z|zzzz{zz{z{z{|{z{z{{z{{z{{zzzz{{z{zz{{z{z{zzz{{z{z{z|zzz{{zz{z{z{|{z{z{{z{{z{{zzzz{{z{zz{{z{z{zzz{{z{z{z|{{z{zzz{z{z{|{z{z|{z{{z|{zzzz|{z{zz{{z{z{z|z{{z|{|z|{{{|{|{|{|{{|{{|{||{{|{||{|{{||{|{|{|{|{|{zz{z{zzzz|zyzzz{{{y{zz{zz{|z{z{{|z{zzz{z{zzzzz{zzzzzzz{z{zzzz|zyzzz{{{z{zz|zz{|z{z{{|z{zzz{z{zzzzz{zzzzzzz{z{zzzz|{{zzz{{{zzz{{zz{||{z{{||{zzz{|{zzzz{{zzzzzzz{{{zz{z|zyzzz{{{zz{{{{z{|{{z{{|{{zzz{{{zzzz{{zzzzz|{{{{|{|{|{z{|{|{{|{|||{{||{|z{||{|{|z{{|{|{|{|{|{|{{zz|{{zz{z|zzz{z|{{{z||{|z||{{z|||{{z{z{{{z{zzz{z{zzzzz{zyzzzz{zyzzzzzyzz{zz|z{zzzy{zzz{zyzzz{zzzyzzzzzzzzzzzyzzzz{{{zzzzzyzz{z{{zzz|zzzzz|{zzzz|{zzzz{zzzzzzzzz{yzz{z{zyzzz{zyzz{z{{{z{{{zz{{{{zzzz{{zzzz{{zzzzzzz{{yzz{z{{{zzz{{yzz{{{|{z{{{z{{{|{zzz{|{zzzz{{zzzzzzz{{{{zzz|zzz{z{{{{z{|z|{z{|zz{{|z{zzz{z{z{zzz{z{z{z{{zz{z{zzzz|{{zzzz{{zz{|{{zz{||zzz||{zzz{|{zzzz{zzzzzzyzzzyzzyz{{{zzzzzyzz{z{{zz{z|zzzz|{zzzz|{zzzz{zzzzzzzzz{yzz{z{zyzzz{zyzz{z{{{z{z{{zz{{{zzzz{{zzzz{{zzzzzzzz{yzzzz{zzzzz{{yzz{{z{{z{{z{zz{{{zzz{{{zzzzz{zzzzzzz{z{zz{z{{{zzz{{{zz{|{|zz{|z{z{{||zzz{|{zzzz{{zzzzzzz{{z{zzz|zzz{z{{z{z{{z|{z{{z{z{{{z{zz{z{z{zzz{z{z{z{{zzz{zyzz{z|zyzzz{{yzz{{z{zz{{{{zz{{{{zz{{{zzzz{{zzzzzzzz{yzz{z{zyzzz{zyzz{z{{{z{z{{zz{z{{zzz{{zzzz{{zzzzzzzz{yzzzz{zzzzz{{yzz{{z{{z{{z{zz{{z{zzz{{zzzzz{zzzzzzzzz{zzzz{zyzzzz{{zz{|z{zz{|zzzzz|z{zzz{zzzzzzzzzzzzzz{zyzz{z|{{zzz{zyzz{z{|zz{zz{z{{z|{zzzz|{zzz{{zzzzzzz{{z{zzz|zzz{z{{z{z{{z|{z{{z{z{{{z{zzz{z{zzzz{z{zzz{{yyzz{zyzzzz|zyzzzzzyzz{zz{zz{zzzzzzzz{zyzzz{zzzzzzzzzzzzz{yzzzz{zzzzz{{yzz{{z{{z{{z{zz{{z{zzz{z{zzzz{zzzzzzzzz{zzzz{zyzzzz{{zz{|z{zz{|zzzzz|z{zzz{z{zzzzzzzzzzyz{zyzzyy|yyzzzzzyzz{zz{zz{zzzz{zzz{zzzzz{zzzzzzzzzzzz{zyzz{z{{{zzz{zyzz{z{|zz{zz{z{{z|{zzzz|{yzzz{{zzzzzz{{z{zzz|zyz{z{{z{z{{z|{z{{z{z{{{z{zzz{z{z{zzz{z{{z{{yyyyz{zyyyyz|yyyyyzzyyy{zz{zy{zzzzzzzz{yyyzz{yyyyzzyyyy{|{}z{{z{|}z{{{z{||{{{{|{{{{{|{z|{{||{z{{||{{{z||{{{{{||{}z|{|z|}z{|{|{|||{|{|{{{|{||z||{||{|{{||{|{|||{|{|{||{}}||||{}|||||}|}|||}}|{||}}||{|}}||||}}|||||}||||||}{|}|}{}{|}|{}{}{||}{}{}}{{}{}}z|}{}}{}{{}}{}{}|}{}{}{}~|{~}~}~|}|~}~}~~~}~}~~}{~}~~}~|}~~}~}~~~}~}~}~}~}~}~{z{|}yz{|}y{|}z|}z}|}|{{{}}|{|{|}||z|z|}|{|z}|{{|z}|{{|z}|{|{z}|{|{|}|{|{|{|{|{}}|{|{|}|{{|{|}|{|{}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{|{|{}}|{|{|}|{||{|}|{|z}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{|{|{}}|{|{|}|{|{{|}|{|{}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{}{|{}}}{}{|}|{}{}|}}{}{}}{{}{}}{|}{}}{}{{}}{}{}}}{}{}{}|||~~}|}|}}}|}|}}~}|}}~}||}}~}||}}~}|}|}~}|}|}~}|}|}||||{}{|||||}{||||}{}zzz|{{||}|||{|}|||||}||||||||||||||||{}{|||||}{||||}|}|zz|{{||}|||{|}|||||}||||||||||||||||{}{|||||}{||||}|}||{|{{||}|||||}|||||}|||||||||||||}||{}{}|}||}{|}|}}|}}|}}}{|}}}}||}}}}|}|}}}|}|}|}|}|}||||{~~|||||}|||||}|~|||}|{||}~||||}~||||}~|||||~|||||||}|}~~|}|}}}}}|}}}~~|}}}~}}}}~|}|}}~|}|}}~|}|}|~|}|}|}}|{|{}z|{|{|}z{|{|{|||{|{|{{zz|{y||{||{|{{||{|{|||{|{|{|{|{}z|{|{|}z{|{|{|||{|{|{{{z|{z||{||{|{{||{|{|||{|{|{}{|{}z}{}{|}z{}{}{||}{}{}}{{}}}z|}{}}{}{{}}{}{}|}{}{}{|{|{~~|{|{|}|{|{|{|~|{|{||{{|{|{||{~|{|{{~|{|{|~|{|{|{}||{}}}|}||}||}|}}|}}|}}}}{|}}}||}}}}|}|}}}|}|}}}|}|}||||}~~||||}}}|||}}~~||}}~|}|}}~||}}~||||}~|||||~||||||}{z{|{}z{{z{|}z{{{{{||{{{{|{{{{{||z|{|{{z{{||{{{z||{{{{{}{|{}z}{}{|}z{}{}{||}{}{}}{{}{}}z|}}}z}{{}}{}{}|}{}{}{|{|{~~|{|{|}|{|{|{|~|{|{||{{|{||{||{|{|{{~|{|{|~|{|{|{|||{}z|||||}{||||}|}|||}|{{||}|||||}||||}|||||||||||||}{|{}}}{}{|}|{}{}{|}}{}{}}{{}{}|{|}{}}}{{}}{}{}}}{}{}{|||}~~||||}}}|||}}~~||}}~|}|}}~|{|}}~|||}~|||||~|||||||{|}{|{}z}{}{|}z{}{}{||}{}{}}{{}{}}z|}{}}{}{}}z}z}|}{}{}z|{|{~~|{|{|}|{|{|{|~|{|{||{{|{||{||{||{|{{|{|{|~|{|{|{|||{}z|||||}{||||}|}|||}|{{||}|||||}|||||}|||||||||||||{|{}{|{|{|}z{|{|{|||{|{|{{{|{||z||{||{|{{|||{|||{|{|{}{|{}}}{}{|}|{}{}{|}}{}{}}{{}{}|{|}{}}{}{{}}{{}}}{}{}{|||}~~||||}}}|||}}~~||}}~|}|}}~|{|}}~||||}~||||~|||||||{|{|{|{~~|{|{|}|{|{|{|~|{|{||{{|{||{||{||{|{{||{|{||{|{|{|||{}z|||||}{||||}|}|||}|{{||}|||||}|||||}|||||||||||||{|{}{|{|{|}y{|{|{|||{|{|{{{|{||y||{||{|{{||{|{||||{|{{{|{}z{{{{|}z{{{{{||{{{{|{{{{{||z|{{||{{{{||{{{{||{{{{}{|{}}}{}{|}|{}{}{|}}{}{}}{{}{}|{|}{}}{}{{}}{z{}}}{}}{|||}~~||||}}}|||}}~~||}}~|}|}}~|{|}}~||||}~|||{|~||||||{|{z|{~zz{y~|zzzzy}z|zzzz|{|~{{{|z~{{{{{|zz{{{{{zzz{{{{y{z{{z{z|{zz|z{{{{z{{{{{{{|z{{{{}z|{{{{z|{|{{zzz|z|{{zz{zzz{{zzzzz{z{zzzzzz{|{z{zz{{zzz{z{zzzzz{zzzzzzzzzz{zzy{{{zyz{zzy{z{zyzz{zzzzz{{zyzzz{zzzzzzzyzzzyz{|{{z{z||zz|z{|z|z{{y|{|||{{|{{|{|{{|zz|{|{{zzz|{|{{zz~zzz~{zz|yz{{{z{y{{{{~}z{{{~|z|{{{zz|{|{{zzz|z|{{|{~{z{z|{z{z{{{|{zzz|{|~}{{|{~|{{{{|{{{{{{{zz{{{{{{z{~{zzy|{zzz{z{{{z{zy{{~{z{z{~{zzz{z{zzzzz{zzzzzzz{|{~zz{z||z|z{|z|z{{z|{|~|{{|{~|{|{{|zz|{|{{zzz|{|{{zz~zz{y|z{zyzz{y{zzzy{{~{z{z{~{{z{{zz{{{z{{zz{{{z{y|{|{z{{zzz{|{{{z{z{}zzzz{|z|z{z|{||{{{|z{{{{{{|{z{{{{{zzz{{{{{||||{{|||{|||||||{|||||||{{||||||{{||{|||{{{|{|||{{|{|{z{{||{{{{||{|{||{{||{{{|{|{|{{{|{{{|{{{zz{{|{{{|{{{z{{{|zz{z{|z|z{{zz||{{{|z{{{{{{|{z{{{{{zzz{{{{{|{{{z{{{|zzzz{|z|z{{zzz|{{{|z{{{{{{|{z{{{{{zzz{{{{{{z~{z{z~|{z|zz}{{{{{{{{{{z{{{~|{|{{{{{|{|{{zz{|{|{|{||||{{|||{|||||||{||{|||||{||||||{{||{|||{{{|{|||{{|{{{z{z||{z|z{|{|{{{{|{|||{|{{|{|{{|{{|{|{{zz{|{|{{zz{zz{z|{{z|z{{{{{{{{{{{||z{{{|{|{{{z{|{|{{zz{|{|{{zz{zz{y|{{z|zz{{{{{{{{{{{|zzz{|{|{{{z{|{|{{zz{|{|{zzz{{z{z|{zzzzz{zzzzzzzzz{{zzzz{zz{zz{z{zz{zzzz{zz{zzz~{z{z~{zzzy{{zzz{{zzzz|zzzzz~{y{zz{{{{z{zzz{{{z{{|{{||{z{{|{{z|{|{|{{{|{{|{||{{{|||{{{{{{|{|{{z{{|{|{{|{{{z{z||{z|z{|{|{{{{|{|||{{|{{|{|{|{{|{|{{zz{|{|{{|{{zz{z||zzzy{|z|zzzz|{||{{z|z{{{{{|zz{{{{{zzz{{{{{zz{zz{y|{zzzy{zz{zzzzzz{|zz{zz{zzzz{zz{zz{{zzz{zz{zyz{{zzz{{zyzy{zzzzz{zyzz{zzzzz{{zyzzy{yzzzzzz{zzzz{|{~zz{z~|zz|z{|{|z{{{|{|||z{|{~|z|{{|z|{|{{zzz|{|{{z{{{{{{z{z|{zz|{{{{{z{{{{{{{|z{{{{|zz{{{{z||{{zzz|z|{{|{{zz{z||{zzz{|{|{z{z|{||{{{|{{{{{{{|z{{{{{zz{{{{{{zz{zz{y|{zz|zz{{{z{{{{{{||z{{{{|z|z{{zz|{|{zzz|z|{{|{{zz{z{|zzzy{|z|zzzz|{||{{z|z{{{{{z|zz{{{{zzz{{{{{|{{zz{z||zz|z{|{|z{{{|{|||y{|{{|z|{{|zz|{|{{zz|{|{{zz~zz{y~{{zzyz{{{{zzzz{{|zz{z{~z{y{{zz{y{z{{z{{{z{{zzz{z{{{z{z|{zz|{{{{{z{{{{{{{|z{{{{|zz{{{{z|z|{{zzzz|{{|{{zz{z{|{zzy{|{|{zzz|{||{{{|{{{{{z{|z{{{z{{zz{{{{{zz{zz{y|zzzzyzzz{zz{zzz{|zzzzz{{zz{{zzz{zz{{zzz{z{{zz{zz{y|{zz|zz{{{z{{{{{{{|z{{{{|z|z{{zz|{|z{zzz|z|z{zzzzyz{zzzyx}zz{zyyzzzzzzzzz{zzzzzzz{zzzzyzz{zzzyzzzz{{y{{yy{zz|z{{yzz{zzz{yz{{}y{zzz{z{y{zzy{y{y{zzzzzzyy{zyzyzy{yyzzyyzzzz{y{zz{zzyzzzzzzzyzyyzzzzyzyy{yzy{zyyyyzyzyyyzzyyz{zyzy{{zyyz{zzyyyyzyyzyyyyzyzzy{y{zyyxyzzzyyyzzyzz{yyzy{zyyzzzzyyyyzyyzyyyyzyzzzz{zz{yy{xz{z{{yxy{zzz{yy{z{y{yyz{y{y{yzy{y{y{yzz{zzzzzzzzzzz{zz{zyyzzzz{zzz{|zzzzzzz{zzzzzzz{zzzzyz{zzzy|yzyzzzzyzzzzyzz{zy{y{{zzyz{zzzzzyzyyzzzzyzz{zz{zzz{z{zz{y{{zzy{zzz{zz{z{z{zzz{z{z{zzy{z{z{zyxyzz{zzzzz{zzzzz{zzzzzzzzzzzyzzz{zz{z{{zzzzzzz{zzzzzzz{zzzzz{zzzzz{zzzzzzzzz{zzzzz{zz{z{{zzzzzzz{zzzzzzz{zzz{{{|{{{|{|{{{||{||{{z{|{|{{{{|{{{{{|{{{{{{{{{{{{{{{z{{{z{{|{{zzz{{{{{z{{{{|{z{z|{zz{{{{{{{zz{zz{{zzzzz{{zzzz{{zzzzzzzz{zzzzz{zz{z{{zzzz{{z{zzzzzzz{zzzyzzzz{zzz{yz{zz{z{{yzy{zzzyy{{{z{zyz{z{z{zzy{z{z{zyzzzz{zzz{yz{zz}z{{yzy{zz{yy{{{z{zyz{z{z{zzy{z{z{z{z|{{{|{z||zz|{z|z||{{z|z{{|z|{|z|zz{|{|z|z{z|{|z|zzz{zz{zz{{zz{zz{z{{zzy{zz{{z{{{z{zzz{z{z{zzz{z{z{zzzzzz{zy{{zz{zz{z{{zzy{zz{{z{{{z{zzz{z{z{zzz{z{z{zzyzzzy{z{{yyyzz{zzzyxzzzzz{yzy{yyzzz{yzyyzzyzyzyyzzyz{zy{y{{zyyyzzzzyyzzzzz{zyzy{zyzz{{zyyyzzzzzyyyzz{{z{{{{{{|{{{{{{{{{{z{{{{{{{{{{{{{{{{{{{z{{{{{{{z{{zz{zz{{z{{zz{zz{z{{zzz{zzz{zz{{{z{zz{z{z{zzz{z{z{zzz{zyz{z{zzzzyz{zz{zyzzzzzzzzzz{zzzzzz{zzzyyzz{zzzyyyzzzyyzzyyyzz{yyyxxyyyyz{yyyz{yyyyzyyyzyzyzyyyzyyyy{zzzz{zyyyyzzzyyyzzyyz{yyyy{zzxyy{zyyzyzyzzyyzyzz{zz{zzz{zz{zz{z{{zzy{zzz{xz{z{y{zzz{{z{zzy{z{z{zzzzzzz{z{{z|{zy{{z{z{{yzz{zz{{yz{{{yzzz{{z{{zzz{z{y{zzz{zyz{z{zzzzzzzzz{zzzzzz{zzzz{{zzzzzzz{zzyyzz{zzzzzzzz{zy{{yz{zz{z{{zzy{zzz{yy{z{z{yzz{z{z{zy{z{z{yyyy{zyzy{zyyxyzzzyxyzzyyz{yyyy{yzxyy{zzyyyyyxzyyyyzz{zz{zzz{zz{zz{z{{zzy{zzz{yz{z{y{zzz{y{z{zz{z{z{zzyzzzz{y{zyzyxzzzyzzyzyzzzzz{y{zzyzzzzzyzzzzyzzzzzzzyyzzz{z{{z|{yy{zz{z{{yzz{zzz{yz{{{yyzz{{z{y{zzz{zy{zzz{zzzzzzzzzzyzzzz{zyyzzzzzzzz{{zzyzzzz{zzzzyzz{zzzyzzyz{y{zyzyyzzzyzzzzyzz{zyzy{zzzzzzzzzzzzyyzzzzzzzzzz{zyz{yy{zz{z{{yzy{zzz{yz{z{y{yyz{y{y{yzy{y{y{yzyzyzxyzyzyzxzyzyyyxyyzyzzzyyzzyzyzzyzyzyzyyzyzyzzzzzyzzxzzyyyyxzzzy{xyzz{zyzyzzzyzzzzzzyyzzyyzzyyyxzyzyyzyyzzzyzyyzzyyyzzyzzzzyyyzzyzzzzyzyzzyzyzyzyzyyyyyyzxzyyyyzyzyyyyxxyyyzyzyyzzyyyzzyyyyyzyyyyyyyxyyyyyxyyyyxyyyzyxyxxzyyyyyyyyzzyxxyzyyxyxyyyyxyxyzzyyyyyzzyyyxyzyzyyyyzyyzzyyzyzyyyzzyyyyxzyyyyyyyxyyzyzyzyzyzyzyzyzyyyyzyzyzzzyyzzyzyzzyzyzyzyyzyzyzzyzzzyzzzzyyyzzzzzy{xxzz{zyzyzzzyzzzzzzyyzzyyzzyyyyzyyzyyyzzyyyyyyzyyyyzyyyzzyzyzzyyyzzyyyyyzzyyyyyyxxyyyy{zzzyzzzyzzzzzyyyzzzzyyzzzz{zzzyzzzyzzzzzzyyzzzyzzyyyzyzzzyzzzzzyyyzzzzzyzzzz{zzzyzzzyzzzzzzyyzzzyzzyyyzzzzzyzzzzzyyyzzzzzyzzzz{zzzzzzzzzzzzzzyyzzzzzzyyyzz{{z{z{{{z{{{{z{{{{{z{{{{zzz{{{{zz{{{{{zzzzz{{{{zzzzzzzzzz{zzzzzzzzzz{zzz{zzzzz{zzzz{zzzzzzzzzzzzzzyzzyyyzyzzyzyzyyzzyyyzzyyyyyzyzzyzyzzyzyzyyyyzyzyzyzzyyyzyzzyzyzyyzzyyyzzyzyyyzyzzyzyzzyzyzyyyyzyzyzyzzyzyzzzzzzyzzz{zyzyzzzzyzzzyzzyzyzzyzyzyzzyzyzyzzzz{z{y{zz{{{y{zz{zz{{zz{{{z{zz{{y{z{{z{y{z{{z{z{y{zzzzzyzzzzzzyzyzzzzy{zzzz{zzzzzzyzzzzzzyzzzyyzzzyzzyyyzyxyyzyyyxyzyzyyyyzyyzzyyyzyyxzzyyyyxzzyyyyyyxzyyyzyyzyzzyyxzzzzyyyxzyyzzyzyyzyyzzzyyyyzzzyyyyyxzzyyzyxyzzzyyyyzzzzyyzzyyzzyyzzzyyzzzzyyxzzzzyzyyxzzz{zzzzz{z{zzzzzz{{zyzz{zzz{zz{z{z{z{z{zzzzzz{zzzzzzyzzzyzzzzzzyzzzzzzy{zzzz{zzzyzzzyzzzzzyzzzyyzzzyzyyyyzxyzxzyyxyzzzyxyxxyyyxyyzyyzzyxyzyyxyyzyyyxyxyyzyyzyyyzzzyyyyyzzyyyyzyyyzyyzyzyyyyzyyyyyzzyyyyyyzyzzzyzzzzzzyzyzzzzy{zyzz{zzyyzzzyzzzzzyzzzyyzzzyzyyyzyzyyyzyyzzzyzyzzzyyyzzzzzzzyyy{zyyzzzyzzzyzzzyzyzzzzzzyzzzzzyyyyzzzzy{yzzz{zyzzzzyyzzzzzzyzzyyzzyyyyyzyzyzzyzyzyzzzyzyyyzyyzyzzyyyzzyzxzzyzyzzyyzyzyzyyyyzxxzxzyyxxzzzyxyxxyyyyyyzyxzzyxyyzyyxxyyyyxyxxyzyyzyxyzzzyyxyyzzyyyyzyyyzyyzyzyyyyzyyyyxyzyyyyyxzyzzzyzzzzzzyzyzzzzy{zzzz{zzyyzzzyzzzzyzyzzzyzzzyzzyyyzyyyxzyyyyyzzzyyyyzyyzzyyyyzyyyzzzyxyyzzyyyyyyyyyyzyzyzyzyyzzzyzyzzzyyyzzyzzzzyyy{zyxzzzyzxzzzzzzyyzzyzzzyzzzzzyyyyzzzzy{xzzz{zyzyzzzyzxzzzzyyzzyyzzyyzzyyyyyyzzyyyyyzyzyyyyzyyzzyyzyzyyyzzyyyyyzyyyyyyyzzyzxyyyyyyxyyyyyyyzzyzyzzyzyyzyyyyzzyyyxyyyyyyyxyyyyzyyzyxyxyxzxzyyxyyzyyyzzzyyzzyyyyzzyyyxyzyyyxyxyyzyyyzyxzyyyzyyzyyzzzzyzzyzyzzzzyyyzzzyyyyzzyyyyyxyzzzyyzyxyyyyzyxzyyzyzzyzzyzyzzyzyyzzyzyyyyyzyyyyyyzyyzyyyxzxxxyzxyyxxxzyyyzyzyyzzyyyyzzyyxxyzyyyxxxyzzzzyzyyyyyxzzxzyyzxzzyzzyzyzzzzyyyzzzyyyyzzyyyyyyzzyzxzzyyzxyyzyyyyzzzzyzzyzzyzyyyyzzyyyxyyyyyyyxyzzzzzyyzyyyyyzzzzyyzyzzyzzzzyzzzzyzyzzzyyyzzzyyyyyyzyzyyyzzyyyyzzyzyyzzxzyzzzzyzzzzyyyzzzyyyyzzyyyyyyxyyxyzzzzyyzzzzyyyzzyzyyzzzzzyzzzzzzzzyzzzzyyyzzzzyyyzzzyzyyyzzzzyyyzzyyyyzzzzyyzzzzzzzzyzzzzyyyzzzzyyyzzzyzyyyzzzzyyyzzzzyyzzzzyzzzzzzzzzzzzzzyyzzzzzyyyzzzyzyyzzzzzzyzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzyzzzzzzzyyzzzzzzzzzzzzzzzzzzzz{yzz{zzzz{zzzyz{zzzzzyzzzzzzzyyzzzyyzyyyyyyzzxzyyzzzzyzyzyzzzzyyyzzzyyyyzzyyyyyyyzzzyyzyyyyyyzzyzyyzzzzyzyzyzzzzyyyzzzyyyyzzyyyyyyzzzzyyzyyyyyyzzxzyyzzzzyzyzyzzzzyyyzzzyyyyzzyyyyyzzzzzzyzzzzzzyzzz{zzzzzzzzzzzzzzzzzzzzzzzyzzzzzzzyzzzzzzzyzzyzyzyzzz{zyzzzzyzzzzzzzzyzzzzzyzyzzzyzyzyyzyyzyyyyyzxyxyzyzyxyxzyyyzyyyzyyyyzzzyyyxyzyyyxyxyzzzzyyyyyzyyyzzyzyyzxzzyzzyzyzyzyyzzzzyyyyzzyyyyyyzzzzyyzzyzyyyzzzzyyzyzzyzzyzyzzzyyzzzzyyyyzzyyyyyyzzzzyyzzzzzyyzzzzyzzzzzzzzzzzzzzyyzzzzzyyyzzzyzyyzzyzzyzyzzzyzzyyzzzzyyzzzzyzzzyzyzzzzzzzzzyzyzyzyzyyyzyyyyyzzyzyyyzzzzyyzzyyyzzzzyyzzyyyzzyyyyyzyyyyyyyyzzzyyyyyxyyyzzxzyyzxzzyzzyzyzzzzyyyyzyyyyzzyyyyyyzyzzyyzzxyyyyzzzzyyzyzzyzyyzyzzzzyyyzzyyyyzzyyyyyyyzzzyyyyyzyyyzzyzyyzzzzyzzyzyzzzzyyyzzyyyyzzyyyyyyyyzyyyzyyzzyyzzzzyzzzzzzzzzzyzzzyyyyzzzyyyzzzyyyyzyyyzzzzyyzyyyyyyzzzzyyzyzzyzzyzyzzzzyyzzzzyyyzzyyyyyyzzyzyyyyyyyyyzyyyyyzzyzyzzyyyyzzyyyzzzyyyyzyyyyyyyzyzyyyzzxyyyyzzzzyyzyzzyzzyzyzxyzyyyzyzyyyyzyyyyyyzzyzxyyyyzyxyyzxzyyzzzzyzzyyyyzzyyyyzzyyxyyzyyyxyyyzzzyyzyyyyyyzzyzyyzzzzyzzyzyzzzzyyyzzyyyyyzzyyyyyzyzyyyzyyzyyyzzyzyyzyzzyzzyzyzzzyyyzzzzyyyyzzyyyyyyyyyzyyzyyzyyzxyxzzyzyxxxzyyyzyyyyzzzyyzzzzyyxyzyyyxxyyzzzyyzyyyyyyzzyzyyzzzzyzzyzyzzzzyyyzzzyyyyzzyyyyzz{{{zzyz{zzzzy{z|zzz{yzzz{{{zzz{{|zyz{{|zzzy{{zzzzzzzyyzyyzz{yyyyzz{{yyzyzzyzyz{yyyyz|yzyyz|yzyzz{yzyyyy{yzzyzy{{zzyzy{x{yzyz{zzyz{{{{yz{|zy{zz|zyzyz{zyzyz{{{z{|z{{|{z|z{{{||z|{{|z|{||{{{{||z{{z{|z|z{{|z|z|zyyz{{{zzzz|yzzzz{y{zzz{{zzz{{{z{z{{|zyz{z|zzzyz{zzzzzy{zyyzyyy{yyxyy{zyyyxzzyyyzyy{zyzzyxy{yzzyxyyzzyyyxyy{zzyzzyy{yyzxz{zyzyzzzyyzzzy{zzzzzyy{zzzyzxyzzyzyzxy{z{{{zzz{zzzzy{z|zzz{zzzz{{z{zz{{zzy{{{zzzzy{zzzzzzz{zyyzyyz{zyyyz{{{yyzzzzyzzz{{zyzz{yz{yz{yzyzz{yzyyyz{{{{zz{z{z{z{z{{{z{z{{z{z{{{{{z{{|{z{{z|{z{zz{{z{zzyyyz{yyz{zz{{{{yzz{{zzzzz{zzzzz{zzyyyyzzz{zzzzz{zzzyz{zzzzzyzzzzzzzyzz{{zzzzz{zzzzz{zzzyyzzzz{zzzzz{zzzyz{zzzzzyzzzzzzzy{{{{zzzz{{zzzzz{z{zzyzzzz{z{{zz{z|zy{{z|zzzyz{zzzzzzz{{{zzzzz{zzzz{{{{zz{z{z{{z{z{{{z{zzz{z{zzzzz{zzzzzz{{{{{z{z{|{{z{{{{|z{{{z{{{{{{{{{{{{z{{{{{z{z{{{z{z{yyzzz{zyyy{yyzyzzz|zyz{{zyyzyyzz{{zyyyz{zyzyy{zyzyzyy{{zz{zyy{{yyzyz{z|zyz{{zyyz{{zz{{|yy{z{|yzyy{{yzyzyzyzzz{zyzy{yyzyzz{|zyz{{zyzz{yzz{{{yzyz{{yzyz{{yzyzyyz{{{{zzzz|zzzzz{z|zzz{{zzz{zz{z{{zzyz{{zzzzy{zzzzzz{z{|{{{{{z||{{{{{{|{{{{{|{{{{z{{{{|{zz{{|{{{z{{{{{{{zy{{zz{zyy{|zyzyz{z|zyz{{zyz{{z{z{{zyy{z{zyzyy{zyzyzyy{{zyzzyy{{yyzyz{z{zyzzzyyzzz{{zyz|yy{zz|yzyyz{yzyzxzyzzyzzyzy{yyzyzz{{zyzzzyyzzz{yzzz{yzyzz{yzyzz{yzyzyyz{{{zzzzz|zzzzz{zyzzz{zzzz{zzz{z{zzyz{zzzzzyzzzzzzzz{z{{{zzz{{zzzzz{{|zzz{{zzz{{{{zz{{zz{{{{zzzz{{zzzzzzz{{z{zzzz|zzzz{z{|zz{{{{z{{{zz{{{{|zzz{|zzyz{{zzzzyzzzzzzyzzyzz{yyzyzz{{zyzzzzyzzz{yzzzz{yzzz{yzyzz{yzyzyzyzyyzyyzy{yyyyzz{{yyzyzyyzyz{yzyyz{yzyz{yzyzz{yzyyyyz{{{zzzzz|zzzzz{zyzzz{yzzz{zzz{z{zzzyz{zzzzyzzzzzzzyyzzz{zyyy{yyzyzzz|zyz{{zyz{{yyzz{{zyyyz{yzyy{zyzyzyz{z{{zzzz{{zzzzz{{{zzz{zzzz{z{{zz{zzzz{{z{zzzz{zzzzzyz{{z{zyzz|zyzy{z{|zy{{{{y{{{zz{{{{|yzzz{|yyy{{yzyzyzyyyzz{{{zzzz{zzzzz{z|zzz{{zzz{{yzzz{{zzyz{{zzzz{zzzzzzyz{{{zzzzz|zzzzz{zyzzz{yzzz{zzz{z{zzzyz{yzzzzyzzzzzzyyzzz{zyyy{yyzyzzz|zyz{{zyz{{yyzz{{zyyyz{zyzyy{yzyzyyyzzyzzyyy{yyzyzzzyzyzzzzyzzzyyzzzzzyyyzzzyzxyzzzyzxz{z{{zzzz{{zzzzz{{{zzz{yzzz{z{{zz{zzzz{{z{yzzzz{zzzzyz{{z{zyzz|zyzy{z{|zy{{{{y{{{zz{{{{|yyzz{|yzyy{{yzzyzyyyyyzzyzzyyy{yyzyzzzzzyzzzyyzzzyyzzzzzyyyzzzyzxyzzyzyz{{||{{{{|}||{{{{|}z{{{|{|z{{|{|z}{|{|{{||{|{{{{{|{{{{{{{|z}{{{|}||{{{||}z{{||}||{||}|y}||}|{{||}|{{{{}|{{{{{{|{z{{{{|}||{{{{|}z{{||{|z{||{}{}{|{}{{|z{}{{{{{|{{{{{{|}z{{z{|}|~z{z{|}z{z{z{~~z{z{~z}{z{~z{|z{~z{z{{~z{z{z}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}}~|}|}||{{{|z{z{{||zzyz{|}z{zzz{|zz{z{|z{{z{|{z{z{|{yz{{|{{zyz{{{|z{{{{||zz{z{|}z{z{z{|zz{z{zz{{z{|zz{z{|{{z{{|{{z{z{{{||{{{{||z{{{z|}z{{{|{|z{{|{|z{{|{|{z{|{|{{{{{|{{{{{{{{|z}{{{||z{{{|z}z{{||}||{||}zz{||}z{{{|}z{{{{}z{{{{{{|{{z{{{{|||{{{{|}|{{||{|z{||{}|{z|{}{z|z{}{{{{{|{{{{{~|}~z{~{~|}~{~{~|}z~{~|~~~{~|~~{}~|~~{~|z~~{~{~{~{~{~{yyzz{yz{|}z{|}z|}z}z}{z{zzz{z{z||zz{z{z}zzzzzzzz{{z{z{{{z{z{zzz{z{z{zzz{z{z{z{zzz{z{z||zz{z{z}z{zzzzzz{{z{z{{{z{z{zzz{z{z{zzz{z{z{{{|z{{{{{||{{{{{|}{{{{{|z{{{z|z{{{{|{{{z{|{{{{{|{{{{{{|}|z{{z{|}||z{z{|}z{z{{|zz{{{|z}{{{|z{|z{|{{z{{|{{z{z{{{||{{{{{||z{{{{|}|{{||||{||{}{{{|{}{{{|{}{{{{{|{{{{{{{{~{}{{{{~~~{{{~|}z{{~|}~{~|}~{{~|}~{{{|}~{{{{}~{{{{{{{{|z}{{{{||z{{{||}z{{||}z|zzzzy{||}{{{{|}{{{{{}z{{{{{{{{|z}{{{{||z{{{||}z{{||}||{zz{z{||}{{{{|}{{{{{}z{{{{{{|}|z}{{{|}||{{{||}z{{||}||{|{|z}||}|{{||}|{{{{}|{{{{{{{{|z}{{{{||z{{{||}z{{||}||{||}{{||}}{{{|}}{{{{}|{{{{{{{{~z}{{{{|~~{{{||}z{{||}|~{||}z{||}~{{{|}~{{{{}~{{{{{}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}}~|}|}||{{{||{{{{{||z{{{{|}z{{{|{|z{{|{|z{zz{zy{|{|{{{{{|{{{{{{|}||{{{{|}||{{{{|}z{{{|{|z{{|{|z}{{|z{||{|{{{{{|{{{{{{{{||{{{{{||z{{{{|}z{{||{|z{||{}{{{|}{z{|{}{{{{{|{{{{{{{{~|{{{{{|~~{{{{|}z{{{|{|~{{|{|z{{|{z{{|{~{{{{{~{{{{{{{{||}{{{{||y{{{||}z{{||}||{||}}{{||}}{{|}}{{{{}|{{{{{{|}~|}{|{|}~~|{|||}|{|||}~~|||}~|}||}~|||}~|{|{}~|{|{||{{|}|z{{z{|}||z{z{|}z{z{z{|zz{z{|z}{z{|{{|{|z{z{{|{{z{z{{{|z{{{{{||z{{{{|}z{{||{|z{||{}{{{|{}{y{z}{y{{{|{{{{{{{{~z{{z{{|~~z{z{|}z{z{{{|~z{{{|z{{{{|{{{z{z{z{{~{{z{z{{{|z}{{{{||z{{{||}z{{||}||{||}|z{||}|{{{|}|{{{}|{{{{{{{{||{{{{{||z{{{{|}z{{||{|z{||{}{{{|{}{{{|{}{{{{|{{{{{{|}~|}{|{|}~~|{|||}|{|||}~~|||}~|}||}~|{||}~|{{}~|{|{{z{{{{{|z{{{{{||z{{{{|}z{{||{|z{||{}{{{|{}{y{z{}{{{{z{y{y{{{{~z{{z{{|~~z{z{|}z{z{{{|~z{{{|z{{{{|{{{z{|{{z{{z{z{z{{{|z}{{{{||y{{{||}z{{||}||{||}|y{||}|{{{|}|{{{{}|{{{{{{{||{{{{{||z{{{{|}z{{{|{|z{{|{|z{{|{|{z{|{|{{{{{|{{{{{{{|z{{{{{||y{{{{|}z{{||{|z{||{}{{{|{}{{{z{}{{{{{|{{{{{|}~|}{|{|}~~|{|||}|{|||}~~|||}~|}||}~|{||}~|{|{}~|{||z{{{zyzyyxxyyzyzxxyzyyzxxzyzzzyxyyyzzxyyzzyzxyyyyzyzxzyxyyyyxzzyxyxzyyyxxyyzxxyxxxzyzyyzxzyyxyzyyyxyxyxxyzyyzzyzyzyzyxzzyyyyyzyzzzyyzyyzzyyzzzzyzyzyyzzyzyzyzyyyyyzyzyyyzyyzxyyyzzzyxyyyzzyyyzzyzyyyyyzyzyyyxyxxxyxyzyxxyzxxyxxzxyyxyxyxxyzxyyyyxyxyyyyyxyxxzyzyyxzzzyzxxzzyyyxyzyzzyxxzyyyzxxzzzyyyxyyyzyyyyzyzyyxyyzyzxxyzyyzxxzyzzzyxyyyzzxyyzzyzxyyyyzyzxxyzyzyzzyzzyzyxzzyyyyyzyzzzyyzyyzzyyzzzzyzyzyyzzyzzyyyyyyyyzyyyxzzyyyxxzxyyyyxyzyzzyzyzzyyyzyyyyyyyyxxyyzyxxxzxxxzyyxxxyyyxxxyyxxyzyyyxzyyxyyzyyxxxyyxyxyyzyxyzyyxzyyyxxxyyxxzyyxyyzyxyxzyzxzyyyyxzxzxzyzyyyxzzzyzxzzyyyxyzyzzyxxzyyyzxxzzzyyyxyyyzyyyyzyzyyyyyyzzzyyzyyzxyzyzzzyxyyyz{yyyzzyzyyyzyzyzyzxyxyzyyxzzyxyxzyyxxyyyyxyyyxzyzyyzxzyzyyzzyyyyxyyzyzyyyyzzzyzyyzzyzyyzxzzzyxzyyzzxyzzzyzyyyyyzyzyxxxzyzyyzzzyzyzyyyzzyzyyzzyyzxyzzzyyyyzyzzyzyzzyzyzzyyzyzyzzyzyzyyyzzyzyyzzyyzxyzzzzyyyzyzzyzyzzyzyzzyyzyzyzzz{zzzzzz{z{zzzz{zzz{zzz{zzzzz{{zzz{{z{zzzzz{z{z{zzzzzz{yz{zzzz|z{zzzzzzzzzzzzz{zz{y{zzzz{zzzzzzzzzyzyzyzyz{zzyyzzzyzyyzzzzzyyyy{zyzy{zyzyzzyyzyzyyzyzyyyyzzzyzyxzzyyyyyzyzzyyyzyyyxyzzzyyyyyyyzyyyyzyzyyyyzzzzzyxzzyyyyy{yzzyyyzyyzxyzzzyyyyyzyzyyyzz{z{zzzzzz{zzzz{{zzzzz{z{{z{z{zzzzz{{zzzzzzz{zzzzzzyzyyyyzzzzzyyzzzyzyyzzzzzyyzzyzzyzzzzzyzyzzzyzyzzyzyyyyzzzyzyyzzzyyyyzzzzyyyzzyzzyzzzyyyzyyyzyyyyyyyyyzyyyzyyyxzzyyyxyzyyyzxyyyyzzxyyzxyzyyyyyzyzyxyxyzzyxyzyxyxzyyyxxyyzyxzyyyyyzyyyxzyxzyzyyyzxzyzzzzzzz{zzz{zz{z{zzzyzzzzzzzzzzzz|zzzz{zz{zzz{zzy{yzyzyyzyzzzzzyyzzzyzyyzzzzzyyzyyzzyyzzzzzyyzzzzzzyzyzyyzyyyzyzyyzzyyzxyzyzzzyyyyyzzxyyzzzzxyyyzzzzxyxyxyyxyxyyyxxyyyxyxyzxyyxxxyxxyzxxyyzxyyxzxyxyyyxxxyzyxxxzyxxxzyyxxxyyyxyxyyxxyzyyyxzyyxyyzyxxxyyzyzyyyyzzzyzyyzzyyzyyzyzzzyxzyyzzxyzzzxzyyyyzyzyyyzyzyzyzzyzz{yzzy{zyyyyyzyzzzyyzyyzzyyz{zzyzyzzzzyzyzyzyyzyyyzyzyyzzyyzyyzyzzzyyyyyzzyyyzzzzzyyyzzzzzzyzyyyyzzzyzyxzzyyyyyzzzzyyxzzyzzyxzzzyyyzyyyzyyyyyyyxxyxyxyxyyzyxyxxyyxyyxxyyyyyxxyyyxyxyyxyxyxyxxxxxxxxyxxyxyyxxxxyyxxxxxxyxxyxxxxyyxxxyyxxxxxxxxyyyyyxyxyxyyxyyyxyxxyyyyxyyyyyyzxxyzzyyyyzyyxyyyyyyyxxyxyxyyyxzyxyxxxyxyyxxyyyyyxxyyyyyxyyyyxyxyxxxyyyxyyxxyyyyxxxxyxyxxxyyxxyyxxyyyxyxyyyyxxxyxyyyyyxyyyxyxxyyyxyxyyyxyxxxyyyyzyxyyzxyxyzxyxyxyyyyyyxyxyxyyxyzyxyxyyyxyyxxyyyyyxxyyyxyxyyxyxyxxxyyyyyyxyyxyyxyyyxyxxyyyyxyyyyyyzxxyzzyyyyzyyxyyyyxxxxxxyxxxxxyyxxxyxyxxxxxxyxxyyyxxyyxxxyyxxxxxxyxxxxxxyxxxxyxyxxxxyyxxyxxxyyxyxxxxyyxxxyyxxxxxyxxxyxyyxyyxyyyyxxxxyxyxxxyyxxyyxxyyyxyxyyyyxxxyxyyyyyxxyyyxyyyyyxyxyyyxyxxxyyyyzyxyyzxyxyzxyxyxyyyyyyxxyxyxyxyzyxyyxyyxyyxxyyyyyyxyyyyyxyyyyxyxyxxxxxxyyxyxxxyyxxxxxxxxxxyyxxxyxxyxzyxxxyyxxxxxxxxxxxyyyyyyyyyxyyxyyyxyyzyyyyyyyyyyxyyyyyyxyyyyyxyyyyyyxyyyyyyxyyxyyyxyyzyyyyyyyyyyxyyyyyyxyyyyyxyyyyyyxyyyyyyxyyyyxyyyyzyxyyyyyyyyyyyyyyyyyyyyyxyyyyyyxy{yzyzyy{yzyzyzyzzyyyy{yyzzy{zzzzyyzzzyzyzzyzyzyyyzyyyyyyzzyyyyzzyyyyyyyyyyyyyyzyyyyzyyyyyyyyyyyyyyyyyxyyyyxyxyyyyxyxyyyxyxyyyxyxxyyyzyyxyzyyxyxyyyyyyxyyyyxyyyyyyxyxyyyxyxyyyyyyxyyyzyyxyzyyxyxyyyyyyxyyyyxyyyyzyxyyyzyyyxyyyyyyyyyyzyyxyzyyxyxyyzyzzzyyzzzyzyy{{zyzyy{yz{yzyzzzzzyzzzyzyzzzzyzyyyyyyyxyyyyxyxyyzyxyxyyyxyyyyyyyyzxyyzyyxyzyyxyxxxxxyxyxyyyxxyyyyxxxxyxyxyxxyxyyyxxxyyxxyyyyxxxyxyxxyxyxyyyxxyyyyxxxyyyyxyxxyyyyyyyxyyxxyyyyxxxyyyxxyxyyxyyxxyyyyxxxxyyyyxxyyyxyyxxyyyxxyyyyxxxyyzyyyyyyzyyyyzyzyzzyyyyyyzzyzyzyyzzzyyyzzzzyzzyzyzyyyyyyyxyyyxyyyyzyxyyyyyxyyyyyyyyzxxyyzyyyzyyxyyxyxxxxxxxxyxxxxyyxxxyyyxxxxxxyxxyyyxxyyxxxyxxxxxyxxxxxxyyxyxxxyyyxxxxxyxxyxyyxyxyxxyxyyxxxyxxxxxyyyyyyxxyyyxyyyyzyxyxyyyxyyyxyyyyzxxyyzxyxyzyxyxyxyxyyyyyyxyyyxyyyyyyxyxyyyyyxyyyyyyzxxyzzyxyyzyyyyyyyyyyyyyyyxyyyyzyxyxyyyxyyyyyyyyyxyyyyyyyyyyyxyyyyyyyxxyyyxyyxyyyxyyyyyxyxyxyyyyzxxyyzxyxyzxyxyxxxyyxyyxyyxxyyyyxxxyxyyxxyyzxxyyyyyyyyyxyyyyyxxxyyyxyyxyyyyyyxyyyyxyxyyyyyxyyyyxyyyyyyyyyxyyyyyxyxyzyyyyyyzyyyyyyzyyyyyyyyyyyyyzyyyyyyyyyyyyxyyyyyyyyxxyxxxzxyyxxxxxyyxyxxxyyyyxxxxyxxyzyyyyzyyxyyzyyxxxxyyyxyxyyyyyyxyzyyxyxyxxyyxyyzyxyyyyxyyyyxyxyyyxyxyyyyyyyyxyyyyxyyyyxyxyyyyyyyxyyyyyyyxyyyyxyxyyyxyxyzyxyyyyzyyyxyyyyzyxyyyyxyyxzyyyyzyyyyzyxyxyyyyyxyyzxxxyzxyxyyyxyyyyxxxyxyyxxyyzxxyzyyyyzyyxyyzyyxxxyyyyyyyyyyyyyyyzyyyyyyyyyyyyyzyyyyyyyyyyyyyyyyyyyyyxyyxxyyxyyyyyxyzxyxyxyxxyyxyyzyxyyyyxyyyyxyxyyyxyxyzxxxxzxyzxxxxxyxyxxxyxxxxxxxyxxxzyyxxzyxxyxzyxxxxyzyyyyyxyzyyyyyyyyxyxyyyyyyyxyyyyyyyxyyyyxyxyyyxyxyzzxyyzzyzyyyxzzyzzxyyzyxyyxzzyyyzyyzyzyxyyzzyyyxyyzyyxyyxyzyyyyxyyyxyxyyyyyxyyzyxyyyyyyyyyxyyyyyxyxyzyyyyyxyzyyyyxyyyxyyyyxyyyyyxyyyyyyyyyyyxyyyyyxyxyxxyyxyyyyyyzyyyyzxyzyyyyxyyyyyyxyyyyyxyyyyyzyyyyzyyxyyzyyyyxyyyyyyzxyyyyyyxyyyyxyxyyyyyxyyyyyzyyyyzyyxyyzyyyyxyzyyyyzxyzzyzyyyyzyzyyyzyyyzzyyzyzyyyyzzyxyyzzyzyxyyyzyyzxyyyzzyyyzyzyyyyyyzyyyzyyyzyyyyzyyyyyzyyyyxyyyyyyzyyyzyyyyyyzzyyyyyyyyyyzyyyzyyyyzyyyyyzyyyyyyyyyyyyyyyyyyyyyyyzyyyyyyyyyyzyyxyyyyyzyyyyyyyyyyyyyyyyyzyyyyyyyyyyyzyyyyyyyyyyzyyyzyxyyzyyyyyzyyyyyxzyyyyzyyzyyyyyyzyzyyyyyyyyyyzzyyyyyyyzyyyyyzyyyyyyyyyyyyyyyyyyyyyzyzyyyyyyyyyyzzyyyzyyyzyyyyyyyyyyyyzyyzyyyyyyyyyyyyzyzyyyyyyzyyyzyyyyzyzyzzzyyyyyzyyyyyxxxxzxxyxxxxxyyxyxxxyyyyxxxxyxxyzyxyzyxxxyzyxxxxxyyxxyyxyyyyyyxyzyyxyxyyxyyxyxzyxyyxyxyxyxyxyyyxyxyyyyyyyxyyyyyyxyyyyxyyyyyyyyyyyyyyyyyyyyyxyyyyyxyxyyyyyyzyyyyyyyyyzyzyyyyyyyyyyzzyyyzyyyyzyyxyzyyyyyyyyzyxyyyyyzyyyxyyyyzyxyyyyyyyxzyzyyzyyyyzyyyyyyyyxyxyxyxyyxyyxyyyxyzyyxyxyyyyyxyyxxxyyxyxyyyyxyyyyxyxyyyxxyyxyyyyyyxyzyyxyxyyxyyxyxzyxyyxyxyyyyxyxxyxyxyzyyyyzxyzyyyyxxyxyxyyyyyyyyyyyyyyyyxyyzyyxxyzyxyxxyyxyyyyyyyyyyyyyyzyyyyyyyyyyzyyyyzyyyyzyyyyyyyyyyyyyyyyyxyyyyyyxyzyyyyyyyyyyyyyzyyyyyyyyyyyxyyyyyyxyyxxxyyyyyxyyyyyyxyyyyxyyyyyyyyyyyyyyyxyxyyyyxyxyyyxyyzyyyyyyyzyyyxyyyyzyxyyyyxyyxzyyyyzyxyyzyxyxyyyyyxyzyyyyxzzzyyyzxzzzyxzyzz{{yyzyzyyyyzzyzyyyzxzyyyzxzxz{xyyyxy{zxyyyyy{zyyyyy{yyyyyy{zyyy{y{zyyyyxy{yyyxyxy{{yy{yz{{y{yzyz{{yyzyz{{{yyz{zyyy{zz{zy{yzyz{{yzyzyzz{zzzzzz{zzyzzzz{yzzzzzz{zzzz{zzzz{zzzzz{zzzzz{zzzzyyyzzyyyxzzzyxyzxzzzxxzyzz{{yyzzzyyyzzzyzyyzzxzyyzzxzxzz{yyyyxyyyyyyyyz{yyyyyzy{yzyyzyzyzzzyzyzzzxyyyzzyyxyz{yzy{yyyy{yyyyz{yyyzy{y{yzz{yyzy{{zyzy{{zyyy{{zyyyyz{yyyyyzzyyyzyzz{yyzyzz{{yyzyzyyyyzzyzyyyzxzyyyzxzxz{{yyxyyy{yyyyyy{{yyyyy{y{yyyy{zyyy{z{zyyzzyy{yzzyyyy{{{zyzz{{{zy{z{{{{z{z{{{{{z{z{{z{z{{{{{z{{zz{z{{zzzzyz{yyy{yyz{y{yyyz{yyyyy{y{yyy{{zyy{{zyzy{yzyyy{yzyyyy{yyyyyyx{zyyxyxzyxyxyy{yxxyxzzxyyzyx{yyyyxxx{yyxyxyx{yyyyyyx{zyyyxxzzxyxxy{yxxzyzzyzyzzx{yyzzxxx{yzxyxxx{yyzy{yy{zy{yyyzyyyyzx{y{yzz{zyzy{{y{yy{{yyx{{{yyyyx{zzyyyyz{zyyzzyzzzyzyz{{{zyzzzzyyzzz{zyyzzxz{yzzxzxz{{y{y{{z{{y{yz{z{y{z{z{{{y{z{{z{y{{z{zy{yz{z{{yz{z{zxyxy{yyz{yz{{{{yyyyy{yxyyy{yyyxzzyyyyy{yyyyyyyyy{zyyyy{zyyxy{zyyyyxzzyyy{yyzzy{yyyyzzyyyyy{yyyyyzyyy{zyyzy{zyyyy{zyyyyy{{yyy{yy{{y{yyyy{zyyyyy{y{yyyyyyy{zz{zy{zzyy{{zzyyyyyzyyz{yzyzz{zzyzzzzyzzz{{{zzzzzzz{zzyzz{zzyzy{zzyzyz{zy{y{{z{zy{yz{z{{y{z{z{{{y{z{z{y{{z{zy{{z{z{{{z{z{zzzyzyzyyzzyyyyyyzzyyyzzzy{yzzz{yyyyyyzyz{yyyyz{yyyyy{{yzyzyy{{yyyyyy{yyyyzz{y{yzzz{yzyyz{zyz{zyy{z{zyyyyyzyzyzyzyzyyyzyzzzyyzzzz{{yzzz{yzyzzyzyz{zyzyz{zyzyzyzyzy{yyyzy{yyyyz{yyyzz{y{yzz{{zzy{yyzy{{yyxy{{yyyyxz{{{z{{{z{{{{{{{{{{{{{{{{{{{{{{{{{{{zz{{{{{yz{{{{{{yy{zyzyzyy{zyyyyyy{{yyyzz{y{yzzz{yzyz{y{yz{yyx{z{yyyyx{{yyyyyy{{yyyyyy{yyyyzy{y{yzyzzxzyzzz{zyyzxy{yzzyyxyyzyyyyyzyzyyyzyzzzyyzzzz{{yzzzzyzyzzzyzyzzxzyyzzyzxzyzyyy{yxyzy{yyyxz{yyyzy{yxyzy{zzzy{zyyzy{yyxy{zyyyyx{zyzy{yz{zy{yzyz{zyyzzz{{{yzz{{yzy{{z{zy{{yz{{{zyzyzz{yzyzzzz{yzzzzzz{zzzzzzz{zzzz{zzzz{zzzzz{zzzz{zzzyzyyyzyyyyyzyzyyyzyzzzyyzzzz{{yzzzzyzyzzzyzyzzzxzyzzyzxzyzyyyyyzyzyyyzyzzzyyzyzz{{yyzyzyyyyzzyzyyzzxzyzzxzyzyzyyy{yxyzy{yyyxz{yyyyy{yxyyy{yzyy{yyyzy{yyyxy{yyyyxyyyzyzyyyzyyyyyyzzxyyzzzy{yzzz{yzyz{xyyyz{xyxyz{yyyx{zyyy{yz{zy{yzyz{zyyzzz{{{yzz{zyzy{zz{zy{zyyz{{zzzyzz{yzyzzyz{yzyyzyz{yzyzzzy{yzzz{zzyz{yzzyz{zzyzz{zzzyyyxyyyzy{yyyyy{yyyyzyyyyzz{y{yzz{{yzy{{xyyy{{yyxy{{yyyy{|{{|z{|{|{}{z{|{|{z{{{|}{{{{|}||{{|}||{{|}||{||}||{z{|zzzzz{|{}z{{z{|{|zz{}{|}z{}{|{|zz{|{}|{{z{}|{|z{||{z{|{zzzz{|{|z{{z{|{|~z{z{|}z{z{z{~~z{z{~|{{z{~|{|z{~|{z{|}|{zz{|}}{{{z{|}||z{}{|}{{}{|{|zz{|{}|}{z{}|{|z{||{z{|}~|||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{||}~|{|{{||}|z{z{z{|z{{z{|}||z{z{|}y{z{z{|zz{z{|y}{z{|x{|z{|z{z{|}||{|zz{||{{z{|}||z{{{|}y{{{|{|z{{|{|z}{|{|z{||{|z{z{|}|{{|z{{|{}{z{|}||z{{{|}{{{{|}||{{|}|y}{|}|z{||}|z{z{|}zz{zz{|}z{{z{|}||z{}{|}z{}{|{|zz{|{}z}{z{}z{|z{|z{z{|}~z{zz{|}z{{z{|}|~z{z{|}z{z{z{~~z{z{~z}{z{~z{|z{~z{z{|}~|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}|zzzzzzzzzzzz{zyzzzzzzzzz}zzzzz{|zzzz{zzyzz{zzzzz{zzzzzz{|z{zz{z{|z{{{{{|zz{z{|}z{z{z{|zz{z{{z{{z{|zzzz{|z{z{z{||{|z{z{||{{z{{|zz{{z|}z{{{|{|z{{|{|z{{|{|zzz|{|z{zzz{|{{|z{z{|{}{z{{|{z{{{z}{{{{|}||{{|}{z{{|}{z{z|}zz{z{|{|zzzz{|{}z{{z{|||z{}{|}|{}{|{|zz{|{}|{{z{}|{|z{||{z{|}~{{zz~|}~{{~z~|}~z~}~|}{~}~|~~~z~|~~z}{z~~z~|z{~z~z~yyyz{yyyzzy{|}z|}z}{}z{z{zzzzz{{{yzzzz{|{zzzzz}{zyzzzzzzzz{z{zzz{zzzzzzzzzzz{z{zz{zz{{{zz{zz{|{zz{zz}{zy{z{zzz{z{z{zzz{{zzzz{{z{z|{|{zzz{|{|{{{z{|{|{z{zz|}{{zz{|zz{z{||{{z{||{|z{||{z{|}|{{zz{|}|{{{z{|}||z{{{|}{{{{{|{{{z{|z}{z{|z{|z{|z{z{z{||{|z{z{}|{{z{|{|{z{}{|}|{}{|||{{|{}z{{|{}zzz|{|z{zzz{~{~|{{z~~{}{{~|~~~{~}~|}{~}~|}~{~|}~z{~|}~{{z|}~{{{{z{|z{|z{z{|y}{z{{{|zz{{{|}y{{{|}z|yzz{y{{|}{z{z|}zz{z{|{|z{|z{|{|z}{z{|{|zz{{{|}y{{{|}||{z{||{{|}||{||}||{z{|}|z{|z{|}|y}{z{|}||z{{{|}z{{{|}||{{{|z}{|}|z{||}|z{z{z{|z{|z{z{}z}{z{|{|zz{}{|}z{}{|}||{{|}z{{|}}z{z|}zz{z{z{~{{|z{z{~{}{z{{{~~z{{{|}{{{{|}|~{{|}z{{|}~z{z|}~z{z{|}~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}||{||{|z{|{||{{z{|{|zz{{{|}z{{{|{|z{{|{||{z{||{||{||{z{|}||{|z{|}||{{z{|}||z{{{|}z{{{|{|z{{|{|z}{{|z{||{|z{z{z{||{|z{z{}|{{z{|{|zz{}{|}z{}{|{|z{{|{}z{{|}zzz|{|z{zzz{~|{|z{z{~|{{z{{{~~z{{{|}{{{{|{|~{{|{|z{{|{zzz|{~z{zzz{||{|z{z{}|}{z{|{|{z{}{|}{{}{|}||{{|}}z{{|}}{z|}|z{z{|}~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||}~|{|{|{|}|z{zz{|}|z{{z{|}||z{z{|}z{z{z{|zz{z{|z}{z{|z{|{|z{z{z{|z{zz{z{}z{{z{|{|zz{}{|}z{}{|{|zz{|{}z{{z{}zzzzzzzz{z{~{{zz{z{~{{{z{{{~~z{z{|}{{z{z{|~z{z{|z{{z{|zzzz{zzz{z{|z{|z{z{|z}{z{{{|zz{{{|}z{{{|}||{{|}|z{{|}|z{z|}|{z{z{||{|z{z{}|{{z{|{|{z{}{|}{{}{|{|z{{|{}z{{|{}zzz|{|zz{|}~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{||}~|{{z{zyxyxxxxxyxxxxxxyyyxxxxxyxxxxyyxxxyyxyxyxyxxxyyxxxxxxxxxxxxxxxyxxxxyxyxxxxxxxxxxxxxxyxxxxxxxxxyxxxxxyxxxxxxxxxxxxxxxyxxxxxxxxxxyxxxxyxxxxxxxxxxxxxxxxxxxyxxxxxxyxxyyxxxxyyyyyyyyxyxyyxxxyyxxxxxyxxxyyyyxxyxyxxxxxxxxxxxyxyxxxxxyxxxxxxxxxyxxyxyxyxxxyyxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxyxxxxxxxxxxyxxxxxxxxxxxxxxxyyxxxyyxyxxxyyxyxyyxxxyyxxxxxyxxxyyxyxxyxyxxxxyxxxyxxyyyxyxxxyxxxxyyxxxyyxyxyxyxxxyyxxxxyxxxxxxxxxxxxxxxyxxxxyxxxxxyxxxxyxxxxxxxxxxyxxxxxxxxxxxxxxxxxyyxxxxyyxyyyyyxyxxyxxxyyxxxxxyxxxzyyyxxyxyxxxxxxxxxxxyxyxxxxxyxxxxxxxxxyxxyxyxyxxxyyxxxxyxxxxxxxyxxxxxxxyxxxxxxxxxxyxxxxxxxxxxxxxxxyxxxxxyxxxxxxxyxxyyxxyyxyxxxyyxyxyyxxxyyxxxxxyxxxyyxyxxyxyxxxxxyxxxyxyyyxyxyyyyxxxyyxxxyyyyxyyyxyxyyxxxxxyxyxyxyxyxyyyyxxyyxyyyyyxyxyyxxyyyxxyxxyxxxyyyyxxyxxxxxxxyxxxxxxxxxxxyxxxxxyyxxxxxyxxxxxxxxxyxxxxxxxxxxxxxxxxxyxxxyxxxxxxxxxxxxxxxxyxxxxxxxxxyxxxxxxxxxxxxxxxxxyxxxyyxxxxxxxxxxxxxxxyxxxxyxxxxyxxxxxyxyxxxxxyxxyyxxxyyxyxyyyxyyyyxxxyyxxxxyyyxxyyxyyxyxyxxxxxxxxxyxxyyyxyxyyxxxyxxxxxyyxyxyxyxxxyyxxxxxxxxxxxxxxxxyxxxyyxyxxyxxxxyxxyxxyxxxyyxxxxzxxxxxxxxxxyxyxyyyxxxxxyxxxyxyyyyxyxxxyxxxyyyyxxyxyxyyyxxxyyxxxxyyyxxxxxxxxxxxyyyzxxxxxyxxxyyyyxxxxyxyyyxxxyyxxxyyyyxyxxyxxyxyxyyyyxyxxxyyxxyyyyxyyxyyyyyxxxyyxxxyyyyyzyxyyyzyyxyyyzyyyyyzyyyyyzyyzyyyzyyzxxyyzyyxyyyyyxxxyxyyyxxyyzzxxxxyyxxxyyyyxxyyxxyyyxyxyyxxxxxxxxxxxxxxxyyxxxyyxxxxxyyxyxxyxxxxxxxxxxxxxyyxyxxxxxxxxxxxxxyyxxxyyxxxxxyyxyxxyxxxxxxxxxxxxxyyxyxxyxxxxxxxyxxyyxxxyyxxxyxyyxyyyyxxxyxxxxxxxxxyyxyxyxyyyyzyyxyyzyyyyyyyyyyyyzyyyyyzyyzyyxyzyyzxyzzyyxxyxyxxxxxyxxyyxxyyyxxxyyyyxyxxyxxxyyxyxyyyxxyyxyxxxxxxxxxxxxxxxxxxyyxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxyxxxxyxyxyxxxxxyyxxxxxyxxxxxxxxxxxxxxyxxyxxxxyxxyxxxxxzxxxxyxxxxxyxxxxyyxxxxyxxxxyxxxxyxxxxxxxyxxxxyyyxxyyyxyyyyyyyxyyxyyzyxxxyyyxxxzyyyxyxyxxxxxxxxyyxxyyyxyxxyyyxyyyyxxxyxxyxyyyxxxyyxyyxyxxyzyyxxyyyyxyyyyyyyyxyyyxyyyxxyxyxxzyyyxzyxyyzyxxxyyyyxyyyxyyyyyxxyxyyxxxyyyxxxyyxyxyyxyxyyxxxyyyyyxyyyyyxxyyyyyyyyyyyzyyyyyyyyyxyzyyxyyyyyyyyxyyyxxyyyxyxyyyyxxxyyyxxxyyyyyyxyyyxyyyxxyxyxxxyyyxxyxyyyyxxxxxyyxyxyxxyyyyxxxxyyxxxyyyxxxyyxyxxzxxxxzxxxxyyxxxxxzyxyxyxxzyxyxxxxyyxxxyyyxxyyyxyxxyyxyxyyxxxzyxxxxyyxxxyxxyxxyxxxyxzxxxxyxxxxxyzyyxyyxyyyyyxxyyyyxyxyyyyyyyyyyyyyyyyyyyxyyyyyyyxyyxyxyyyyyyyyxyyyyyyyxyyzyxxyyyzyyyyyyyzyyyyyyyyyxyzyyxyyyyyyyyxyyzxyyxxxxxxyyxyyxxyyxyxxxxyyxxxyyyxxxyyxyxxzxxxxzyxxxyyxxxxyxyyxxyxxyxyxxxxyxxxxxyxxxxxyzyyxyyxxyyyxxxxyyyxyxyyyyyxyyxxyyyyyyyyyxyyyxyyyxyyxyxyyyyyyyyxyyyyyxyxxyzyyyxyyzyxyyyyyyyxyyyyyyyyyyxyxxyyyyxyyxyyzyyxyxyyzyyxyyyyxyyyyyyzyxyyyxyyyxyzyyxyzyyyyzyxyyzyyyyxyyyyyyyyyyyyyyyyyzyyyyyyyyyyyzyyyyyyyyyyyyyyyyyyxyxyyyyyxyyyyyxyyyyyyyxyyyxyyyxyzyyxyyyyyyyyyyyyyxxxxxyzyxxxyxyzyyyxxxyxxxxyxxxxxxyxyxxzxyxxzxxxyzyxxxxyyzyxxyyxyzyyyxxxyxxxxyxxxxxyyxyxyyxyxyyxxxyzzxzxxxyzzxyxyzyzyyyxzzyyzxyyzyxxyyyzyxxzyyzxzyxyyzyyyyxyyzyyyyyyyzyyyyyyzyyyyyyyyyxyzyyxyyyyyyyyyyyzyxxxxyyzyxxxyxyzyyyxxyxxxxxyyxxyxyyxyxyyxyxyyyxxyzxxyyxyyyyyyyxyxxyxzyyxyyxxzxyxxxxxyyxxxyyxxxxyxyxyzyxxyzyxxxzyyyyxyyyyyxyyyyyxyxyyyxyyxyxyyyyyxyxyxyzyyyyzyxyyyyyyxxyxzyyyyzxxzyyzxxxxzyzxxyzyxxzzxyzyzyxxyzzxxxzyzyyxyyyyyyyyxyyyzyyxyyzyxyxyyyzyxyyyxyzyyyyzyyxyyyyyyxyyyyyxyyyyyxyyyyyyyyxyyyyxyyxyyxxyzyyyyzyyyyyyyxyxyyyyyxxxyyyyxyyyyxyyxyxyxyyyyyyxyxxyyyyyyxyyyyxxxxyxyyxyxyxxyyyyxxxxyyxxxyyyxxyyyxyxzxxyyzyxxxyyxxxxyxzyxxyyxxzyyyxxxyzyxxxyxxxxyyyyyxyxxyyzyxxxzyyyyyyyyyyyyyyyyyyyyyyyzyyyyyyyyyyyzyyyyyyyyyyyyyyyyyxyxyyyyyyyyxyyyyyyxyyzyxyxyyxyyyyzxyxyyyyyyyyxyyyxxxxxxyyxyxyxxyyyyxxxxyyxxxyyyxxxxyxyxxzxxxzxxxxyyxxxxyxyyxxyyxxyyyyxxxyzxxxxyxxxxxyyyyxyxxxyyxxxxyyxxyxyyyyxyyyxyyyyyxxyxyyxxxyyyxxxyyxyxyyxyxyyxxyyyyyyyyyyyyyxyyyyyyyyyyyzyyyyyyyyyyyzyyyyzyyyyzyyyyxxyxxxxxxzyxyxyxxzyxyxxxxyyxxxyyyxxyyyxyxxyyxyxyyxxzyxxxxyyyyxxyxxyyyyxxxyyzxxxxyyxxxxyzxyxyyxyxyyyxxyyyyyxy{yyyxyyy{yyyzyyy{yzyyyy{yxyyxz{yyxyzy{yxyzyyy{{yyyxyz{xyxyzyz{yyyyzzz{yyyzzzy{yyyzzxyyyzyyyyyyyzyzzzzyzy{zyyz{zy{zz{zyzz{zyyzzz{{{zyz{zyyz{zy{yz{zyyy{{zzzyyz{zzyzzyz{yzzyzzz{zzyzzzy{yzyz{yzyz{yzyyz{yzyzxyy{yyyyy{{yyxyzy{{xyyyzz{{yyyzz{y{yyyzyyyyyyy{yyyyyzy{zzyyxyyyzyy{zyzzz{zyzyzzxyyzy{y{yyy{yyyy{{yyyy{{yyyyzzyzxzyzzxzyzyzzzyzyzzzzyyzzzz{{zyzzzyyzyzyyyzyzyyyyzyyyyxy{yyxyzy{zyyzyzy{zzyyzy{yxyyxz{yyxyzy{yxyzyyy{{zyzyzy{{yz{zy{{z{zyzz{{yyzzz{{{zyz{zyyz{zy{yz{zyzy{{zzzyzzz{zzzzzz{zzzzzzz{zzzzzzz{zzzz{zzzz{yzzzz{yzyzyyzzyzxzyzzzxzzyzzzyzyzzzzyyzzzz{{zyzzzyyzyzyyyzyzyyyy{yyyyyyz{yyyyyyyyyzyzzz{yyyzzzy{yyyzzyyyzzyyyyzzyzyz{zyyyyyz{zyy{zyyz{zyzzz{yyyzz{y{yyy{yyyy{{yyyy{{yzyz{zyzyzyz{zyzyzyzzyzyzzz{yyzzzz{{zyzzzyyzyzyyyzyzyzyz{yyyyxy{{yyxyzy{yyzyzz{{zyyzz{y{yyyz{yyyyzy{yyyzyzy{{{{{{y{{{{{yz{{{{zz{{{{{{{{{{{{{{{{{{{{{z{{{{{z{{{z{y{yyyyxyz{yyx{zyz{x{yzzz{yyyzz{y{yyy{{yyy{zyyyy{zyzyzzyyyyxy{zyyxyyy{zyyyyyyyyyyyy{yyyyxzzyyxyyy{yxyyyyy{zyyyyyy{zyyyyyy{zyyzyyyzyyyyy{yyyyyzzyyyzzy{yyzzyyy{zzyyyyy{zzyy{yy{zz{zyyyyyyyyy{y{yyy{zyyy{{y{yy{{yyy{zzyzyzz{zzyzyzz{zzyzzzzzzyzzz{{{zyzzzzyzyzz{zzyzyyz{{z{z{zy{{z{z{{y{{z{zy{z{z{z{z{{{z{z{{y{z{zy{yz{zy{y{xyxy{yyz{yz{{{{yyyxyxyyyxxx{yyzyy{yxyxzzxyxyy{yxyxzyxyy{zyyxx{yyyyyzyyyxxyzzyxy{zyzzy{yxzyzzyyxxy{yxxxzzxyy{zyyyx{yyyyy{yyyyxy{{yyy{zy{{y{zyzz{zyyyzy{y{yyzyyyy{zy{yy{yyzy{zzxzxzyyzzyz{yyzzz{zzyzzzzyzyz{{{zyzzzyz{zyyzz{zzyyyyz{z{zy{yz{z{{y{{z{zy{z{{z{z{z{{{z{z{y{z{{y{yz{{y{y{zzyyxyyzzzxyyzyzzzyzyzyyzyyyyyzy{yyyz{yxyyyyyyz{yyyy{zyyyyy{{zyyyzy{{zyzyzz{yyyyzy{y{yyyz{yyyyy{yyz{yzy{yzxzxzyyyzxzyyyyzzyzyyzyzyyzyzz{{zyzz{yyzzyyyzz{yyyyzzyyyyyyzzyy{yyy{z{zyyyy{zyyyy{y{yyy{{yyy{xyyy{{yyxy{{zzzz{z{{zz{z{z{{{{{z{z{{z{z{{{{{z{{{{z{{{zyz{{{zyzyyzyyyyy{yzyyyyy{{zyzyyy{{zyyyy{y{yyyz{yyyz{y{yz{yyy{{yyyyyy{{yyyyzy{{yyzyzz{yyyyzy{y{yyyzzyyyzzy{yyyyzy{yzxzxzyyyzxzyyyyzzyzyyzyzyxzyzz{{zxzzzxxzzzyyyzzyyyyyyxyxyyyyyxy{yyy{y{zyyyy{zxyyy{yyyxy{zyxy{zxyyy{xyyyyzyzyzy{yzyz{yy{zz{zyyz{zyyzyz{{{zyz{{yyz{{y{yz{{yy{{zzzzyzz{zzzzzzz{zzzzzzz{zzzzzzz{zzzz{yzzz{zzyyz{zzzyyzzxzxzyyzzxzyyyzzzyzyyzzzyxzyzz{{zxzzzxxzzzyxyzzzyyyzzzz{{z{}zzzz{|{}z{{}{|{|zz{}{|}z{z{|{|zz{z{}z{{z{|z{z{zzz{{z{|zzzz{z{|z{{z{z{|~z{z{|}{{z{{{~~z{z{~{{{z{~{{z}|{z{{|}|z{z{{|}|z{{{{|}||z{{{|}z{z{{{|zz{z{|z}{z{|z{|{|zz{{|{}zzz{{|{}z{{}{|{|zz{}{|}{{z{|{|{z{z{}|{{z{||{|}~|{{{|}~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{|z{z{||{z{z{||{|{{|{||{{{{|{|zz{{{|}z{z{|{|zz{|{||{{|{||{|{|z{z{{{|z{|{{|{|z}{{{|{|zz{{{|}z{z{|}||z{|}||{{|}||{|{|z{zz{|}zzz{{|{}z{{}{|{|zz{}{|}z{z{|{|zz{z{}|{{z{||{|{~z{zz{|{zzz{{|{|z{{{{|{|~z{{{|}{{z{{{~~z{z{~|{{z{~|{|}|z{z{{|}}{z{{|}}z{{}{|}||z{}{|}{{z{|{|{z{z{}|}{z{||{|}~|{|{{|}~|||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{|{|}zz{z{{|}{z{zyzz{y{{{{|}z|z{{{|}y{z{{{|zz{z{|y}{z{|z{|}||{z{{|}||{|{z{||{{{{|}||z{{{|}y{z{|{|zz{|{|z}{|{|z{|}|z{z{{|}|z{|{{{|z}{{{|}||z{{{|}z{z{|}||z{|}|y}{|}|z{|}zz{z{{|}}z{z{{|}z{{}{|}||z{}{|}z{z{|{|zz{z{}z}{z{|z{|}~z{z{{|}~z{z{{|}z{{{{|}|~z{{{|}{{z{{{~~z{z{~{}{z{~{{|}~|}|}}|}~|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||zzzzzzzzz{zzzzzzz{z{zyzzzzzzzzz}{zzzz{|{zzz{{{yzz{z{zzz{{z{zzzz{{zzzz{z{z{zy{z{zzz{zz}{z{zz{|{{zz{{{zzz{z{zz{||{z{{z{||{|z{z{||{{zz{|zz{zz|}{{z{|{|{z{|{|{{{|{|{zz{|z{z{{z{|z{|{{z{|z}{{{{|{z{{{|}{{z{|}||z{|}|{{{|}|{{z{|z{zz{|{}zzz{{|{}z{{}{|||z{}{|}|{z{|{|{z{z{}|{{z{||{|}~{{{{~|}~{{z{~|}~z{~}~|}~{~}~|}{{{~|~~~{{z~~{}{z{~{~|yyyz{yyyzzy{|}z|}z}{}{zzzzzzz{zzzzzzz{zzyzzzz{|zzzzzz}zzyzzzzzzzzzz{zzzzzzz{|z{z{{z{|zzzz{z{{z{{z{z{|zz{z{|}z{{{{|zz{z{|z{{z{|z{z{|z{zz{|{|zzz{{|{|z{{{{|{|zz{{z|}z{z{{|zz{z{||{{z{||{|}zz{z{{|}{z{z{{|}{z{{{{|}||z{{{z}{{z{{|{z{z{|{}{z{|{{|{||{z{{z{}|{|z{|{}|{{}{|{|zz{}{|}|{z{|||z{|{}z{{|{|zzz{~z~z~{z~~z~|z~|~~z}~}~|~~~z~}~|}{~z~|}~z~|}~{{~|}~{{z{|z{z{{z{|x{|z{z{|y}{z{z{|zz{z{|}y{z{|}||{z{|z{{|}|z{z{|z{z{{|{|z{|{{|{|z}{{{|{|zz{{{|}y{z{|}||zz{||{{|}||{|}|z{z{{|}|z{|{{|}|y}{{{|}||z{{{|}{{z{|}||z{{|{}{|}|{{|{|z{z{{z{}z{|z{|{}z}{}{|{|zz{}{|}z{z{|}||z{|}z{{|}zz{z{~z{z{{z{~z{|z{z{~z}{z{z{~~z{z{|}z{z{|}|~z{|}z{{|}~z{z}~|}|}}|}~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||{||{z{{|{||{|{{|{||{{{{|{|zz{{{|}z{z{|{|zz{|{||{z{||{|}||{z{{|}||{|{{|}||{{{{|}||z{{{|}{{z{|{|{z{|{|{}{{|{{|{||{z{{z{}|{|z{|{}|{{}{|{|zz{}{|}z{z{|{|zz{|{}z{{|zzzz{~|{z{{z{~|{|z{z{~|{{z{z{~~z{z{|}z{z{|{|~z{|{|z{{|{zzz{||{z{{z{}|{|z{|{}|}{}{|{|zz{}{|}{{z{|}||z{|}}{{{|}|{z}~|{|{{|}~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||{zyyyyyzyzyyyyzxyzyyyxzzxzyyyzyzzyyyzzxzyyyywxyyyxzxzxxxxxzzxxxxyxzzxxyyyxyxyyxxxyzxxxyyzwxxxyyyzxyzyxzzzyyyyzzxyyyyzzzzyyyyzzyzyyyzyzyyyyzzyzyyyyxyyyyzzxzzyyyyyzzyyyyzyzyyyzyzyyzyyyzyzzyyyzzyzyyyyyzyyyyzyxxyyzxxxxxzzxxxxyxzzxxyzxxzxyyxxxxzxxxxzzwxxxyywzxyyxxzzzyyyyzzzyyxyzzzzxyyyzzxzyyyzyzzyyyzzxzyyyyxxyyyzzxzzxyyyyxzyyyyzyzzyyyyzyyzyyyzxzxyyyzzwzyyyyxxyyyzzxzzyyyyyzzyyyyzzzzyyyxzyxzyyyzyzzyyyzzxzyyyyxxyyzxzzzzyyyyyzzyyyyzzzzyyyyzzyzyyyzyzyyyyzzyzyyyyyzyyyzzyzzzyyyyzzzyyyzzzyyyyzzzzzyyzzyzzzyyzzzzyyyyyzyyyyzyxyzzzyyyyyzzzyyyzzzzxyzyzzxzyyyzyzzyyyzzxzyyyyxxyyyzzxzxyxyxxyzxxxyyyzxyyzyyyyyyxxyyyyyxyzyyxxyyyyyxyzyyyzxyxxxxzzxxxxyzyxyyzxxzyyyxxxxzyxxxyzyxxxyywzxyyxxzzzxyyyyzzzyyyyzyzyyzyzzyzyyyzxzxyyyzzxzyyyyxzyyyzzxzzyyyyyzzzyyyyzzzyyzyzzyzyyyzyzzyyyzzyzyyyyxzyyyzzxzzzyzyyzzzzyyyzzzyyzzzzzzzyzzzzzzyyzzzzyyyzzzyyzyzzzzzxyxzxxyzxxxzyyyzxyzyyyyyzxxyyzyyxyzzyxxyyzyzxyzyyyzyxyxyxxzyxyxyyxzyxyxyyyzyyxyyxxxyxzzxyyxyyxzxyyxyxzzyyyyyzzzyyyyzzzzyyyxzyzyyyzyzzyyyzzxzyyyyyxyyyyzyzzyyyyyzzzyyyyzzzzyyyyzyzyyyzyzzyyyzzyzyyyyyyyyyyzzzzyyyyyzzzyyyyzzzzyyyyzyzyyyzyzzyyyzzxzyyyyyxyyzzzzzzzzzzyzzzzzyzzzzzzzzzzzzzzzzzzzzzyzzzzzyzzzzyzzzzzzzzyyyyyyzzyyyzzyzzyzzyzyyzyyzyzzyyyzzxzyyzyyxyzyyzyyzyyyyyzyzyyyyzzyzyyyyzzyzyyyyzyyyyzzyzyyyyyyyyzzzzzzzyzyyzzzzyyyzzzzyyyzzzyzyyyzzyyyyzzyzyyyyzyyyyzzzzzzyzyyzzzzyyyzzzzyyzzzzzzzyzzzyzyyzzzzyyyzzzyyzzzzzzzzzzyzzzzzyzzzzzyzzzzzzzzzzzzzzzzzzzzzyzzzzyzzzzzzzyyyyyzzzyyyyzzzzyyyyzzyzyyyzyyyyyzzxzyyyyyxyyyzzzxxyyxyzzzzxzxxxxxxzzxxxxyxzzxxyyxxzxzyxxxxzxxxxyzwxxyywzxyzxxzzzyyyyyzzzyyyyzzzzyyyyzzyzyyyzxzzyyxzzxzyyyxxyyzzzxyyyxyxxzyyxxyyxzyyyyzyxzyzzxxxyzyzxyyzyyxzzyyxyzyxzyzyyyyyzyzyyyzzzyzyzyyzzyzyyyzyzyyyyzzyzyyzxyyzzzzxzzyyyyyxzzyyyyzxzzyyyxzyyzyyyzyxzyyyzzxzyyyyxyyzxzxzzyyyyyzzzyyyyzzzzyyyyzzyzyyyzxzzyyxzzxzyxyyxxyyzzxyyyxyxxzyyxxyyxzyyyyzyxzyzyxxxyyyyxyyyyyxyyyyyxzyxyxyxyxyxzxyxyxyyzyyxyyxyzyzyyxyyzxxyxzxxyyxyyxxxyxyzzzyyyyyzzzyyyyzzzzyyyyzzyzyyyzyzzyyyzyyzyyyyxzyyyzxxxzxyyyyzxzyyyyzzyzyyzyzzyzyyyzyzxyyyzxxzyyyyxxyyyzzyzyzyz{zyzyyz{{zyyyyz{{yyzzyz{{zyzyzzz|zyyy{yyyyzzz{zzyzxzzzyzxyzzzzyyyyzzzyyzzyzzzzyzyzzzxzyyy{yyyyzzyz{zzyz{z{yzzzz{zzzz{zz{z{{zyzz{yzzyzz{{{yzz{{zzz{z{{z{yzzyz{|yzyy{{{|yyzy{{{zz{zy{{{{yzy{z{|zyzz|zyyz{{z{yyyzzyzyzzzzyzxyzzzzxyyyzzzyyzzyzzzyyzyzzzxzyyy{xyyyzzyz{yzyyyz{yzyzyyz{yzyyzyz{yzyyzyzyyyyzz{{yyzy{yyzyzyyzzzyzyz{zzyzyz{yzzyzzz{yzz{yzz{yzzyzz{zyyzyz|zzyz{{{zzyzyzyz{yzyyz{{zyyyyz{{yyzzyz{{zyzyzzz|zyyy{xyyyzzz{{zzzzz{z{zzzz{zzzz{zz{z{{zzzz{zzzzzz{{{zzz{{zzz{z{{z{yzyzyz{|yyy{{{|yzzy{{{zz{zy{{{{yzy{z{|zyzz|zyyz{{z{yyzzzzzzz{{zzzzz{{zzyzzz{{yzzzzz{{zzzzz{z|zzyz{zzyzz{{{{yzyzxzz|yzyyyz|yy{yzzz{{zzyzzzyyzyz{z{zyy{{yyy{{zyz{yzyzyzz{yzyzzz{yzyyzzz{yzzyzzzyyzyzz{{zyzy{yyzyzzyzzzzzzz{zzzzzyz{zzyzzz{zzz{zzz{zzzzzz{zyzzyz|zzyz{{{z{zzzzz{{{zzzzz{{zz{zz{{{{zzzz{{zzzzz{{|zzz{{zzz{z{{{{zzzzyz{|zzyz{{{|zzz{{{zz{zz{{{{zzz{z{|zzzz|zzzz{{z{zz{yzyzyzz{yzyzzzz{yzyzzz{yzzyzzzzyzyzz{{zyzz{yyzzzzyzzyzyzyz{zyzyyz{{zyyyyyyyyzzyz{{zyzyzzz|zyyy{yyyyzzz{{yzyzyz{|yzyyz{{|yy{yyy{{zzyz{{zyzyz{z|zyy{{yyy{{zz{{yzyzyz{{yzyzz{{{yzyyzz{yzzyz{{zyzyzz{|zyzy{yyzyzzz{zzzzzz{{zzzzyz{{zzyzzz{zz{zzz{{zzzzz{z|zzyz|zzyz{{{{{{{{{{{{|{{{z{{{|{zz{{{{z{{{{{{|{{{{{{|{{{z||{{z{|{{zzyzyzyz{zyzyyz{{zyy{yz{{y{zyz{{zyzyz{z|zyy{|zyy{{zz{zzyzyz{zzzyzyz{zzzyzzz{zzzzyyyyzzyzz{zzyzyz{zzyzz{{zzzyzyz{zzzyzyz{zzzyzzz{zzzzyyyzzzyzz{zzyzyz{zzyzz{{z{zzzyz{z|zyzyz{z|zy{zz{z{{zzzyzzzyzz{z{yzy{{zzy{{{{z{zzzzz{z{zzzz{{z{zzzz{{z{z{zz{z{zzz{{{{zzzz{zzzz{{{z{{z{z{{{{{z{z{{{{{z{{{{{{{{z{{{z{z{{{{|z{z{|{{z{{{{{yyyz{yyz{zz{{{{zyyyxyyzzyxyyyzzyxy{yyzyy{zyyxzzyyxyy{zxyyy{xyy{zyyzzyzyzxzzzyzxyzzzzyy{yzzzy{zzyzzzyyzxz{zxzyy{xyy{zzyzzzzzzz{{zzzzyz{{zzy{zz{{z{zzzz{zzzzzy{z|zzz{zzy{z{{{{yzyyyyz{yzyzyzz{yz{yzzz{{zyyzzzzyyyz{{{yyz{zyz{zyyz{{z{yz{z|{z{zz{{|{z{{z{{{{{y{z{{z{y{z{{{y{z{zzz{{{{z{yzyzxzz|yzyyzzz|yyyyzzz{yzzyzyzyyzyzzz{zyyz{yyyzzyz{zzzzz{{|zzzyz{{|zyzzz{{{zzzzz{yzzzzy{z|zzyz{zzzz{{{{yzyyyyz|yzyzyyz|yzyyzyz{yyyyzyzzyyyzz{{yyzz{yyzzyyz{zyzyzzz|zyzyyz{|zy{zyz{{{{yzyz{zzyzy{x{yzy{{zzy{yzz|z|z|zz{|z|z{{{||z{{z|{||{{|z|{{|z|z{{{||z{{|{z{{{z{y{zyzyz{z|zyzyz{{|zyzzz{{{z{yzz{{zzyzz{x{yzyz|yzyz{{{z{z{zz{|{{z{{{{|{{{z{{{|z{{z{{{|~z{z{|}z{z{{|~~z{{{~z{|{{{{|}|{{{{||}|{{{{||}|y{{{||}||{{{||}z{{{{||y{{{{|z}|{{{{|{|{{{{{|{|{z{{{|{|z{{{{|{|z{{{{|}z{{{{||z{{{{||{|{{{{z{}{{{{{|{}{{{{||{}{{{{||{|z{{{{|}z{{{{||y{{{{|z{~|{|||}~|{|{||}~|{||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{{{z|{{z{z{|z{z{{z{|{{|z{z{|z}{z{z{|zz{z{|}z{z{|}||z{|}|z{|{{{{{z}{y{{{|{}{y{{||{}{{{{||{|z{{{{|}z{{{{||z{{{{|z{~{{z{zz{z{z{{{{|{{{z{{{|z{{z{{{|~z{z{|}z{z{{|~~z{{{~z{|{{{{{|}|{{{||}|{{{{||}|z{{{||}||{{{||}z{{{{||z{{{{|z}|{{{{{|{}{{{{|{}{{{{||{}{{{{||{|z{{{{|}z{{{{||z{{{{||{~|{|{{|}~|{{||}~|{||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{{z|{{{{{|{|{{{{zz{zy{{{|{|z{{{{|{|z{{{{|}z{{{{||z{{{{||{|{{{{{|{|{{{{{{|z{|{{|{|z}{{{|{|z{{{{|}z{{{|}||{{|}||{|{{{{{|{}{{{{{|}{z{{||{}{{{{||{|z{{{{|}z{{{{||z{{{{||{~{{{{{|{~{{{{{|{z{{{{|{|z{{{{|{|~{{{{|}z{{{{|~~{{{{~|{|{{{{{|}}{{{{||}}{{{||}}{{{{||}||{{{||}z{{{{||y{{{{||}~|{|{||}~|{|{||}~|||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{|z{{{{{|}{{{{{||}{{{{zzzzy{{{||}z|{{{||}z{{{{||z{{{{|z}z{{{{{|}{{{{{||}{{{{{zz{z{{{||}||{{{||}z{{{{||z{{{{|z}|{{{{{|}|{{{{||}|{{|{|{|z}{{||}||{{{||}z{{{|}||{{|}|z}|{{{{{|}}{{{{||}}{{{{||}{{{{||}||{{{||}z{{{{||z{{{{|z}~{{{{{|}~{{{{||}~{{{{||}z{{{||}|~{{{||}z{{{{|~~{{{{~z}~|}|}||}~|}|}}|}~|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}|zz{z{zzz{z{z{{{z{z{zz{{z{z{zzzzzzz{z{z}z{z{z||zz{z{zzzzz{z{zzz{z{z{{{z{z{zz{{z{z{{zzzzzz{z{z}z{z{z||zz{z{zzz|{{{{{z{|{{{{{{{|{{{{{{z|z{{{{{|z{{{{|}{{{{{||{{{{{|z{|{{z{zz{|{{z{{{{|z{|z{{{|z}{z{{|zz{z{|}z{z{|}||z{|}|z{|{{{{{|{}{{{{{|{}{{{{||{}{{{{||||{{{{|}|{{{{||z{{{{||{~{{{{{|}~{{{{~|}~{{{{~|}~{{{{~|}~{{{~|}z{{{{~~~{{{{~{}yyzz{yz{|}z{|}z|}z}z}|{{zyzz{|{yz{{z{|{z{z{z{|z{{zzz{|zzyz{|}zz{{||zz{{{|z{|{{z{zz{|{{z{{z{|zz{z{z{zz{{z{z{|zz{z{|}z{{{||zz{{{|z{|{{{{{|{|{{{{{|{|{z{{{|{|z{{{{|{|z{{{z|}z{{{||z{{{{||{z{{{{{|}z{{{{||}z{{{{||}zz{{{||}||{{{|z}z{{{||z{{{{|z}|{{{{{z{}{{{{z|{}{z|{||{}|{{{||{|z{{{{|}|{{{|||{{|{{z{~{~{~{z~~{~{~~|~~{~|{~|~~{}~{~|~~~{~{~|}z~{~|}~{~|}~z{|{{z{zz{|{{z{{z{|y{|z{z{|y}{z{z{|zz{z{|}z{z{|}||{{{|z{|{{{{{|{|{{{{{|{|{{|{{|{|z}{{{|{|z{{{{|}z{{{|}||{{{||{|{{{{{|}|{{{{||}|{{|{||}|y}{{||}||{{{||}z{{{|}||{{{|z}|{{{{{z{}{{{{{|{}{{|{||{}{}{{||{|z{{{{|}z{{{|}||{{|{z{~z{z{zz{~z{z{{z{~z{|z{z{~z}{z{z{~~z{z{|}z{z{|}|~z{|}z{~|}|}||}~|}|}}|}~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}|{zzzzz{z{zzzz{{z{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{yzzzzzz{z{zzzyz|z{zyzz{|zzzzzz{|z{zzzzz{{zzzz{yyzzzzz{zzzzzzzz{zzzzzzz{zzzz{zzzz{zz{zz{zzzzzzyzzyy|yyzyz{zy{{zzzzz|{yzzz{z|{zzzz{zz{z{zz{z{|zzzz{zyzzzz{{{zzz{zyz{z{{z{z{z{zz{{z{zzzz{{z{z{{z{{y|{z{z{{z{zzz|zyzzz{{zyyy{{zzyyyyzz{yyxyzzz{yyyy{zyzzzyy{zz{zyyyzzyyyyz|yyyyz{zy{{zzzzz{{zzzz{z{{zzzz{z{{zzzz{z{{{zzz{zyzzzz{yyzzzz{yz{zzzzz{{zzzz{{z{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{yzzzzzzz{zzzzzz|z{zzzz{|zzzzzz{|z{zzzzz{{zzzz{yyzzzzz{{{zzzzzz|{zzz{z|{zzzz{zz{z{zz{z{|zzzz{zyzzzz|{{zzz{zyz{z{zzz{z{zzz{{z{zzzz{{z{z{{z{{z|{z{z{{z{zzz|zzzzz{{zyy{{zzzzzzzzz{zzzzzz{zyzz{zzzzzzz{zz{zzzzzzyzzzz|yyzzz{zy{zzzzzzz|{zzzzz|{zzzz{z|zzzzz{z{{zzzzzzyzzyz{{{zyzzzy{{zzzzzz{{zzzz{{{zzzz{z{{zzzz{z{{{zzz{zyzzzz{yyzzzz{yz{zzzzz{{{zzzz{{{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{y{{zzzzz{|{zzzz{||zzzz{|z{z{zz{|{|zzzz{{{zzzz{{{zzz{z{z{z{z{z{z{z{zz{{z{zzz{{z{z{{z{{z|{z{z{{z{zzz|zzzzz{{zz{{{{zzzzz{{{zzzz{{{{zzz{{{{zzzz{{z{zzzz{{yzzzz|yyzzz{zyzzzzzzzzz{zzzyzzz{zyz{zzzy{zz{zz|zzzzzzyzzzz{yyzzz{zy{zzzzzzz|{zzzzzz|{zzzzz|zzzzz{z{{zzzzzzyzzzz{{{zzzzzy{{zzzzzz{{zzzz{{{{zzzz{{{zzzz{z{{{zzz{zyzzzz{yyzzzz{y{{zzzzz{|{zzzz{{|{zzzz{{{z{zz{{{|{zzz{{yzzzz{{{zzz{{yz{z{z{z{z{z{zz{|z{zzzz{|zz{{z{|z|{z{z{{{{zzz|zzzzz{{{{{{zzzzzz{|{zzzzz||{zzzz{||zzzz{|{{zzzzz{{zzzz|{{zzz{z{z{zzzzz{z{zzzz{|z{zzzz{|z{z{y{zz{zzzz{{{zzzz|yyzzz{z{z{zzzzz{z{zzzz{|z{zzzz{|z{z{z{zz|zzzz{{{zzzz|yyzzz{z{{{zzzzz{|{zzzz{||{zzzz{||{z{zzz{{zzzz{{{zzzz|{{zzz{z{{{zzzzz{{{zzzz{|{{zzzz{|{{z{zz{{{{zzz{{{zzzz|yyzzz{{{{|{|{|{{{|{|{|||{|{|z{||{|z{|{|||{{|{|{{|{|{|{y{|{{{{{z{z{zzz{{{z{zz||{{z{zz||{{z|{z||{|z{z|{{zz{z|yyzzz|{{{{z{z{zz{{z{zz{z{{zzzz{z{{z{{z{z{|{{z{yz{zzz|zzzzz{{y{{z{z{zz{{z{zz{z{{zzzz{z{{z{{z{z{|{zz{zzzzzz|zzzzz{{z{{z{z{zz{{z{zz{z{{zzzz{z{{z{{z{z{|{z{{zz{zzz|zzzzz{{z{{z{z{zz|{z{zz{z|{zzzz{z|{z{{z{z{|{z{zzz{zzz|{{zzz{{z{|{|{|{{||{|{||{||{|{{|{||{{|{|{{|{{|{|{|{|z|{{{|z{{yyyy{{yy{{z{{{{{zzyyyyyzz{yyyyzzz{yyzy{zzzz{yy{yz|zyyyzzyyxyz{yyyyzzyzzzzzzzzz{zzzzzzz{zzzz{zzzz{zz{zz|zzzzzzyzzyz{yyzzzzy{{zzzzz{{{zzzz{{{{zzzz{{{{z{zz{{{|zzzz{zyzzzz{yyzzzzy{zzzzzz{|{zzzzz||{zzzz{||zz{zz{|{|zzzzz{{zzzz{{{zzzz{{|z{zzzz||z{zz{{||z{zz{{||z|{z{{{|{z{z{{yzz{z|{{zzz|y|||||}|||||||}|||||||}|||||||}|{{||||}|}|||||}{||||{}z||{|{{||{|{||{||{|{{|{||y||{|{|{{{|{|{|||{|{|}y{|{|{}{|{{{{{||{{{{{{||{{{{{{||z|{{{{|{{{{{{{||{{{{|}z{{{|{}z}{}}{{}}{z{}}{}}{}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}|||||}~|||{|}}~|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~z{|{|}{}{}z}}z}z}}{}}{}{{}{}}z|}{}{}}{{}{}{||}{}{|}z{}{|{}z|{|{|{{|{|{||{||{|{{|{||{||{|{||{{|{|{|~|{|{|}|{|{|{~~||||||}||||||}|||||||}|||||||}|{{||||}|}|||||}{||||{}z|{|{|{{|||{||{||{|{{|{||z||{|{|{{{|{|{|||{|{|}z{|{|{}{}{}{}{{}}{{}}{}}{}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}||||||}~||||}}~|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~{|{||{{{{{{||{{{z{|{{z{{{{||z|{{{{|{{{{{{{||{{z{|}z{z{|{}z}{}{}{{}}{}{}}}}z}{{}{}}z|}{}{}}{{}{}{||}{}{|}z{}{|{}z|{|{|{{~|{|{||{|{|{{|{||{||{|{||{{|{|{|~|{|{|}|{|{|{~~||||||}|||||||}||||||}|||||||}|{{||||}|}|||||}{||||{}z}{}{}{{}}{}{}}{}}}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}||||||}~|||||}}~||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~|{||{|{|{{||{|{||{||{|{zz|{y||{|{|{{{|{|{|||{|{|}z{|{|{}z|{|{|{{||{|{||{||{|{{z|{z||{|{|{{{|{|{|||{|{|}z{|{|{}z}{}{}{{}}{}{}}{}}{}{{}}}z|}{}{}}{{}{}{||}{}{|}z{}{|{}z|{|{|{{~|{|{||{~|{|{{|{|{||{|{||{{|{|{|~|{|{|}|{|{|{~~}|}|}|}}}|}|}}}}}|}||}}}||}|}}}}{|}|}}|}}|}||}||}||{}}||||||}~|||||}}~|||||}}~||||}}~|}|||}}~~||||}}}||||}~~{}||||||}|||||||}|||||||}|||{zzz|{{||||}{}|||||}{||||{}{||||||}|||||||}|||||||}|||{|zz|{{||||}|}|||||}{||||{}{||||||}|||||||}|||||||}||||||{|{{||||}|}|||||}{||||{}{}|}|}|}}}|}|}}}}}|}||}}}}||}|}}}{|}|}}|}}|}||}{|}||{}{||||||}~||||||}~||||||}~||||||}|{||||}|~|||||}|||||{~~|}|}|}}~|}|}|}}~|}|}}}}~|}||}}}~}}|}}}~~|}|}}}}}|}|}~~}|{|{|{z}|{|{||z}|{|{{|z}|{{|{|z}|{|z|z|}|{|{|}|{|{{{}}|{|{|{{}|{|{||{}|{|{{|{}|{||{|{}|{{{|{|}|{|{|}|{|{|{}}|{|{|{{}|{|{||{}|{|{{|{}|{||{|z}|{{||{|}|{|{|}|{|{|{}}|{|{|{{}|{|{||{}|{|{{|{}|{||{|{}|{{|{{|}|{|{|}|{|{|{}}}{}{}{{}}{}{}}{}}{}{{}{}}{|}{}{}}{{}{}|}}{}{|}|{}{|{}}}|}|}|}~}|}|}}}~}|}||}}~}||}|}}~}||}|}}~}|}|}}}|}|||~~{z{|}yz{|}y{|}z|}z}|}|{{{{z{||{{yz{{||yz{{{{||z|{{{{|{{{{y{{||{yz{|}zz{|{}z|{{{{{{||{{{z{{||{z{{{{|{z|{{{{|{{{{{z{||{{z{|}z{{|{}z|{|{|{{||{|{||{||{|{{|{||z||{|{|{{{|{|{|||{|z|}z{||{}z||||||}}||||||}}||||||}}||{|||}}|{||||}|}||||{}||||{}}}{}{}{{}}{}{}}{}}{}{{}{}}z|}{}{}}{{}{}{||}{}{|}|{}{|}|}~}~}~~~}~}~}}~~}~}~~}~~}~|}~}~~}{~}~}~~~}~}~|}|~}~|{~|{|{|{|||{|{|||||{|{{||||{{|{|||||{|{|||}|{|{||z{|{{|}~}}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}|}|~|}|}|}|~z}|}{|}{||{{{{||{{{{{||{|{{{{||||{{{{|||||{{{|||}{{{{||y{{{{|}z||||{||||{{|{|||{|{||||{||{{|||||||{||||}{|{|||{|{|{|}z~|}||}}~|}|}||}~|{|}}|}~|}{|}|}z||}|}|}~}|}|}||y}|}{|}z|}|}||~|}|}|}}~|}|}||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{{{|}z||{|{|{||{|{|||||{|{{||||{{|{|||||{|{|||}|{|{||~{|{{|}z~|{|{|{||{|{|||||{|{{||||{{|{|||||{|{|||}|{|{||z{|{{|}~}|}|}|}~}}|}||~}|}|}}|~}|}{|}|~}||}|}|~|}|}|}|~z}|}{|}{|||{|{||||{|{|||{|{||||{||{{|||||||{||||}{|{|||{|{|{|}z~|}|}|}}~|}}||}~|{|}}|}~|}{|}|}|||}|}|}~}|}|}||z}|}{|}z|}|}|}|~|}|}}}~|}|}||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{{|}z~|}|}|}}~|}|}|}~|}|}}|}~|}{|}|}~||}|}|}~}|}|}||{}|}{|}z||{|{|{~||{|{||||{|{{||||{{|{|||||{|{|||}|{|{||~{|{{|}z~|{|{|{|~|{|{||||{|{{||||{{|{|||||{|{|||}|{|{||z{|{{|}~}|}|}|}~}|}|}||~}}|}}|~}|}{|}|~}||}|}|~|}|}|}|~{}|}{|}{~|}|}|}}~|}|}||}~||}}|}~|}{|}|}|||}|}|}~}|}|}||z}|}{|}z|}|}|}|~|}|}|{}~|}|||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{|}z||{{{{{|||{{{{||||{{{{{||{{{{|||||{{{|||}{{{{||z{{{{|}y~|}|}|}}~|}|}||}~|}|}}}~|}{|}|}~||}|}|}~}|}|}||{}|}{|}z||{|{|{~||{|{||~||{|{{|||{{|{|||||{|{|||}|{|{||~{|{{|}z~|||||||~|||||||~|||||||||{|||||||||||||}||||||z|||{|}~~|}|}|}~~|}|}||~~|}|}}|~~}{|}|~}||}|}|~~}|}|}|~z}|}{|}{|}|}|}|~|}|}|}}~|}|}||}~|}}}|}~|}||}|}~|~}|}|}~~|}|}|~||}{|||{|{|||||{|{|||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{|||{|{|||||{|{|||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{~|}|}|}}~|}|}||}~|}|}}|}~|}{|}}~||}|}|}~}|}|}||{}|}{|}{|||||||~|||||||~|||||||~|||{||||||||||||}||||||~|||{|}z~|}|}|}}~|}|}||}~|}|}}|}~|}{|}|}||}|}|}~}|}|}||z}|}{|}~}}}}}}}~}}}}}}}~}}}}}}}~}}}{}}}~}|}}}}~|~}}}}}~~}}}}|~|}z}|}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}|||{|z|}|}|}|~z}|}{|}y}|}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}{|||}|}|}|~z}|}{|}z}|}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}||||}|}|}|~z}|}{|}z~|}|}|}~~|}|}||~~|}|}}|~~|}{|}|~~||}|}}~}|}|}|~{}|}{|}z}|}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}|}||}|}|}|~~}|}{|}z~~}~}~}~~~}~}~~~~~}~}}~~~~}~~}~~~~|}~}~~~~}~}~~~}~}~|~~}~}|}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~|}|}|||}|}|~~~}|}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}}|}|||}|}|~~~}|}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}||}|||{|}|~~~}|}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}|}}|||}|}|~~~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}|}}}}}~~}}}}||}}}{|~~~~}~}~}~~~}~}~~~~~}~}}~~~~}~~}~~~~|}~}~~~~~}~}~~}~}~|~~{{{|}z{{|}z{|}z|}{}z}|{}|{|{{|||{{}|{|{}|||{{}|||||}|||||||||||||{|{||||{|{~|}{}||~~~|}||~}||~~~~}~~|}~~~~|}|}~~|}|}|}~|}|}|}|}}|}|}|}||~~~|}}|~}||~~~~}~~|}~~~~|}|}~~|}|}|}~|}|}|}|}}|}|}|}|}~~~|~~}~~|}~~~~~~~}~~~~~}~}~~~}~}~}~~|~}~}~}~~|~}~}~}}~~~||}}|}|}~~~~}~~}}~~~~}}}}~~}}}}}}~|}}}}}}}}|}}}}}}|~~~|}}|||}|~~~~}~~|}~~~~|}|}~~|}|}|}~|}|}|}|}}|}|}|}|}||~|{|}{~|}{~|~|~~}|}~~~}|}|}~}|}|}||||}|}|}|{}|}|}|}}~~~|~|}{~~}}~~~~~~}~~~~~}~}~~~}~}~}~~|~}~}~}|~}~}~}|}~}~~~|~~}~~~}}~~~~~~}~~~~~}~}~~~}~}~}~~|~}~}~}~~}~}~}~}}||}|{|}~~|}}~}||~}}|}~~}}|}|}}}|}|}||||}|}|}|{}|}|}|}}~|}|{|}{~|}}~}~{~}}|~~~}}|}|~}}|}|}|~||}|}|}|{}|}|}|}|~~}|~||{~~||~}~~~}|~~~~}|~|~~}|~|~|~~|~|~|~||~|~|~||||~}~}{{||~}}|~~~~}~}|~~~~}|}|~~}}}|}|~}}}}}|||{}}}}|||{}}|}~}{|}~~|}}~~}~|~~}}~~~}|}|}~}|}|}||}|}|}|}|{}|}|}|}}~~~|||}|}||}~~~||~~}||~~}|}|~~}|}|}|~||}|}|}||||}|}|}|||}|{||~}|{|~}|||~}|||~}|||||}|||||||||||||||{||||||||~~}|~||{~~||~}~~~~}|~~~}|~|~~}|~|~|~~|~|~|~||~|~|~||||~|~|{|||~|}|~}~~|~}||~~~||}|~~||}|}|~||}|}|||{}|}||||||{~|{||{~|||~~|~|~}|{|~~~||{|~|||||{||||||||{{|||||||{}}|||~||||~~|||~~|~|~~|||~~~||||~|||||||||||||||||||||||}~{}|{|}{~|}}~|~~|~}}{}~~}}|}~}}|}|}{~||}|}|}{{}|}|}|}|~~~|{||z||||~~|{|~~|||{~~||||~||||||~||||||||{||||||||~|~|{{||~|}|~}~~|~}||~~~}||}|~||}|}|~||}|}|||{}|}||||{|z}|{|{z|||{{}|{{z}|||{{}|||||}||||||||||||{|{||||{|{}|{~|{|}{~||}~~|~|~}}{|~~~}|}||~}}|}||||}|}|}|{||}|}|}z}|||||~|{||~~|||~~|~|~~||}~~~||||}~|||||}||||||||{|||||||}~{}|{|}{|||}~}~||~}}|||~}}|}|~}}|}||~||}|}|}|{||}|}|}|||}|{||{~|}|~}|~|~}||}~~}||}|}}||}|}|||}|}|||{}|}|||||~~~|{||z||{|~~|{|~~|||{~~|||||~||||||||||||||{|||||||{|z}|{{{z|||z{}|{{{}|||{z}|||||}||||||||||||{|{||||{|{}|z}|{|}{}||}~}|||~}}|||~}}|}||}}|}|}|||}|}|}|{||}|}|}|||~|{||{~|||{~|~|~}|||~~~|||||~||||||||||||||{|||||||z{|{||{|~|{||~~|{|~~|~|~~|{|~~~||{{|~|||||{|||||||{{{||||||}~z}|{|}z}||}~}~||~}}|||~}}|}|~}}|}|||~||}|}}|{||}|}|}|||}|{||{||||~}|{|~}|||{~}|||||}||||||||||||||{|||||||||{}|{||{~|}|~}|~|~}||}~~}||}|}}||}|}||||}|}||{}|}||||}|z}|{|}{}||}~}|||~}}|||~}}|}||}}|}|}||||}|}|}|||}|}|}{||}|{|{z|||{{}|{|{}|||{{}|||||}|||||||||||||{|{|||{|{||{~|{{|{~{||~~|~{~||{|~~~|{|{|~|||{|{||||||{|{{||||{|z||{{{|||~|{||~~|{|~~|~|~~|{|~~~|||{|~|||||{||||||||{{{|||||}~z||{|}z|||}~|~||~}}{{|~}}|}{~}}|}||{~||}|}|}{{||}||}|||}|{||z}{||~}||{~}||||~}|||||}|||||||||||||{|{||||||||{}|{||{||||~}|{|~}|||{~}|||||}|||||||||||||||{||||||{z|}|{z{z|{{{}}||{}}|{|}}|{{{|}}|{{{{{}|{{{{{{|{{{{{{{|}}||}~~}|{}}|}|}~}~|}~}}}~~}}}}}~~}}}}}}}}}}}}}|}|}}}}|}||}~~}|}}}|}|}~}~|}~}}}~~}}}}}~~}}}}}}}}}}}}}|}|}}}}|}|}}~~}||}||}}|~}~||~}|}~~}|}|}~~}|}|}|}}|}|}|}||}|}|}|}}}~~}|}}}}}}}~}~|}~}}}~~}}}}}~~}}}}}}}}}}}}}}}|}}}}}}}|}~~}|}|}}||}~}~|}~}}}~~}}}}}~~}}}}}}}}}}}}}|}|}}}}|}|}{|||||}||}|{}}|}|}}|{}}}|}}{|}}|}}}|{||}}}|}{||}}|}|}}{||}||}||}|}}}|}|}}|{}}}|}}{|}}|}}}|{}|}}}|}{||}}|}|}}{~~}||}||}~}|}~}|~}|~~~}|~}~~~}|~}~|{}|~}~|}{|~}~|}|}}~}~~}||~}|}}~|~}}|~~|}~~~|~}}~~~|~}~|}}|~}~|~||}}~|~|~}}|}|||}||}|}|}}||}}|}}}}|}}}|}}|}}}|}||}}}|}|||}}|}|}{{|}}|{{{{|{{{}}||}}|{|}}|{{{|}}|{{{{{}|{{{{{{|{{{{{{{|}~~}|{|{{|||{}}~|{}|}~~}||{}~~}||{|{}}||{|{|{||{|{|{|{{|}}|{{{|}{{{}}|}{}|{}}}|{}{|}}|{}{{{}|{}{{{{|{}{{{{{|}}||}}|}}}}}|}}}}|}}}}}}}}}}}{|}}}}}}}{}}}}}}}}||}}}}}}}}~~|||}||||}|~}|||~}|}~}|}|}~~}|}|}|}||}|}|}||||}|}|}{}~~}|{{{{|{{z}}~|{}}|}~}|{{}~~}|{{{{}}|{{{{{{|{{{{{{{{{|}}||{{}}{{|}}|}}}}|{}}|{}{|}}}{}{{{}}{}{|{{|{}{}{|{}}|}|||}||||}|}}|||}}|}|}}}|}|}}|}|}|}||}|}|}||||}|}|}{}|}{|}}||}||||}|}}|||}}{{|}}|}{|}}|}|}|{}|}|}|}{|||}|}|}|}{}||||{{}{|{}}|}{}||}}}|||}|}|||}||}|||}|||||{}|||||}{~~|||}||||}|~}|||~}|{|~}|}|{~}|}|}|{||}|}|}||||}|}|}{}~~}|z{{{|{{{}}~|z}}|}~}}|{{}~}|{{{{}}|{{{{{{|{{{{{{{z{||}|{z{|}{{{}}|}|}||{}}||{}{|}|{}{{{}|{}{{{{|{}{|{{{}}|}}||}||||}|}}|||}}|}|}}|}|}|}}}|}|}}|}|}|}||||}|}|}{{z}|||{|{|{{|}}|||}||{|}||{|{|}|||{|{||{|{|{||{|{|{|{{}|{}{|}}||}||||}|}}|||}}|{}}}|}|{}}}|}||{}|}|}|}{|||}|}|}|}|}}|||{{{{|{}}||{}}|}|}}|||{|}}||||}}||||||||{||||||{{z}|||{|{}{{|}}|}|}||{}}||{}{|}||{}{|||{}{|{||{}{|{|{{{||}|{z{|}{z{}}|}|}||{}}||{}{|}||{}{{{|{}{{{{|{}{|{{{}}|}|||}||||}|}}|||}}|}|}}|}|}|}}|}|}|}|}|}|}||||}|}|}{{|}}||{|{{{{|}}|||}}|{|}||{|{|}}|{|{|{}||{|{||{|{|{|{{{z||{{{{{|{{{{}|{{||{{|||{{{{|||{{{{z{|{{{{{z{{{{z{{{z{{{z}{|}}||}||||}|}}|||}}|{|}}|}|{|}}|}|||{}|}|}}{|||}|}|}|}{}||||{z|{|{}}||{}||}|}||||{|}|||||{}||||||||{||||||{{||}||{|{{{{|}}|{|}}|{|}}|{|{|}}|{|{|{}|{|{|{|{|{|{|{}}|}|||}||||}|}}|||}}|}|}}|}|}|}}|}|}|}||}|}|}|||}|}|}{{z}|||{|{|{{|}}|||}||{|}||{|{|}||{|{|{||{|{|{|||{|{|{{{||}|{{{{{{{{{}|{{|}|{|}||{{{|}}{{{{{{}|{{{{{{|{{{{{{z{z|{{zz{{|zzz{}|{z||{{|||{z{{|||{{{zz{|{zzzzzz{z{zzzzz}z{zz}{|}}{|}||||}|}}|||}}{{|}}|}|{|}}|}|||{}|}|}|}{{||}||}|}{}||||{z|{|{}}||{}||}|}||||{|}|||||{}||||||{||{|||||{{z||||{|{|{{|}}|||}||{|}||{|{|}||{|{|{||{|{|{{|{|{|{|{{zz{{yzzz|{{{|}|{{|||||{||||{{||||{{{||||{{{{{||{{{{{{|||||}~~}||||||||~}~||~}|}~|~}|||}~}|||||~}||||||}|||||||{|}~~}||||||||~}~||~}|}~|~}|||}~}|||||~}||||||}|||||||||}~~}||||||||~}~||~}|}~|~}|||}~}|||||~}||||||}|||||||||}~~}}|}|||}|~}~}|~}|}~|~}|}|}~}|}|}|~}|}|}|}}|}|}|}|||}~~}}|}|||}|~}~}|~}|}~|~}|}|}~}|}|}|~}|}|}|}}|}|}|}|{{{||{|{|{{|{{|}||{}||||{}|||{{}|||{|{||||{|{|{||{|{|{{{{||{|{|{{|{{|}||{}||||{}|||{{}|||{|{||||{|{|{||{|{|{{{{||}|{|{{|{||}||{}}|||{}}||{{}}||{|{|}||{|{|}||{|{|{{{{~~}|{|{{|{|{}~|{~}|~~{~}|~{{~}|~{|{~}|~{|{|}|~{|{|{}||}~~|~|~}|||~|~}~|~~|}~|~~|~|}~~|~|~|~~|~|~|~||~|~|~|{{{z{{{{{{{|{{{|}|{|||||{||||{{||||{{{||||{{{{{||{{{{{{{{|{}{{{{{|{{{|}|{|}|||{|}||{{|}||{{{|}||{{{{}||{{{{{{{{~~}{{{{z|{{{|}~{{}||~{~}||{{~}||{{{~}||{{{{}||{{{{{{{{|{{{{|{||{{{|}|{{}|||{}|||{{}|||{{{||||{{{{{||{{{{{{}||{|}{|||||||||}}|||}||||}||||{}||||||}|||||||{|||||||{|}~~{|{|{{{{|{~}||{~||}{~||||}~||||||~|||||{|{||||{|{{{{|z}{{{zz|{{{|}|{{|}||||}||{{|}||{{{|}||{{{{}||{{{{{{{{~~{{{{zz|{{z|}~{{|{||~{{|{{{~{|{{{{~{|{{{{{{|{{{{{{{{{|{}{{|{{|{{{|}|{{}}|||{}||{{}}||{{{}}||{{{{}||{{{{{{|}||{|{|{{|{|{|}||{|||}|{||||}|||||||||||||{|{||||{|{{}|{{{||}|{|{{{{|{|}||{|}{||{|}||{|}||{|{|}||{|{|}||{|{|{{|}{|{|{|{{|{|{|}||{}||}{{}||||}||||||||||||{|{||||{|{{{{~~{{z{zz|{{{|}~{z||||~{||||{{|||{{{~|||{{{{{||{{{{{{{{z{{{{|{{|{{{|}|{{}{|||{}{||{{}||{{{||||{{{{{||{{{{{{|}||}|{|{{{{|{|}||{|}|}|{|||||}|}|||||}||||{|}||||{|{{{{z{{{{{{{|{{{|}|{{|||||{|{||{{|||{{{||||{{{{{||{{{{{z}||{{{||{|{|{{|{|{|}||{||||}{||||{{||||{{||||{|{|{||{|{|{{|}||}|{|{zz{|{|}||{|}|}|{|}|||{|}|||||}||||{|}||||{|{{{{~~{{z{zz|z{{|}~{{||||~z||||{{||||{{{|||{{{{{||{{{{{{{{z{{{{|{{|{{{|}|{{}||||{}|||{{}|||{{{|||{{{{{||{{{{{{|}||{|{|{{|{|{|}||{|||}|{|||||}||||||||||||{|{||||{|{{{{|{}{{{{{{{{{|}|{{|}|||{|{||{{|}{|{{{{}|{{{{}||{{{{{zz{zz{{z{zz{z{z{}|{z{{z|zz{{z{z{{{{zz{z{{{{{z{{z{z{z{zz}||{{{{||{|{|{{|{|{|}||{|||||{||{|{{||||{{{||||{||{||{|{|{{|}{|{|{|{z|{|{|}||{|||}|{|||||{||||||{||||||{{||||{|{{{{z{{{{|{{|{{{|}|{{}||||{}|||{{}|||{{{||||{{{{||{{{{{{|}||{|{|{{|{|{|}||{|||}|{|||||}|||||||||||||{|{|||{|{{{{z{{{{z{{|{{{|}|{{|{|||{|{|{{{|{|{{{{|{{{{{{{{|{{{{{{{{|z}{{{zzz{{{{}|{{{}|||{{{||{{{}z|{{{{}|z{{{{}||{{{{zz{zz{{z{zz{z{z{}|{z{zz|zz{{z{z{{{{zz{z{{{{z{z{{z{zz{zz{z{zz{{{||{|{|{{|{|{|}||{|||||{||||{{||||{{{||||{|{|{||{|{{{|}{|{|{|{z|{|z|}||{|||}|{|||||{||||||{||||||{{{||||{|{|{|z{yzz{{{{{||}}{{||{|{{||{{{|||{{{{{|{{{{{{|{{{{{{{|{|{}}|||}~~{|{|}||||~}~|||~}}}||~}}|||~}}|||~}}||||~}}||||||||}~~||{|}||||~}~|||~}}}||~}}|||~}}|||~}}||||~}}||||||||}~~||{|}||||~}~|||~}}}||~}}|||~}}|||~}}||||~}}||||||||}~~||||}||||~}~|||~}}}||~}}|||~}}|||~}}||||~}}|||||}}|}~~|}|}}}|}|~}~|}|~}}}}|~}}}||~}}}|}~}}}|}|~}}}|}|}{{|{}}}{}|}|{{||}}}{}}{|{{}}{}{|}}{}{}{}{}{}{}}{}{}{}{{{|{}}}{}|}|{{||}}}{}}{|{{}}{}{|}}{}{}{}{}{}{}}{}{}{}{{{|{}}}{}|}|{}||}}}{}}{|{{}}{}{|}}{}{}{}{}{}{}}{}{}{}{|||{}}}|}|}||}||}}}|}}}|{|}}}}||}}}}|}|}}}|}|}}}}|}|}|||||~~}|}|}}|}|}}~}|}~}}||}~}}||}~}}|}|~}}|}|}~}}|}|}|}~~||~~}~}~}|~}~}~}}~}~~|{~}~~}~|}~~}~}~~~}~}~}~~}~}~}~{{|{|z{{{{{{{{{||}}{||{|{{||{{{|||{{{{{|{{{{{{|{{{{{{{{{|{|{|{|{{{{|{||}}|||{|{{||{|{|||{|{|{|{|{|{||{|{|{|{|||{}z||||{{|||||}}|||}|{|||}|||||}|||||}||||||}|||||||||{~~|||||||||||}~|||}|{||~}||||~}||||~}|||||~}||||||{{|{}}}{}|}|{}{}|}}}{}}|{{}}{}{|}}{}{}{}{}{}{}}{}{}{}{|}{{|{||}{}|}|{}{}|}}}{}}{|{}}{}{|}}{}{}{}{}{}{}|{}{}{}{{{|{|{|{|z{{{|{||}}|{||{|{||{|{|||{|{|{|{|{|{||{|{|{|{|||{}z||||{{|||||}}||||}|{||}|||||}|||||}||||||}||||||{{|{~~|{|{||{|{||}~|{||{|{{|{|{||~{|{|{~{|{|{|~{|{|{|{|||{}{}|}|}{|}|}|}}}|}}}|{|}}}||}}}}|}|}}}|}|}|}}|}|}|{{|{}}|{||||{|{||}}|{|}{|{{|}{{||}{|{|{}{|{|{|}{|{|{|{{}|||{{}}|||||||||||}}|||}}{{||}}|||}}||||}}|||||}}|||||||||{}z||||{{|||||}}||||}|{|||}||||}|||||}||||||}||||||{{|{~~|{|{||{|{||}~|{||{|{{||{|{||{|{|{~{|{|{|~{|{|{|{{{|{|{}{}|}{{}{}|}}}{}}{|{{}}{}{|}}}{}{}{}{}{}|{}{}{}{|||{}{||||{{|||||}}||||}|{|||{|||||}||||}||||||}||||||{{|{}}|{|{||{|{||}}|{|}{|{{|}{|{||}{||{}{|{|{|}{|{|{|{{}|{{{|{|{|{||{{{|{||}}|{||{|{{||{|{|||{|{||{|{|{||{|{|{|{{{|{~~|{|{||{|{||}~|{||{|{{||{|{|||{|{|{{|{|{|~{|{|{|{{{|{|{}{}|}{{}{}|}}}{}}{|{{}}{}{|}}{}{}{}}{}{}|{}{}{}{{{|{|z|{||{{{|{{|}}|{||{|{{||{|{|||{|{|{|{{|{||{|{|{|{||{{}{||||{{|||||}}||||}|{|||z|||||}z||||}|||||}||||||{{|{}}|{|{||{|{||}}|{|}{|{{|}{|{||}{|{|{}{|{{|}{|{|{|{{}|{{{{|{|z{{{|{{{{{{|}}{{||{|{{||{{{|||{{{{{|{{{{{|{{{{{{{{{|{~~|{|{||{|{||}~|{||{|{{||{|{|||{|{|{|{|{|{|{|{|{|{{{|{|{}{}|}{{}{}|}}}{}}{|{{}}{}{|}}{}{}{}{}{}{}|}{}{}{{{|{|z{{{|{{{{{||}}{{{|{|{{||{{{|||{{{{{|{{{{{{|{{{{{{{{|{|z|{|z{{{|{{|}}|{||{|{{||{|{|||z|{|{|{{{|{||{||{|{||{{}{||||{{||||{}}||||}|{|||z|||||}z||||}|z||||}|||||{{{{}}|{|{||{|{||}}|{|}z|{{|}{|{{|}{|z|{}{|{|{|}z|{||{{}|{{{z{|{|z{z{|{{{{z||}}{{||{|{{||{{{|||{{z{{|{{{{z{|{{{{{{{{|}z{z{{||z{{{|||}{{|z|||{||||{{||||{{{|||{{{{||{{{{{{|}z|}{}z}||}|~~|}|}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|||}|~~}}|}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|||}|~~}||}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|||}|~~}|}}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|}}{|~~}}}}||}}}}}~~}}}}~}|}}}~}}}}}~}}}}}~}}}}}~}}}}}}}}~|~~~}~}~~}~}~~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}}}{|}z|}|}|~z|{|{|}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}}}{|}z|}|}|~z}{|||}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}}}{|}z|}|}|~z}||||}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}}}{|}z|}|}|~{}|}}~}|}|~~||}|~~|}{|~~|}|}~~|}|}|~|}|}|}}}{|}z|}|}|~~}|}||}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}}}~|~~~}~}~~~}~}~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}}||{|}{{|{|||z|{||||}{{{|||||||||{|||||{|||||{|{|||{|{|||{|}{{|{|||z|{||||}{{{|||||||||{|||||{|||||{|{|||{|{|}}{|}{|}|}||{}|}|}~}|}}~||}|}~|}{|}~|}|}}~|}|}|~|}|}|}||{|}{||||||~||||||}||||||||~|||{|~|||||~|||||||||||||}}{|}~|}|}||{}|}|}~}|}|}||}|}~|}{|}~|}|}}~|}|}|~|}|}|}}}}|~|}}}}}~~}}}}~|~}}}~}|}}~}}}{}~}}}}}~}}}}}}}}}}}}}{}{{{|}y{{{{||z{{{|||}{{|||||{{||{{||||{{{|||{{{{||{{{{{}}{|}z|}|}||{}|}|}~}|}|}~||}}~|}{|}~|}|}}~|}|}|~|}|}|}{{{|}z|{|{||~{|{|||}|{|||||{|||{{|~||{|{~||{|{|||{|{|{||{|}~||||||{||||||}||||||||||||{||~|||||~|||||~||||||}}{|}{|}|}|~z}|}|~~}|}|~}||}|~~}{|~~|}|}~~|}|}|~|}|}|}||}|~|}|}|}~~|}|}~|~}|}~|}||}~|}}}~|}|}|~|}|}|}|}|}|}|{}|}}{|}z|}|}||{}|}|}~}|}|}~||}|}~|}{}~|}|}}~|}|}|~|}|}|}{{{|}z|{|{||~{|{|||}|{|||||{||||{{|||{|{~||{|{|||{|{|{{{{|}~|{|{||{{|{|||}|{|||||{||||{{|||{|{|~|{|{|~|{|{|{}}{|}{|}|}|~{}|}|~|}|}|~}||}|~}|}{|~}}|}~}|}|}|}|}|}|}}}{|}z|}|}||z}|}|}~}|}|}|||}|}~|}{|}~||}}~|}|}|~|}|}|}||}|~|}|}|}~~|}|}~|~}|}~|}||}~|}|}}~|}||~|}|}|{|}|}|}|z}|{{{{|}z|{|{||~{|{|||}|{|||||{||||{{||||{|{||{|{|||{|{|{{{{|}~|{|{||{{|{|||}|{|||||{||||{{||||{|{||{|{|~|{|{|{}}{|}{|}|}|~z}|}|~|}|}|~}||}|~}|}{|~}|}|}~}}|}|}|}|}|}||{|}z{|{|||{|{||||}{|||||||||{||{|||{|{||||{|{|||{|{|}}{|}z|}|}||z}|}|}~}|}|}|||}|}~|}{|}~|{|}}~|}}|~|}|}|}||}|~|}|}|}~~|}|}~|~}|}~|}||}~|}|}}~|}|}|~|}|}}|}|}|}|z}|{{{{{|}~|{|{||{{|{|||}|{|||||{||||{{||||{|{|||{|{||{|{|{}}{|}{|}|}|~z}|}|~|}|}|~}||}|~}|}{|~}|}|}~}|}|}|}}|}|}{{{|}z{{{{||z{{{|||}{{|||||{||||{{||{|{{{||{{{{{||{{{{||{|}z{|{|||{|{||||}{|||||||||{||{|||{|{||||{{|{||||{|}}{|}z|}|}||z}|}|}~}|}|}z||}|}~|}{|}~|{|}}~|}|}|~|}||}||}|~|}|}|}~~|}|}~|~}|}~|}||}~|}|}}~|}|}|~|}|}|}|}|}||z}|{{{{}{{{{zz}|zz{|{z{{}{{|{}{{{{{}{{{{{{{{{{{{{{{z{{{{{{}}|{{}|{}||}{z|||{~}{}{~}{}|}~}{}|}{|{}|}{}{{||}{}{}{{}{{{|{{|{{|||z{|~|{||~|{{{{~|{{{{{{{{{{{{{{{{{{{{{}}}|{}|{|{|}{{|||{~}{}|~}{}|}~}{}|}{|{}|}{}{{||}{}{}{{z}{|{{{}}~|{|}||}|||||{||~}{}|~}|}|}~}|}|}{||}|}|}{{||}|}|}}}}|{{}||~||}||{||}}{}|}}|}|}}}|}|}{||}|}|}{{||}|}|}~}}}|}~}}}}}~}}}}}}~|}}}~}~}}}~}~}~}}}~}~}~|{}}~}~}~}}}|{|}||}||}||{||}}|}|}}|}|}}}|}|}|||}|}|}|{||}|}|}}}}|{|}||}||}|||{|}}{}|}}|}|}}}|}|}{||}|}|}{{||}|}|}|{||{{|{{~|{{{|{|{||{||||{|z{||{|{|z|{|{|{|z{{z|{|{||{~}{{|{{~|||{||}{{}{|}~}{||{~}{|{|{}{|{|{|z{|z|{|{||}}}|||}||~||}{}{}||}}}}}}|}|}}}|}|}|||}|}|}||||}|}|}}}}|{{}|{}||}||{|||}}{|}}{}|}}}{}|}{|{}|}{}{{||}{}{}|{}|{{||{}|{{||{|{|||{|}|{|{{}|{|{|{|{|{|{|{{{{|{|{|{{}|{{{{{}{{{{y{|{{}|{|||z{|{}|{{{{{|{{{{{{{{{{{{{{{{{~|{{{z|~|z{{||{||}|{|{~{{{{~||{{{{||{|{{{{{z|{|{{{|}|{}|{}||}}}{{}}}|}}}|{||}|}||}|}|}|||}|}|}||{{}|}|}|}}}|{{}|{~||}{{{||{}}{}|}}{}}}}{}|}{|{}|}{}{{||}{}{}}}}|{{}|{|||}{z{{|{}}{|{}}{}|}}{}|}{|{}|}{}{{||}{}{}{{}|zz{{{}{z{{y{|zz||{||||z{|{|z{z{{|z{{{z{zzzz{{{z{{{}{{{{{|}|z{{|{z{{|{{|{}{{{z{}{{{{z{|{{{{{z{z|{{{{{}}~|{{}|{~||}{{|||{}}z}|~}z}|}~}}|}{|{}|}{}{{||}{}{}||{|{}|{{|{|}|{{{|||||}|{||}|{{|{}||||||||||{||{{||||{|}}}|{{}|{}||}{|{{|{}}{}{}}{}{}}}{}|{|{}|}{}{{||}{}{}|z}|z{||{~{{{|{{|{|}|{{|}|{|{{}|{|{||{|{|{|{z{{|{|{|{{}{{{{z{}|zz{|{z{{|{{|{}{{{z{}{{{{{z{{{{{{z{z{{{{{{}}}|{{}|{}||}{{{||{}}z}|}}z}|}}}z}|}{|}|}{}{{||}{}{}{z~|{{{|{~{{{|z|z{|}|{{|~|{{{{~|{z{{{|{{{{{{{{{{{{{{||{{|{}|{{|{{}{{{{{||{{}|z||}|{{|{}|||{|||{|{{||{{{|{|{|}}}|{{}|{}||}{z{{|{}}{}{}}{}z}}}{}|{{|{}|}}{{||}{}{}{{}{{{{|{}|{{||{z{|}|{||}|{{{{}|{{{{{{{{{{{{{{{{{{{{|z}|zz|{{~{{{{{{|z{}|{||}|{|z{}|{|z|z|{|{|z|z{z|{|z|}}}|{{}|{|||}{{{||{}}z}|}}z}|}}}z}|}{|z}|}{}{||}{}{}{{}{{{{|{}{{{|z{z{|}|{||}|{{{{}|{{{{{{{{{{{{{{{{{{{{{z~|zz{{{~{z{{z|{zz||{z{~|{{z{~|{{z{z|{{z{z{zzz{{{z{|{z{z|{}|{{|{{}{{{{{||{{}|z{|}|{z|{}|||z|||{|{z{||{{{||{|}}}|{{}|{{||}{z{{|{}}{}{}}{}z}}}{}|{{|{}|}z}{{||}{{}{{||z{{|{}{{{|z{z{|||{||||{{{{||{{{{z|{{{{{{{z{{{{{{{{}{{{{zz}|z{{|{z{{}{{|z}{{{{{}{{{{{{{{{{{{{{{z{{{{{z{{{zzzzy|zzzyz{{zz|{z{z|{zzz|{zzzzz{{zzzzzz{zzzzzzzz{{{{z|zz{z{{{y{{{{|{{{z|{z{z|{{{z{z{{z{{{z{{z{z{{{z{{{{{{{z{|{{{{zy|{{||{{{||{{{|{{|{{{{{{|{{{{{{|{{{{{z{{|{z{|{{{z{z{|{{z|{z{z|{z{{|{{{zz{{{z{z{zz{z{z{z{zzzyzzz|{{|{{|{{|{|||{{||{{{||{{|||{|{{|{|{|{{|{|{|{|{{{{|{|{||{{|{{|{|||{|||{{{||{{|||{|{{|{|{|{{|{|{|{|{{{{|{|{|{{||{{{{|||{|{|{{{||{{|||{|{{|{|{|{{|{|{|{|{{{{|{|{|||}}|}|}|||||}|}|}|}}|}|}}|}|}}|}|}|}}|}|}|}||}|}|}||{{|{{|{|||{|{||{{|||{{||||{||||{|{{|||{|{|{{{{|{|{|zz{{{{z|{z|{{{{{{{z|{z{z|{z{z|{{{z{z{{z{{{z{{z{z{{{zzz{{{{z|{z|{{{{{{{{|{z{z|{z{z|{{{z{z{{z{{{z{{z{z{{{zzz{{|{z|{z}{{{{{{|{{|{{z||z{z||{{z{z{|z{{{z{|z{z{{{z||||}||||{{}|||{}{}|{}|{{}||||}||||||}|||||||||||||||{{{{{{{|{{|{{{{{{{{{|{{{|{{{{||{{{{{{|{{{{{{{{{{{{{{{z{{zz{zzz{{{z{z{{z{|{z{|{zzz|{{z{zz{{{z{z{zz{z{z{z{{z{{{z{zzz}{{z{z{{z{|{{{{{zzz|{{z{zz{{{z{z{z{{z{z{z{{z{|{z{zz||{|z{|{{z||{{{||{{z|{|z{zz|{|z|z{z{{z|z|z{{{||{}|{||{||||{||}{{|}{{||}{||}||{|{|}||{|{|{||{|{|{|{{{{{{{|{{{{{{{{{|{{||{{{||{{||{{{{{{|{{{{{{{{{{{{{{zzz{{zzzzz}zzzyzz{zy|{{{z|{zzz{zzzzz{{zzzzzz{zzzzzzzzz{|{zzzz||{zzz|{{zz|{z{||{zzz|{zzzz|{|zzzzz{{z|zzzz{{{{{{{|{{|{{{{{{{{{|{z{{|{z{{|{{{{{{{{{{{{{{{{{{{{{{z{{|{}|{{|{{|{{{{{|{{{}{z{{}{{z|}||{{|}|{{{{{{|{{{{{{{{{{{{{{{z{{{{{{{{{{{|{{{{|{{{z||{{{{{|{{{{{{{{{{{{{{zzz{{{z|{z{z{{{{{{{{|{z{z|{z{{|{{{z{{{z{{{z{{z{z{{{zzzz{{zzzzz}zzzyzz{zz|{{{y|{zzz|{zzzzz{zzzzzz{zzzzzzzzz{{{zzzz{|{zzz{{{zz|zz{z|{zzz|{{zzzz|zzzzzz{zzzzzzz{{{{{{{|{{{{{{{{{{{{|{z{{|{z{{|{z{{{{{{{{{{{{{{{{{{{{zz{{{{{yz|{{{{z{z{{|{z{{|{{{{|{{y{zz{{{{{{z{{{{{{{{{{zz{|{}|{{|{{|{{{{{|{{{}{z{{}{{z|}||{z{|}|{{{{{|{{{{{{{{{{{{{{{z{|{{{{z{{{{|{{{{|{{{z||{{{z{{|{{{{{{{{{{{{{{z{{z{{{zz{{{{{{{{{{|zz{{|{{{{|{{{{zz{{{{{{{z{{{{{{{zz{{{zzzz{|{zzz{{{zz|zz{z|{zzz|{{zzzz|{zzzzzzzzzzzzz{{{{{{{|{{{{{{{{{{{{|{z{{|{z{{|{z{{{{{{z{{{{{{{{{{{{{z{{z{{{zz{{{{{z{{{{|{z{{|{{z{|{{z{zz{{{z{{{zz{{{{{{zzyz{zzzzz|zzzzz{zzz{{zzz|{z{z|{zzzzz{{zzzzzz{zzzzzz{zzzz{|{}|{{|{{|{{{{{|{{{}{z{{}{{z|}||{z{|}|{{{y{{|{{{{{{{{{{{{{{z{{{{{{z{{{{|{{{{|{{{z||{{{y{{|{{{{z{{{{{{{{zz{{{{z{zz|zz{zz{{{z|{z{z|{z{{|{z{zzz{{z{z{zz{z{z{z{yzzzzyzyzzzyzyzzzzyzzz{yz{zzyzz{zzyzy{zzyzyzzzzyzyzyzz|{{z{z{zzz{z{{|{z{{z{z{{z{zz{{z{z{z{z{z{z{{z{z{z{zz{|{zzz{{|{zzz{z|zzz{{|zz{{z{{z{{zzz{{{zzzzz{zzzzzzz{z{|z{z{{{{{z{|z{z{|{||{|{{z{{|{{z{zz{{z{z{z{{z{z{z{yzyzzyzz{{{{z{|{z{z{{|{zzz{|z{||{|{||{{{{||{{{zz|{{{z{z{{{{z{z{{z{|{z{z{{|{{zz{|z{||{|{||{{{{||{{{zz|{{{z{z{{{{z{z{{z{|{z{z{{|{{zz{|z{||{|{||{{{{||{{{zz|{{{z{z{{{{z{z{{z{|{{{z{||{{{{{|{{||{|{||{|{{||{|{{z|{|{{{{{{|{{{{{{{{|{|{|}||{{|{|{|{||{|{||{||{||{|{|{|{|{|{|{{|{|{|{z{z|{{z{{{z{z{z{{|zzz{{z{{{{{z{{{{z{{{{{z{z{{{{z{z{zz{z|{{z{{{z{z{z{{|{zz{{z{{{{{z{{{{z{{{{{z{z{{{{z{z{zz{z|{{z{{{z{z{z{{|{z{{{z{{{{{z{{{{z{{{{{z{z{{{{z{z{z{{{|{{{{{{||{{{{{|{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|{{|{{|{|{|||{||{|{||{{||{|{{{|||{|{{||{|{|{{{{|{|{|zyzzzzzzzzzzzzzzzzzzz{z{zzzzyzz{zzzzy{zzzzzz{zzzzzzzzyz|{zzzz{zzzzzzz|zzz{z{z{{zyzz{{zzzy{{zzzzz{zzzzzzzzz{|{zzzz{|{zzzzz|zzz{{|zz{zz{z{{zzzz{{zzzzz{{zzzzzzzz{|{{z{z{{{z{z{{|{z{{{{z{|{z{{|{{z{z|{{z{z{{{{z{z{z{{z{{|{{z{{{{{z{z{{|{z{|{{z{|{{{{|{{z{{|{{z{z{{{{z{z{z{{{|{z{z{{|{{z{|{{z{|{{{{|{{z{|{{z{z{{{z{z{z{{z{z{z{yyz|{zyzy{zzyzyzz|zyz{z{yz{{zyz{{zyzy{{zzzyz{zzyzyzyzz{z{zzzz{|{zzzzz{zzzz{|zzz{zz{z{zzzz{{zzzzz{{zzzzzzzzz|{{z{z{z{z{z{{|{z{{z{z{{{{yz{|{z{y|{{z{z{{{{z{z{z{{{|zz{z{{{{{z{|{{z{|{{{{|{{z{{|{{{z{{{z{z{zz{z{z{z{{zzz{z|{zzz{{{{zzz{{|zzz{{{zz{{zzzz|{zz{|{zzzzz{{zzzzzz{z{|{{{{{{{z{{{|{|{{|{z{{|{{{{z|{{{{{{{{{{{{{z{{{{{{zz{z{zzzz{|{zyzzz{zzzz{|zzz{zz{zz{zzzz{zzzzz{{zzzzzzzzz|{{z{z{z{z{z{{|{z{{z{z{{z{yz{|z{z{y|{z{z{{{{z{z{z{{{|{z{z{{{{{z{|{|z{|{{{{|{{z{{|{{z{z{{{{z{z{zz{z{z{zzzzzzzzz{z{zzzzz{zzz{{{zz{zzzzz{{zzzz{{zzzz{{zzzzzz{zzzz{zz{zzz{{{{zzz{{{zzz{{{zz{{zyzz|{zzz{|{zzzz{{zzzzzz{z{|{z{z{{{{{z{|z|z{|{{{{|{{z{z|{{z{zz{{z{z{{{z{z{z{zz{z{zzzz{|{zyzzz{yzzz{|zzz{zz{zz{zzzzz{zzzzz{zzzzzzzzz|{{z{z{z{z{z{{|{z{{z{z{{z{yz{|z{z{y|z{z{z{{{z{z{z{{{|zz{z{{{{{z{|{{z{|{{{{|{{z{{|{{z{z{{{z{z{zzz{z{z{yyz|{zyzz{zzzzyzz|zzz{z{yz{{zyzz{zzyzy{{zyzyz{zzzzzyzzzzzyzyz{z{zyzzz{yzzz{{zz{zzzzz{{zzyz{{zzyzyz{zzzyz{zzzzz{zz{zzz{{{{zzz{{{zzz{{{zz{{zyzz|{zzz{|{zzzyz{{zzzzz{z{|zz{z{z{z{z{|zzz{|{z{{|{{z{z|{{z{zy{{z{z{zzzz{z{zyzzyyzyz{yyzyyzzyyz{zz{zz{zzzzz{zz{zyyzz{zyzyzzzyzyzzzzy{z{z{zzz{z{zy{z{{{|zz{{{{z{{{{{z{z{{{z{z{{{z{z{z{z{{z{z{{{{{z{{|{z{{|{|{{{||{z{{||{{zz||{{z{z{{{z{z{zz|y{z{z|{{z{z{{y{z{{{|{z{{||z|{{||z{zz||z{z{{|z{z{zzyz{{yz{{z{{{{{zz{{y{z{z|{{{z{zz{z{z{|{z{z{{z{{z{{z{zz{{z{z{{{z{z{zzz{{z{z{z|{{zz{zz{z{z{|{z{z{{z{{z{{z{zz{{z{z{{{z{z{zzz{{z{z{z|{{z{{zz{z{z{|{z{z{{z{{z{{z{zz{{z{z{{{z{z{zzz{{z{z{z|{{z{zzz{z{z{|{z{z|{z{{z|{z{zz|{z{z{{{z{z{z{z{{z|{|z|{{{|{|{|{|{{|{{|{||{{|{||{|{{||{|{|{|{|{|{{z{{{z{z{|zz{z{{|{z{zz{{{{|{{z{{|{{{zz|{{{z{zz{{z{z{{z{{{z{z{|zz{z{{|{z{zz|{{{|{{z{{|{{{zz|{{{z{zz{{z{z{{z{{{z{z{|{{{z{{|{z{z{{{{{||{z{{||{{zz||{{z{z{{{z{z{{z{{{{{{{|zz{{{{|{{{{{{{{{|{{z{{|{{{{z|{{{{{{{{{{{{{{{{{{|{|{|{{{|{||{|{|||{{||{|z{||{|{|z|{|{|{|{|{|{|{{{{|{{{{{{|{{{{{||{{{||{|{||{{{|||{{{{{|{{{{{{{{{{{{{zz{zyzzzz{zzzzzzzyzz{zz|z{zzzz{{zz{zzzzz{zzzzzzzzzzzzzzzyzzzz{{{zzzzzyzz{z{{zzz|{zz{z|{zzzz|{zzzz{{zzzzzzzz{y{z{z{zzz{z{zy{z{z{{{z{{{zz{{{{z{zz{{z{z{{{z{z{zzz{{z{z{z{{{z{z{{y{z{{{|{z{{{z{{{|{z{z{|{z{z{{{z{z{z{z{{{{{z{|zz{{{{|{{{{|z|{{{|{z{{|{{{zz|{{{{{z{{{{{{{{{{z{{{z{z{|{{{z{{|{z{{|{{{{{||{z{||{{zz||{{z{z{{{z{z{zzzzyzzyz{{{zzzzzyzz{z{{zz{z|{zzz|{zzzz|{zzzz{{zzzzzzzz{y{z{z{zyz{z{zy{z{z{{{z{z{{zz{{{z{zz{{z{z{{{z{z{zzzz{zzzzz{{{zzz{{yzz{{z{{z{{z{zz{{{zzz{{{zzzz{{zzzzz{z{{{{{{{{{{{{{{|{{{{|{|{{{|{{z{{||{{z||{{{{{{{{{{{{zz{{z{zzz|zzz{z{{z{z{{z|{z{{z{z{{{{{zz{{{z{zz{{z{z{z{{zzz{zz{z{z|zzz{z{{y{z{{z{zz{{{{zz{{{{z{{{{z{z{{{z{z{zzzz{y{z{z{zyz{z{zy{z{z{{{z{z{{zz{z{{z{z{{z{z{{{z{z{zzzz{zzzzz{{{zzz{{yzz{{z{{z{{z{zz{{z{zzz{{zzzz{{zzzzz{zz{{z{z{{zy{z{{|{z{{|z{{{{|{{zz{|{{{zz|{{z{zz{{z{z{zz{zz{z{z|{{z{z{zy{z{z{|zz{zz{z{{z|{z{zz|{{z{{{z{z{zzz{{z{zzz|zzz{z{{z{z{{z|{z{{{{z{{{{{zzz{{{zzz{{z{zzz{{zzzz{zzzzzz|zzzzzzzyzz{zz{zz{zz{zz{zz{zzzzz{zzzz{zzzzzzzz{zzzzz{{{zzz{{yzz{{z{{z{{z{zz{{z{zzz{z{zzzz{zzzzz{zz{{z{z{{zy{z{{|{z{{|z{{{{|{zzz{|{{{zz|{{{z{zz{z{z{zz{zyzzzz|zzzzzzzyzz{zz{zz{zz{z{{zz{zzzzz{zzzzz{zzzzzz{zy{z{z{{{z{z{zy{z{z{|zz{zz{z{{z|{z{zz|{y{z{{{zz{zzz{{z{zzz|zzz{z{{z{z{{z|{z{{z{z{{{z{zzz{z{z{zzz{z{{z{{zzzzz{zyzzyz|zzzzzzzyzz{zz{zz{zz{zz{zz{zyyzz{zzzyz{zzzz{|{}yzyz{|}z{zy{{||z{{z|{{{{{||y|{{||yz{{||{zyz||{z{zz{|{}{|{|z|}z{|{|{|||{|{|{{{|{||z||{||{|{{||{|{|||{|{|{||{}}||||{}|||||}|}|||}}|{||}}||{|}}||||}}|||||}||||||{{|}|}{}{|}|{}{}{||}{}{}}{{}{}}z|}{}}{}{{}}{}{}|}{}{}{~~|{~}~}~|}|~}~}~~~}~}~~}{~}~~}~|}~~}~}~~~}~}~}~}~}~}~{z{|}zz{|}z{|}z|}z}|}{{{{}}|{|{|}||z|z|}|{|z}|{{|z}|{{|z}|{|{z}|{|{|}|{|{|{{{|{}}|{|{|}|{{|{|}|{|{}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{{{|{}}|{|{|}|{||{|}|{|z}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{{{|{}}|{|{|}|{|{{|}|{|{}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{{{|{}}}{}{|}|{}{}|}}{}{}}{{}{}}{|}{}}{}{{}}{}{}}}{}{}{||||~~}|}|}}}|}|}}~}|}}~}||}}~}||}}~}|}|}~}|}|}~}|}|}||||{}{|||||}{||||}{}zzz|{{||}|||{|}|||||}||||||||||||||||{}{|||||}{||||}|}|zz|{{||}|||{|}|||||}||||||||||||||||{}{|||||}{||||}|}||{|{{||}|||||}|||||}||||||||||||||||{}{}|}||}{|}|}}|}}|}}}{|}}}}||}}}}|}|}}}|}|}|}|}|}||||{~~|||||}|||||}|~|||}|{||}~||||}~||||}~|||||~||||||}}|}~~|}|}}}}}|}}}~~|}}}~}}}}~|}|}}~|}|}}~|}|}|~|}|}|}}{{|{}z|{|{|}z{|{|{|||{|{|{{zz|{y||{||{|{{||{|{|||{|{|{{{|{}z|{|{|}z{|{|{|||{|{|{{{z|{z||{||{|{{||{|{|||{|{|{{{|{}z}{}{|}z{}{}{||}{}{}}{{}}}z|}{}}{}{{}}{}{}|}{}{}{{{|{~~|{|{|}|{|{|{|~|{|{||{{|{|{||{~|{|{{~|{|{|~|{|{|{|||{}}}|}||}||}|}}|}}|}}}}{|}}}||}}}}|}|}}}|}|}}}|}|}||||}~~||||}}}|||}}~~||}}~|}|}}~||}}~||||}~|||||~||||||}{{{|{}z{{z{|}z{{{{{||{{{{|{{{{{||z|{|{{z{{||{{{z||{{{{{{{|{}z}{}{|}z{}{}{||}{}{}}{{}{}}z|}}}z}{{}}{}{}|}{}{}{{{|{~~|{|{|}|{|{|{|~|{|{||{{|{||{||{|{|{{~|{|{|~|{|{|{|||{}z|||||}{||||}|}|||}|{{||}|||||}||||}|||||||||||||{{|{}}}{}{|}|{}{}{|}}{}{}}{{}{}|{|}{}}}{{}}{}{}}}{}{}{|||}~~||||}}}|||}}~~||}}~|}|}}~|{|}}~|||}~|||||~|||||||{|{{|{}z}{}{|}z{}{}{||}{}{}}{{}{}}z|}{}}{}{}}z}z}|}{}{}z{{|{~~|{|{|}|{|{|{|~|{|{||{{|{||{||{||{|{{|{|{|~|{|{|{|||{}z|||||}{||||}|}|||}|{{||}|||||}|||||}||||||||||||{{|{}{|{|{|}z{|{|{|||{|{|{{{|{||z||{||{|{{|||{|||{|{|{{{|{}}}{}{|}|{}{}{|}}{}{}}{{}{}|{|}{}}{}{{}}{{}}}{}{}{|||}~~||||}}}|||}}~~||}}~|}|}}~|{|}}~||||}~||||~|||||||{|{{{|{~~|{|{|}|{|{|{|~|{|{||{{|{||{||{||{|{{||{|{||{|{|{|||{}z|||||}{||||}|}|||}|{{||}|||||}|||||}||||||||||||{{|{}{|{|{|}z{|{|{|||{|{|{{{|{||y||{||{|{{||{|{||||{|{{{|{}z{{{{|}z{{{{{||{{{{|{{{{{||z|{{||{{{{||{{{{||{{{{{{|{}}}{}{|}|{}{}{|}}{}{}}{{}{}|{|}{}}{}{{}}{z{}}}{}}{|||}~~||||}}}|||}}~~||}}~|}|}}~|{|}}~||||}~|||{|~||||||{|{z||}|~|~~}|~|~|}|~|~|~~~|~|~}~~~|~||~~~~|~~|~~~~||~|~~~{|~|}}~~}|}}}|}|}}}}|~}}}}}~~~}}}}|}~~}}}}}}~~}}}}}}~~|{~}{{|~}||{{|}||{|{z|{||||}||{{||||||{||{{|||{|{{{|||{|~}|||~}}||||}}|}|||||}|}|}}||}|}|||||}|||||||}||||||||{}||||}||{{|}||{|||||{|||}||||||||||||||{||||{{{||||||~~|~}~~}~}~{~}~}~}~~~}~}~~~~~}~}|~~~~}~~}~~~~}}~}~~~||~~}}}~~}}}}|~}}}}}}~}}}}}~~~}}}}}}~~}}}}}}~~}}}}}}~~|{~~||||~}||||~|||||{|{||||~~|||||||~|||||||~|{|||||~|{|~~||||~}}|||~}|}|||||}|}|~~||}|}||~||}||||~||}||||~|||~~|||||}||{|~||||||||||||~~|||||||~|||||||~||||{||~|||~~|{||~}||||~|||||{||||||~~|{|||||~||||{||~||||{||~||~|}|}}|}|||}||||}||{|~~~|~}~~~}~}~~~}~}~}~~}~}~~~~~}~}|~~~~}~~}~~~~}}~}~~~~}~~}}}}~~}}}}~~}}}}}}}}}}}~~}}}}}}}~}}}}}}}~}}}}}}}~|}}~~}}}}~~}}}}~~}}}}}||}}}}~~|}}}}}}~|}}}}}}~|}}}}}}~|}}~~}}}}~~}}}}~~}}}}}||}|}}~~|}}}}}}~|}}}}}}~|}}}}}}~|}}~~}}}}~~}}}}~~}}}}}||}|}}~~|}}}}}}~|}}}}}}~|}}}}}}~{}}~~}}}}~~}}}}~~}}}}}||}|}|~~|}}}}}}~|}}}}}}~|}}}}}}~|}~~~~}~}~~~}~}~~~}~}~}~~~}~}~~~~}~}}~~~~}~~}~~~~}}~}~~~~|~~||}~~~}|}||~}|}|}~~|}|}|~}|}|}|}}~|}||}|}~|}}|}|}~||~}||}~~}}|}||}}|}|}|~|}|}|}~}}|}||~~|}||}|~~|}}|}|~~||~}||}~~}}|}||}}|}|}|~|}|}|}|{||}||}~|}||}|}~|}}|}|}~||~}||}~~}}|}||}}|}|}|~|}|}|}}|||}||}~|}||}|}~|}}|}|}~||~}||}~~}}|}||}}|}|}|~|}|}|}|{|||||}~|}||}|}~|}}|}|}~||}}~~|}}~~~}}}}|~}}}}}~~}}}}}~}~}}}}|~~}}}|}}~~}}}}}}~~}|~}||}|~}}|}}~}}|}}}|||}}}}}~}}}}}||}}}}|}}~}}}}}}}~|||~~|||~~~|||||~|||||~||||||~|||||||}||||||||~|||||||~||~}||}|~}||}||}||}|}|||}|}|}~}|}|}||~}}||}|~}||}|}|~|||~}||||~}|||||}||||||||||||}|||||||||{|||||||||||||||||~}||||~}|||||}||||||||||||}}|||||||||{||||||||||||||||}|}~~|}|~~~|}|}|~|}|}|~~}|}|}~|~}|}||}~~}|}}}~~}||}|}~~}|~}||}~~}}|}||}}|}|}|~|}|}|}~~|}|}||}~|}||}~~|}}|}|~~||~}|{||~}|||{~}||||||||||||}}||||||||||||{||||||{||~|||~~|{|~~~|||||~|||||~||||||~|||||||}|||||{{||||{||||~||~}|{}|~}||}||}||}|}{||}|}|}~}|}|}||~}|}|{}|~}|}|}|~|||~}||||~}|||||}|||||{||||||}||||||||||||||{||{|{|||||||}||}~~|}|~~~|}|}|~|}|}|~~}|}|}~|~}|}||}~~}|}}|}~~}|||}~~}|~}|{}|~}}|}||}}|}|}|||}|}|}~}|}|}|||}|}|{}|~}|}}||~|||~}||}~~}||}||}||}|}|~|}|}|}}~|}|}||}~|}||}|}~|}}|}}~||~}||||~}|||{~}||||||||||||}||||||||||||||{||||||{{||||~~|{|~~~|||||~|||||~||||||~|||||||}|||||{{|||||||{||||~}|{}|~}||}||}||}|}{||}|}|}~}|}|}||~}|}|{}|~}||}|}|~|z~||||~|||||z|||||{{||||~~}||||||}|||||||}|||||||}|||}|{||}}|||}|}|}||||}|}|}~~|}|}||{~|}|{|||~|}|||||~||{}{||}}||{~z}{|||{{|{||~}~||{|}|}~||{{||}~|||{||}~|}|}{z~}{|z{||{|{|z|}{|{|}}|}{|{||{|}{|{{{{|}{z{{{{|}||}|||}}|||}}}{}|||{}|}|}}||}|}||}}|}||||}}|}||||}}|||}|{|}||z{|||{{|{{{{|{|}}}|{|{||{||{|{{||||{{{{|||||{~}|||}|||~}}||||{{||||~~~||||}|}~||||||}~||||||}~|}|~|{{~}|{|||||{|{|}{|{|~~~}{|{|||~}{|{{|{~}{{|{|{~}||~||||}}||}}}{}|||{}|}|~~~|}|}||}~|}||||}~|}||||}~|||~|{z|}||{{||{{|{{{{|{|~~~|{|{||{~|{|{{||~|{{{{||~||{~|{{|}||{{||{{{{{{{z{{~~~|{{{|{|~|{{{{{|~|{{z{{|~|}}}||{||{{|{{{{}}~}|}}~}}}|~~}}}}}}}}}}~~~|}}}}}}~|}}|}}}~|}}|}}}~||}~|}|}~|}||~~|}|}|}}}|}~}~||}||}}~||}}|}}~|||||}}~||}~|||}~|}||~~|}|}|}|{|}~}~|||||}}~|||||}}~|||||}}~||}~|||}~|}||~~|}|}|}|{}}~}~||}||}}~||}||}}~|||||}}~||}~|||}~|}||~~|}|}|}|{}{~}~||}||}}~||}||}}~|||||}}~|}|~|{~~~}|~|~~}|~|~|}~|~|}~}~|~||~~}~|{~|~~}~~|~|~~}}}}~}|}~~~}}}~~~}~}}}}~}~}~}}~}~}}}~}~}|}}}~}~}}}}}~}}|}|||~}}|||}}}|}|||}}|}|}~}}|}||}}}}||||}}}}||||}}}}|}|{|~}}|||}}}|}|||}}|}|}|~||}|||~}}|{||{~}}||||{~}}|}|{|~}}|||}}}|}|||}}|}|}}||{}|||}}}|{||{}}}||||{}}}|}|{|~}}|||}}}|}|||}}|}|}|||z{|||}}}|{||{}}}||||{}}}|~|||~~|||{||||||{|}{|{|}|}}{|{|||}{||||||}{|{{|||}|}}|}|{|~}}|||}}}|}|||}}|}|}}}}}|}||~}}|{|||~}}|||||~}||~||||~}|||~~}|}||||}|}|~}||}|}||}|}||||}~|}||||}~|||}||||}|||||}|||||{{||||}~|||||||}{|||||}{||||||}{|||}|{z|}||{{{||{{|{{{{|{|}|~|{|{||{~||{{||~|{z{{||~|||}|{z|}||{{|||{{|{{{{|{|}}||{|{|{{||{{{{|||{z{{{|||||~||||~}|||}}}|}||||}|}|}}}|}|}|{}}|}|||}}|}||||}}|{||||}|{||}}|||}}}|}||||}|}|}}||}|}|||~|}|{||~|}|||||~|}|}|||~}|||||}|||||{}||||}}|}|||||}|}||||||}|||||}|}||~|{||~}|||~~}|}||||}|}|~}}|}|}|||||}|{||{|}|||||~||{}||||}|||||}|||||{{||||}~|||||||}|||||||}{|||||}|||{}|{z|}{|{{{|{{{|{z{{{{|}|~|{{{||{~|{{{z|{~|z{{||~|||~|{||~|||{{||{||{{{{|{|}|}|{|{|||||{|{|||||{{{||||{|{{||}|{||}}|||}}}|}||||}|}|}}||}|}||{~|}|{|||~|}||||~||{}||||}|||||}|||||{{||||}}|||||||}||||||||||||||}||}|}|{{~}||{{{|||{|{z}{|{|}}}}{|{||||}{|{{|{|}{{{{||}||~|{||~}|||~~}|}||||}|}|~|||}|}||{||}|{||{||}||||{||{}||||}|||||}|||||{{||||}~|||||||}|||||||}|||||||}{z{|{{{||}{{{|{|{{{{|{{{{|~z{{{|}|{{{{{{||{{{{{{||{{{z{z{z{|{z{{z{z{{{zz{z{}}{{{z}{{{{{{{{{{{{{zz{{{{{zz|zz{{{{z{z{{{z{z|zyz{|}{{zz||{{zzz{zz{{zzzzzz{{z|||{{|||z{||{|z|{{|z|{||}{{|{||||{{|{{|||{{{{{|||{{{~}{|~}{{}z{}{{{{y{{{{~~|{{{~}|}{{{}{||}{{{{{||}{||~}{{{}{{}{{}{|{{zz|{|~~|{|{~}{}{{|}{|{}{{{{{|{}{z{~{z{{|{z{{{{{{{{|zz{{~~|{z{~|{{{{z{{{{{{{zz{{{{{||~{{{|||{||{|z|{{|z|{|~~|{|{~|||{{|{{|||{{{{{|||{zz~{z{{|{{{{{{{z{{zzz{{~~|{z{~{{{{{z{{{{{{{zz{{{{{{|{|{{{{{z{||}}{{{{}|{|{{}{}{{z|{}}~|{|{}}{|{{|}{|{|{{{{{|{|{|{}|{{||}{||||||}{||||}}~{{||}}|}{{||{}|}{{{|{}|}{||}{{|{|}{{|{||{|{||{{|}}}{|{}||||{|{{||||{{{{||||||}{{{{|}{{|{||{|{||{{|}}|{|{}|||{{|{{|||{{{{{|||{||}{{{{|}{{|{||{|{||{zz}}|{|{}|||{{|{{|||{{{{{|||{{{~|{{|~}{|{|{}{|{{|{{{|}|{{{~|||{{{|{||{{{{|{||{{|~|}|{|||~|||||~|~||||~|~}}|~|}~||||~||~|||||||~||{|||{{{|||{{||{|{|{{|{|{||~{|{||||{{|{{|||{{{{{|||{{{|{{{|||{{{|{{{{{{|{{{{|}{{{|||{{{{{{||{{{{{{||{{{{|{{{|||{{{|{{{{{{|{{{{|}{{z|||{{{{{{||{{{{{{||{{{z}{zzz|}z{{{{{z{zzzz{z{|}zz{z{{{zz{{{{{{zzz{{{z{zz{~{z{z~||zz{||{{|||zz{z|{|zz{~|z{zz{|{|z{zzz|{|z{||{||{{{|||{{{||||{{||{{|{|}{{{||||{{{{{||{{{{{{||{{||}{{{|||{{||{|{|{{|{|{|}}{{|{}|||{|{{|||{{{{{|||{|||{{{{||{{|{{|z|{{zz|{||~{{|{||{|{|{{|{|{{{{{|{|{zz|{z{{|{{z{{{{{{{{zzzz{|}{{zz|{{{{{{{{{{{{zz{{{{{zz|{zzz{}{yzz{|{zzz|zzzz|}{zzz|{{zzzz{z{zzzzz{z{zz||~{{{|~|{{||{|{|{{|{|{||||{|{~|z|{{|{|||{{{{{|||{|{{{{|{{{||}{{{|{|{{{{|{{{{|}z{{{|||{{{{{{|{{{{{{||{{|||{{{{||{{|{{|{|{{|z|{||}{{|{||{|z{|{{|{{{{{{|{|{{{}{{{||{{{{|{{{{{{|{{{{}}{{{{}||{{{{{{||{{{{{||{{||{{{{{{|{{|z{|z|{{zz|{||~{z|{{|{|{z|{{|{|{{{{|{|{|||{{{||}{{||{|{|{{|{|{||}z{|{||{|{{|{z|||{{{{|||{zz~{z{{~|{z{{{{{{{{zzz{{|{|{z{~{{z{{z{{z{{{{z{{{{{|{z{{{|{{{|||{{z|{|{{{{|{{{{|}z{{{|||z{{{{{|{z{{{{{|z{||{{{{{|}{{|{{|{|{{zz|{||}{{|{{|{|z{|{{|{z{{{{{||{zz|{z{z||{z{{{{{{{{|zzz{|{{zzz|{{{{{z{{{{{z{zz{{{{{{}{{{||{{{{|{{{{{{|{{{{}}z{{{}||{z{{{{||{z{{{{||{zzz{z|yy{{zz|xz{z{{zxz{zz{|yz{{|z|zz{{{|z|zzz{{|z|z{{{~z{{y~{z{zzy}zz{zyyzzz~{{{z~{{{{{~z{{{{{zzz{{{{{y{zz{z|{y{{zz|zz|z{{z{z{zz{|zz{{}z|{z{{{|z|{zz{{|z|{z{zzzzzy|{zzzzz{yzzzyyzzz|{z{z{{zzz{zzzzzzzzzzzzzzzzzyz{yzy{zzzyzzzzyzz{zyzz{zzzy{{zyzz{zzzzyzzzzzzzyz{zyz~z{y~{zzyzzzzyzz{zyzz~{zzy~zzy{z~z{zzy{zzz{zzy{zzzz~z|z~{zz|yz{z{{zxz{zz~}zz{~|z|zz~{{|z|zzz{{|z|z{{{{~{{{z{z{{z{{zz{zyyzzz~}{{z~|{{{{~{{{{{{{zz{{{{{z{zz~zzzy|zzzzzzzzzz{zyzz~{z{z~{zzz{~zzzzzzzzzzzzzz{{{{~z|{z{{{|z{{z{{z{y{zz~|{{{~|{|{{~{{|{|{zz{{|{|{zyz{{{zzz{{{{~z{{z~{z{zz{zzz{{zzz{~{{{z~{{{{{~z{{{{{zzz{{{{{{{{{{{{{z|}z{zz{{zz{{zzz{|{{{z{{{{{{{{{{{{{{zz{{{{{{{{||{|{|||{||||||||||{|{||{{{||||{{||{|||{{{|{|||{{{{||{{{{|{{|{z|{|{{||{|{|{{{z|{|{{{|{{{|{{{{z{{|{{{{{{|{{{{|{z{{z{{z{{{{zz{|{{{z|{{{{{|{{{{{{{zz{{{{{zzzz{{|zz{{z{|zz{z{{z{z{z{{zz{{|{|zz{{{|{|z{z{{|{|zzz{z~{|zz~|z{|zz}z{{z{z{zz{zz{~|{|zz~{{|{|z{z{{|{|z|{{|{{||{z||{{|{{|{||{{z|{{||{|{|{|{{{|{|{|{|{|{|{|{{{{{{{|{z|{z{|z{{z{{z{z{zz||{{{|{|{{{{{|{|{{z{{|{|{z{zz{z|zy|{z{|zz{z{{z{z{zz||z{{|{|z{{{{|{|zzz{{|{|z{zzz{zz{z{{zzzzz{zzzzyzzzz{{yzz{zz{z{{{zzz{zzz{zzz{{zy{~zy{y~{{{yz{{{zz{{zz{{{zzzy~{y{z~{{z{y{z{z{z{y{{|{{z{{{|{{|{{{|{{{{{{{{{{{{||{{{{|{{{{{{|{|{{{{{|{|{{{{{{z|{z{{z{|z{{z{{z{z{zz||{{{{|{|{{{{|{|{zz{{|{|{{{{{{z{{z{zz{zz{{zz{zyzzzz|{{zz{{{{{{z{{{{{zzz{{{{{zyzzzzzzy{{yzzzz{zyzyyyzzy{{yyz{{zzyyzyzzzzzyzyzzzzzyyz{zzzz{zzzzz{zzyyz{zyz{{zzyy{zzyzy{{yzzzzzz{yzzz{{{{~z|{z~{z{|z{{z{{z{z{zz||z{{~|z|{{~{|{|{zz{{|{|{{z{{zz{{z|{z|{zz|{{{{{{z{z{{{{|zz{{|zz{z{{{||{zz{{|z|{{{{{{z{{z{zz{zz{zzz{z{zzzz|{{{z{{{{{{{z{{{{zzz{{{{{z{zz{z|zy|{zz|zz{z{{z{z{zz||zz{{|z|z{{{{|z|zz{{|z|zzyyz{zyzy{zzzyzzzzyyz{zyzz{zzyy{zzyzy{zzyzyzzyzyzyz{{{{{z|{z{{z{|z{{z{{z{z{zz||y{{{|z|{{{{z|{|{z{{|{|{{{zz~zz{y~{z{zzz{zzzzyzyzz|zz{z~z{y{{~z{y{z{zz{z{z{{zzz{zzz{z|{z|{zz|zz{z{{z{z{zz{|zz{{|zy{z{{{|z|{zz{{z|{{{{{zz{{z{{z{zz{{zz{zyzzzz|{{{z{{{{y{zz{{{z{zzz{{{{{{zz{zz{y|zzzzzzzzzzz{zzzz|zzzz{{zz{{{z{zzz{zzz{zz{zzzz{z|zy{{zz|zz{z{{z{z{zz{|zz{{|z|yz{{{|z|yzz{{|z|zyzzyx{zzyyyyyzyzyyyzzyyz{yzzy{zzyz{zzyyyzzyzyyyyyz{{zzzzyz{{zyyy}zz{{yz{z{zzzy{z{zzzz{z{zzzz{yzz{zzy{yz{y{{y{{{y{zy|zy{yzzzzzz{yyy{}y{z{{z{y{z{{yzy{y{zzzzzzzyzzzzyzz{yzzzyyyzzz{zyzz{zzzzzzzzzzzzyzzzzzzyyyzzyzyzyxyyyzzyyxyzyyyzzyyyzzyyxzzyyxzxzzyzyyxzyzyzzy{zzyyyyyzyzyyyzzyyz{yzzy{zzyz{zzyyyzzyzyyyyy{yzzzy{z{{{y{yz{zy{yyzzzyz{zyyz{y{zz{y{y{zz{yzy{y{zz{{zzzzzz{zyzz{zz{{yy{z{z{zy{{|zzzzzz{zzzzzzzz{zzzzyz{zzyz|zzyzzzzzzzzzyzz{zzzz{{zzy|zzzzzy{zzzzzzzyyyyyy{z{zz{{{zzzz{z{zyzz{zzzzz{z{{zzz{{{zzz{zz{zzz{zzzz{zzzz{{{zzzz{z{zyzz{zzzzz{z{{zzz{{{zzz{zz{zzz{zzzz{zzzz{{{zzzz{z{zyzz{zz{zz{z{{zzz{{{zzz{zz{zzz{zzzz{zz{{{{|{{{|{|{{{||{|{{{z{{{|{{{{|{{{{|{{{{{{|{{{{{{{zz{{{zz{{|{{zzzz{z{{{zzz{|{zz{|{zzz|{{{zzz{{{z{{zz{zzzzz{zz{{{z{zz{zz{yzzzyzzzzz{{z{z{{z{z{zz{zzz{z{{zzzzz{zz{{{z{zz{zz{yzzzzzzzzz{{z{z{{z{z{zz{zzz{z{{zzzzz{zz{{{z{zz}zz{yzz{zz{zzz{{z{z{{z{z{zz{zzz{z{{|z|{{z|{z|||z|z{|{{|{{z||{{|z{{|z|z{|{|z|z{|{|{|z|{z{{zz{zz{{{z{z{{zz{{zz{z{{{z{{{z{z{{z{z{zz{zzz{z{yyyyzyy{zzzyyyyzzzyyyyzyyzzzyyzzyyzzzyyyyzzzyyyyyyyyzyzyy{z{{zyyzz{zyzyyzzyzz{zyy{yyzz{yzyyzz{yzyzyyyzyz{yy{z{{yyyyzzzzyyzzyyz{zzzz{zyz{{zyyyz{{zyzyyyz{{{z{{z{{{|{{{{{z{{{{z{{zz{{{{{{{{{{{{{{z{{{{{z{{z{{z{{zz{{z{{{z{zz{zz{{zz{z{z{zy{{{z{z{z{z{zz{zzz{z{zyyyzyzzy{zyyyzz{yyyxyyyyyz{zyyz{yyzzyzxzzzzyzyyyzzzyz{yzyz{zyyyyzzzyyyzzyyy{yzzz{zzyy{zyyzy{zzzyyyz{z{{zz{zz{{{z{zz{zz{{zz{z{z{yy{z{y{zz{{z{zz{yzz{z{zzz{yzz{y{{z|{{y{zz{zy{yzzzzzz{yyy{{yzz{{z{{z{{zzy{y{zz{{zzz{zzz{zyzz{zz{{zz{z{{zzz{{{zzz{zz{zzzzzzz{zz{zzzzz{zy{{{z{zz{zz{zzyzzzz{yyzz{z{yz{z{z{z{yzz{z{yyyyzxyzy{zyyyzz{yyyxyyyyyz{zyyz{yyzzzyzxyzzyyyyxyyzyzzyyyz{zyyyyzzzzyyzzyyz{yzzz{yzyy{yzyyyyzzyzyyy{z{{zz{zz{{{z{zz{zz{{zz{z{z{yy{z{y{zz{y{z{zz{zz{z{zzyzzzz{yzzzzyyzzzzzzyzyzzzzyyz{zzyzzzzyzzzzzzzzzzzzyy{yzz{y{{y|{{y{zz{zy{yzzzzzz{yyy{{yyz{{z{y{z{{zzyy{zz{{zzzzzzz{zyyz{zz{{yz{z{zzzy{{{zzxzzz{zzzzzzzz{zzzyzzzz{zzzzzyyzzzzzzzzyzz{zzzz{zzzz{zzzzzzzzzzzzzyzzzzyzyyyyzxzzy{zyzxzzyzzyzyzzzzyzyzzzyzyzzzyzyzyyzzzzyzzyzyzyzyzzzyyyzzyzzzzyzzzzyzyzzzyzyzzzyzyzyyzzzzyzzyzzzyzyy{zzz{zzyz{zzzz{zzyzzzzzzzyzzzyzzzyyyzzzzyzyyzyzyzyy{zyzyzzyzzzzyzzzzyzzzzzyzyzzzyzyzyyzzzzyyzyzyyyyzyyyyxyzzyyzyzyyzzyyyyzzyyyyyzyyyyyyyzzzzzzyyyyzxzzy{zyzxzzyzzyzyzzzzyzyzzzyzyzzzyzyzyzzzzzyzzyzzyzyzzzzzzzzzzzzzzzzzzyzyzzzzzyzyzzzzzyzyzzzzzyzyzyzyzzzzzyzyzzyzzzzyzzzzyzyzzzyzyzzzyzyzyyzzzzzyzzzzzyz{z{zzz{yzyz{zzzz{zzyzzzzzzzyzzzyzzzyyxyyyyzzzz{yzzzzyyzzzzzyzz{z{zzzzzzz{zzzz{zzzyzzzzzyyyzzzzzyyyzzzzyyzzzzzyzz{z{zzzzzzz{zzzz{zzzyzzzzzyyyzzzzzyyyzzzzyyzzzzzyzz{z{zzzzzzz{zzzz{zzzyzzzzzyyyzzzzzyyyzzzzzyzzzzzzzz{z{zzzzzzz{zzzz{zzzzzzzzzzyzzzzzzzy{zz{{{{z{{{{{{{{z{{{{{z{{{{zz{{{{{zz{{{{{{z{{{{{{{zyzzzzzzzyzzzzzzy{zzzzzzyzyzyzzzzzzyzzzzzzzzzzzzzzzyzzzzzzzyzzzzzzy{zzzzzzzzyzyzzzzzzyzzzzzzzzzzzzzzzzzzzzzzzyzzzzzzy{zzzzzzzzyzyzzzzzzyzzzzzzzzzzzzzzzzz{zzzzzzzzzzz{z{zzzzzzzzz{zzzz{zzzzz{zzzzz{zzzzzzzzz{z{z{zz{z{z{{z{{z{{zzz{{z{{{{{z{zz{{z{z{{{z{z{zyzzzzyyyzyzyyyzzzzyyyyzzyzzzzyzzyyyzzzyyyyyzyyyyyyyzzzzyyyzyzyyyzzzzyyzyzzyzzzzyzzzyyzzzzyyyyzzyyyyyyzzzzzyzzyzyzyz{z{zyzyzzyzzzzyzzzyzzzzzyzyzzzyzyzyzzzzzzzzzzzzzzzzz{zzzzzzzzzzzzzz{zzzz{zzzzz{zzzzzzzzzz{zzzzz{z{zzzzzz{zzzzz{zzz{zzzz{z{zz{z{zzz{z{zzzzyzzzzzyzzzzzzyz{zzzzz{zzyz{zzzz{zzyzzzzzzyzzzyzzzyyyzzzyyyyyyyyyzzyzyyzyzzyzzyzyzzzzyyyyzyyyyzzyyyyyyzzzzzyzzyzyzyz{z{zyzyzzyzyyzyzzzzyzyzzyzyzzzyzyzyzyzzzyzyzyzzyzzzy{zzzzzzzzzzzyzzzzzyyzzzyzyzzzzzyzyzzzzzyzzzzzzyzzz{zzz{zzzz{zzyz{zzyzzzzzzyzzzzzzzyzyyyzzzzzyzyyzyzyzzz{zyzyzzyzzzzyzz{zyzzzzzyzzzzzzyzyzzzzzyzzzzzzyzzyzzzzz{yzzz{zzzz{zyzyzzzzzyzzzzzzyzyzzzzzyzzxzyzyz{z{zyzyzzyzzyzyzyzzyzyzyzyzyzzyzyzyzzzzzyzyzyzzyzyzy{zzzzzzzzzzzyzzzyzyyzzyzyzyzzzzyzyzzzzzyzzzzzzyzzzzzzz{zzyz{zzyz{zzyzzzzzyzyzzzzzzyyzzzzzyzzyzyzyzzz{zyzyzzyzzzzyzzzyyzzzzzyzyzzzyyzyyzyyyzzzzzyzzyzyzyzzz{zyyyzzyzzzzyzz{zyyzzzzyzyzzzzzyyyzzzzzyzzzzzzyzzz{zzz{zzyz{zzzz{zzyzyzzzzzyzzzyzzzyzzyzzxyy{yyzyzzzyzyzyzyyzzzzyzzzzzyyyzzzyzyyzzyzyzyyzzyzzyzz{zyzyzz{{zyzz{zyzz{{yzzz{|yzyy{|yzyzz{yzyzyz{yzzyzy{{zzyzy{y{yzyz{zzyz{{{{yz{|zy{zz|zyzyz{zyzyzz{{z{|z{{|{z|z{{{||z|{{|z|{||{{{{||z{{{{|{|z{{|z|z|zyzz{{{zzzz|yzzzz{z{zzz{{zzz{{{z{z{{|zzz{z|zzzzz{zzzzzy{zyyzyyy{yyxyy{zyyyxzzyyyzyy{zyzzyyy{zzzyxyyzzyyyxyy{zzyzzyy{yyzyz{zyzyzzzyyzzzz{zzzzzyy{zzzyzyyzzyzyzyz{z{{{zzz{{zzzy{z|zzz{zzzz{{z{zz{{zzz{{{zzzzz{zzzzzzy{zzyzzyz{zyzyz{{{zyzz{zyzz{{{zzz{{yz{z{{zzyzz{zzyzyz{{{{zz{z{{{z{z{{{z{z{{z{z{{{{{z{{|{z{{z|{z{zz{{z{zzyyyz{yyz{zz{{{{zzz{{zzzzz{{zzzz{z{zzzyzzz{zzzzz{zzzzz{zzzzzzzzzzzzzzzz{{zzzzz{{zzzz{z{zzzzzzz{zzzzz{zzzzz{zzzzzzzzzzzzzz{{{{zzzz{{{zzzz{z{zzzzzzz{z{{zz{z|zz{{z|zzzzz{zzzzzzz{{{zzzzz{{zzz{{{{zz{z{z{{z{z{{{z{zzz{z{zzzzz{zzzzz{{{{{{z{z{|{{z{{{{|z{{{z{{{{{{{{{{{{z{{{{{z{z{{{z{z{zyzzz{zzzz{zzzzz{z|zzz{{zyzzzyzz{{zzzy{{zzzzz{zzzzzzz{{zz{zzz{{zzzzz{z|zzz{{zzzz{{zz{{|zz{{{|zzzz{{zzzzzzyzzz{zzzz{zzzzz{{|zzz{{zzzz{yzz{{{zzy{{{zzzz{{zzzzzzz{{{{zzzz|{zzzz{z|zzz{{zzz{zz{z{{zzzz{{zzzzz{zzzzzz{{{|{{{{{{||{{{{{{|{{{{{|{{{{{{{{{|{z{{{|{{{z{{{{{{{{z{{z{{zzz{|zzzzz{{|zzz{{zzz{{z{z{{{zz{{{{zzzz{{zzzzzy{{zyzzyy{{yyzyz{z{zyzzzyyzzz{{zzz|yy{zz|yzyyz{yzyzyyyzzyzzyzz{yyzyzz{{zyzzzyyzzz{yzzz{yzyzz{yzyzz{yzyzyzz{{{zzzzz|{zzzz{zyzzz{zzzz{zzz{z{zzzz{zzzzzzzzzzzzzz{z{{{zzz{{{zzzz{{|zzz{{zzz{{{{zz{{zz{{{{zzzz{{zzzzzzz{{z{zzzz|zzzz{{{|zz{{{{z{{{zz{{{{|zz{{|zzzz{{zzzzzzzyzzzzzzyzz{zyzyz{{{zyzz{zyzz{{zzzz{{zzz{{zzyzz{zzyzyyyzyyzyyzy{yyyyzz{{yyzyzyyzzz{yzyzz{yzyz{yzyzz{yzyyyzz{{{zzzzz|{zzzz{zyzzz{zzzz{zzz{z{zzzzz{zzzzzzzzzzzzzyzzz{zzyz{yzzzz{z|zzz{{zzz{{yyzz{{zzyy{{zzzy{zzzzzzz{z{{zzzz{{{zzzz{{{zzz{{zzz{{{{zz{{zzz{{{{zzzz{zzzzzzz{{z{zzzz|zzzz{{{|zz{{{{z{{{zz{{{{|zzz{{|zzy{{zzzzzzyyzzz{{{zzzz{{zzzz{z|zzz{{zzz{{yzzz{{zzyz{{zzzz{zzzzzzzz{{{zzzzz|{zzzz{zyzzz{zzzz{zzz{z{zzzzz{yzzzzzzzzzzzzyzzz{zzyz{yzzzz{z|zzz{{zzz{{yyzz{{zzyy{{zzzzy{zzzzzyyzzyzzyzy{zyzyzzzyzyzz{zyzz{zyzzz{zyzyz{zyzyzzzzyzyz{z{{zzzz{{{zzzz{{{zzz{zzzz{z{{zz{zzzz{{z{yzzzz{zzzzzz{{z{zzzz|zzzz{{{|zz{{{{z{{{zz{{{{|yyz{{|zzzy{{zzzzzyyyyyzzyzzyyz{yyzyz{zzzyzzzyyzzzzyzzzzzzyyzzzzzyyzzzzyz{{|z{{y{{||yz{y{|}z{z{y{|zz{z{zy{{z{|yy{z{|{{y{{|{{z{z{{|z}{{{|}||{{{||}z{{||}||{||}|y}||}|{{||}|{{{{}|{{{{{{|{z{{{{|}||{{{{|}z{{||{|z{||{}{}{|{}{{|z{}{{{{{|{{{{{z|}z{{z{|}|~z{z{|}z{z{z{~~z{z{~z}{z{~z{|z{~z{z{{~z{z{z||}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}}~|}|}||z{{|z{z{{||zzyz{|}z{zzz{|zz{z{|z{{z{|{z{z{|{yz{{|{{zyzz{{|z{{{{||zz{z{|}z{z{z{|zz{z{zz{{z{|zz{z{|{{z{{|{{z{z{{{||{{{{||z{{{z|}z{{{|{|z{{|{|z{{|{|{z{|{|{{{{{|{{{{{{{{|z}{{{||z{{{|z}z{{||}||{||}zz{||}z{{{|}z{{{{}z{{{{{{|{{z{{{{|||{{{{|}|{{||{|z{||{}|{z|{}{z|z{}{{{{{|{{{{{{|}~z{~{~|}~{~{~|}z~{~|~~~{~|~~{}~|~~{~|{~~{~{~{~{~{~{yyzz{yz{|}z{|}z|}z}z}zz{zzz{z{z||zz{z{{}zzzzzzzz{{z{z{{{z{z{z{z{z{z{zzz{z{zzz{zzz{z{z||zz{z{{}z{zzzzzz{{z{z{{{z{z{z{z{z{z{zzz{z{z{{{|z{{{{{||{{{{{|}{{{{{|z{{{z|z{{{{|{{{{{|{{{{{|{{{{{z|}|z{{z{|}||z{z{|}z{z{{|zz{{{|z}{{{|z{|{{|{{z{{|{{z{z{{{||{{{{{||z{{{{|}|{{||||{||{}{{{|{}{{{|{}{{{{{|{{{{{{{{~{}{{{{~~~{{{~|}z{{~|}~{~|}~{{~|}~{{{|}~{{{{}~{{{{{{{{|z}{{{{||z{{{||}z{{||}z|zzzzy{||}{{{{|}{{{{{}z{{{{{{{{|z}{{{{||z{{{||}z{{||}||{zz{z{||}{{{{|}{{{{{}z{{{{{{|}|z}{{{|}||{{{||}z{{||}||{|{|z}||}|{{||}|{{{{}|{{{{{{{{|z}{{{{||z{{{||}z{{||}||{||}{{||}}{{{|}}{{{{}|{{{{{{{{~z}{{{{|~~{{{||}z{{||}|~{||}z{||}~{{{|}~{{{{}~{{{{{||}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}}~|}|}||{{{||{{{{{||z{{{{|}z{{{|{|z{{|{|z{zz{zy{|{|{{{{{|{{{{{{|}||{{{{|}||{{{{|}z{{{|{|z{{|{|z}{{|z{||{|{{{{{|{{{{{{{{||{{{{{||z{{{{|}z{{||{|z{||{}{{{|}{z{|{}{{{{{|{{{{{{{{~|{{{{{|~~{{{{|}z{{{|{|~{{|{|z{{|{z{{|{~{{{{{~{{{{{{{{||}{{{{||z{{{||}z{{||}||{||}}{{||}}{{|}}{{{{}|{{{{{||}~|}{|{|}~~|{|||}|{|||}~~|||}~|}||}~|||}~|{|{}~|{|{||{z|}|z{{z{|}||z{z{|}z{z{z{|zz{z{|z}{z{|{{|{|z{z{{|{{z{z{{{|z{{{{{||z{{{{|}z{{||{|z{||{}{{{|{}{y{z}{y{{{|{{{{{z{{~z{{z{{|~~z{z{|}z{z{{{|~z{{{|z{{{{|{{{{{z{z{{~{{z{z{{{|z}{{{{||z{{{||}z{{||}||{||}|z{||}|{{{|}|{{{}|{{{{{{{{||{{{{{||z{{{{|}z{{||{|z{||{}{{{|{}{{{|{}{{{{|{{{{{||}~|}{|{|}~~|{|||}|{|||}~~|||}~|}||}~|{||}~|{{}~|{|{{z{{{{{|z{{{{{||z{{{{|}z{{||{|z{||{}{{{|{}{y{z{}{{{{z{y{y{z{{~z{{z{{|~~z{z{|}z{z{{{|~z{{{|z{{{{|{{{{{|{{z{{z{z{z{{{|z}{{{{||y{{{||}z{{||}||{||}|y{||}|{{{|}|{{{{}|{{{{{{{||{{{{{||z{{{{|}z{{{|{|z{{|{|z{{|{|{z{|{|{{{{{|{{{{{{{|z{{{{{||z{{{{|}z{{||{|z{||{}{{{|{}{{{{{}{{{{{|{{{{||}~|}{|{|}~~|{|||}|{|||}~~|||}~|}||}~|{||}~|{|{}~|{||z{{{{||}}||{}}}||}}|}|}}||}|}}}}}|{}}}}}}}{}}|||}}{|}|}|}}{|z{}{|}{|}{|z~|}{|z|z}{|z|z~~}z|z|}{~}{|z{|{~}{{|z|{~}z{|}|{{|}||{}|}||{}{|}|{}|}||{}|}z}}}{}z||{}}{{z{}{}}{{||}||}}}}{||}}}{}|||}{}|}|}{}|}|}||}}|}|{||}}|}||||}}|||}||{|}||{|{}||{|{{}|{|{|}|z|{|{|||{|{||{||{|{{|{||{||||~}|}}~}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}||}|~}|}}|}|~}|{{~}||}|}||{~}}||{|{}||{|{~~}{|{|}|~}{|{||{~}{||{|{~}{{|}}|{{|}}{}|}}|{}{}}|{}|}}|{}|}{}}}{}{||{}}{{{{}{}|{{||}}||}}}}||}}}|}|||}|}|}|}|}|}|}}|}}|}||||}}|}||||}}|||}}|{{|}||||}}|{|{{}|{|{|}|{|{|{}||{|{||{||{|{{|{||{|{{}}|{{{}||{|}}|{{{z}|{{{{||{{{{{}{|{{{{|{z|{{{{z{||{{||~}|~{}~}|~}~}|~}~|}|~}~}~~~}~}~}}~~}~||~}~~|}~}~}~{||{}}|{{|}}|{}|}|{}{|}|{}|}}|{}|}{}}}{}{{|{}}{|{{}{}}{|||}|||}}}}|||}}}}|||}{}|}|}|}|}|}||}}|}|{||}}|}||||}}|||}||{{|}||{|{}|||{{}|{|{|}|{|{|{||}{|{||{|}{|{{|{|}{|{{}||{{{}||{{{}||{{z}|{z{{||{z{{{|||{{{{|{{|{{{{z{||{{z{||{{{{||{{{z||{{{z}{z{zz||{{zzz{|}{{zz{{{}{{z{{z{}{z}|}{}|z}|{z{{{{z}{{zz}}~}|}}}~~}}}~~~}~}}}}}~}~}~}}~}~}}~}}~}|}}~}}~}}}}~}}}}}}|||}}}}|}}}}}}}|}}}}}}}}|}}}}}}}|}}}||}}|}}|}|}}{}||}}|||}}}|||}}}|}|||}|}|}|}||}|}}|}||}||||}||}||||}||||}}|||}}}||}}}}|}}|}}|}}}}}}{}}}}|}|}}}||}}|}}|}|}}||||}}|||}}}|||}}}|}|||}|}|}|}|{||}}|}||}||||}||}||||}||||}}|||}}}|||}}}|}|||}|}|}|}|{|||}|}||}||||}||}||||}||}}}~}}}}}~}}}}~~}}}}}}}}}}}}~~}}}}}}~}}}}}}}~}}}}}}}~}}||~|||}}~}|||~~}|}|||}|}|}|~|}|}|}||}|}||||~}|}||||~}||{}|||}|}|||}{}|||}|{}||}|}}|}}|}||}}}||||}}}|||}|}}}||{}}||}|}}||||}}||||{}|||||}|}||||}{}{|||||}}||||||}}||{}|||}|}||||{}|||||{}|||||}|}||||||}{{|{||}}||||||}}||{}|||}|}||||{}|||||{}|||||}|}|||||{|{z{{|||}|||||||}|}|}}~}|}}}~}}}|~~}}}}}}}}}}}}~~}}}}}}|~}}}}|}~}}|||}}~}}||}|||}}}}||}}}}|}}||}|}}}}}|}}}}}|}}}}}|||}}|}|}|}}}|||~|||{}~}|||~~}|}|||}|}|}|~|{|}|}|||{|}||||{|}||||~{|||}||{{|}||{}{}||{}{{}|{}|}}|{}|}{|}}{}{||{}}|{{}{}}{|||}}|{{|}}|{||}}|{|{z}|{|{|||{|{|{}{|{|{||{z|{{{|{||{|||}||{{|}||{|{}||{|{z}|{|{|||{|{|{||}{|{||{{}{z{|{|}{|}||}}~}|}}}~}}}|~~}}}}}}}}}}}}~~}}}}}}|~}}}}|}}~}}|}}}~}}||}|||{}}}||}}}}|}}||}|}}}}}|{}}}}|}}{}}||||}{|}|}}}{||{}|||}|}||||{}|||||{}|||||}|}|||||||}|||||||}||||||}|||~|||{}~}|||~~}|}|||}|}|}|~|{|}|}||}{|}||||}{|}||||{|{{}||{{|}||{}{}||{}{{}|{}|}}|{}|}{{}}{}{{|{}}{{{{}{}|{{{}}|{{{}}|{{|}}|{{{z}|{{{{||{{{{{}{|{{{{|{||{{{{z{z|{z{{{{{z{|{{z{|{{z{{{|{z{zyzz{z{{{|{z{z{{{|{z{{z{{|{z{||{{{}|||{{||||{{{|||{|{|{||{|||{{||{{{{|{||{{{{|{{{|{{z{|{|{{{{|{{{{{{{{{{{zz{{{{{|{{{{{{{{|{{{{{{{{z{zzz{zzzz||zzz||zzzzy|zzzzz{zzzz|}{{zzz{z{{zzzzzz{{zzzyz|zzzz|{{zz|{{z{{{{zzzz{{zzzz{|{zzzz{{z|zzzzz{z{zz{|{{{{}{|{z{{|{z{{{{{z{|{{z||{{{|{{|{{{{{{{|{{{{{{{{{|{{{z|{|{{{z|{{{{{y|{{{{z{{{{{{|{{{{{{{{|{{{{{{{{z{{{{||{{{}||{{||||{|||||{|{|{||{|||||||{{{{|{||{{|{|{{zz{|{{{z{|{z{||{z{{z|zz{zz{z{z{|}|{z{z{{{|{z{{z{{|{zzz{|{zzzz|{zz|{{z{{{{zz{z{{zzz{{|{zzzz{{{|zzzzz{{{zz{|{{{{{}{|{{{|{z{{{{{z{|{{z||{{{|{{|{{{{{|{|{{{{{{{{zz{{{{{z{|{{{|{{z{{{{{z{zyzz{z{{{|{z{z{{{|{z{{z{{|{z{|{||z{|{||{{{|{{{{{|{{{{z{{{{{|}{{{{{|{||{{{{{{|{z{zz||{{{z{||{z{||{{{|{{z|{|{z{z||||{z{z{|{|{z{{z{{|{z{|{{{{{}{|{{{{|{{{{{{z{|{{z||{{{|{{|{{{{{{{|{{{{{{{{zz{{{{{z{|{{z{|{{{z{{{z{zyzz{z{{||{z{z{{{|{z{{z{{|{zzzz{{zzzz|{zzz|{zzz{{zzzzzzzzzz{|{zzzz{z{zzzzzzz{{zz|{{{{{{{zz{zzzz|||}|||}}}|||}}|||||}|||||{||||}}}||||||}}||||||}}||{||}|||||}||{}}||{|||||{|{|||{|}}}|{|{||{||{||{|{||{{|{}||||{}|||}}|||{{{|{|{{{{{{{}}||{{{|||||{{||{{||{{|{}||||{}||{}}||{{{{|{{{{{{zz{}}||{{{||{||{{|{{{||{{|{}||||{}||{}}||{{{{|{{{{{{zzz}}||{{{||{||{{|{{{||{|{{||{{}{||{|{||{|{{{{{||{{{||{{|{{|{{|{|{{|{{|{{{{|}}}|}|{|}|}}|||}}|}|}}}|}|}||}|}|}||}|}|||}|}|{|||}|}{|{{|{{}{||{{{||{{{{{|{{|{{{||{{{|||{{|{||{|{{{{{|{{{{{{{{{}{||{{{|{{{{{{|{{|{{{||{{{{|{{{{{{|{|{{{{{|{{{{{{{{{}{||{{{|{{{{{{|{{|{{{||{{{|{zz{{{{|{|{{{{{{{{{{{{{{{}{||{{{|{{{{{{|{{|{{{||{{{{{zzz{{{{{|{{{{{{{{zzz{{z{zz||{z|||{{{{{|zz{{{{z{z{|{|{z{z{z|{zzzz{z{{z{|{{|||{{}||||{||||{|||||{|{||||{|||||||{|{}|||{{{|}|{{|{|{{{}{||{{{|{{{{{{{{{|{{{||{{||{{|{{{{{{|{{{{{{{{{|{{{z{|{|{{{{|{{{{z{{{{{{zz{{{{{|{{{{{{{{{{{{{{{{z{zz{{{{{z{|{{z{|{{z{{{{{z{zzzz{z{{{|{z{z{{{|{{{z{{|{zzzz{{zzzz|{zzz|{zz{{{{zz{zzzz{z{{|{{z{z{z{|zzzz{{{zz{|{{{{{}{|{{{{|{{{{{{|{{|{{{||{{{|z{|{{{z{{{|{{{{{{{{{{{{||{{{}|||{{||||{{{|||{|{|{||{|||{{||{{{{|{||{{||{{{|{{{z{|{|{{{{|{{{{{{{{{{{{{{{{{{|{{{{{{{{{{{{{{{{z{{{{|{{{}{||{{{|{{{{{{{{{|{{{||{{|{|{|{{{{{|{|{{{{{{{{|{{{z{|{|{{{{|{{{{z{{{{{{zz{{{{{|{z{{{{{{{z{{{{{{{{zz{{{{{z{|{{z{|{{z{{{{{z{zyzz{z{{{|{z{z{{{|{z{{z{{|{z{zz{y{y{{zzy{{z{{yx{y{zzzz{z{z{zz{zz{z{zz{{z{z{zzzyzzz{zz{z{{zzz{{zz{zz{z{z{zzzz{{{zzzz{{z{zzz{zzz{zzzz{z{z{z{{zzzz{z{{zzzz{zzzy{z{z{zz{zz{z{zz{{z{z{zzzyzzzzzy{{yzzz{yzzyy{yzyyzzyyz|{zzzy{{zzzzzzyzzzzzzyyz{zyy{zzzy{zzyyzzyzyzzzyyyy{{{zyy{{zyzzy{zyzyzzzz{zz{{y{{zzy{{z{{zx{y{zzzz{z{z{zz{zz{z{zz{{z{z{zzzzz{z{zz{{{zzz{{zz{zz{z{z{zzzz{{{zzzz{{z{zzz{zzz{zzzzzz{z{yz{z{z{{{zzzy{yzzzzzyzz|{{zyz{{{z{zyzzzzz{zzyyz{zzzy{zzy{zzzzzzzzyzzzyyyy{{{zzy{{zzzzz{zzzzzzzz{zz{z{z{{zz{{y{{zz{y{z{zy{z{z{zz{zz{z{zz{{z{z{zzzz{z{zz{z|zzz{{zz{yzzz{z{xzzz{|}zzzz{{z{zzzzzzz{zzzz{z{{z{z|{zzz{z{{zz{z{zzzz{z{|}zz{z{{z{zz{{z{z{zzzzyz{z{yz{{z{z{{zzzzzzzzzzzyzy{{{zyz{{{z{zy{zzzz{zzz{zz{z{z{{zzz{{{{zz{y{z{zy{z{z{zz{zz{z{zz{{z{z{zzzzzzzz{zz{zz{z{z{yyzz{yzzzzyzz{{{zzzzz{y{zzzzzzy{zy{z{zz{zzyzzz{z{}{{z|}{{z{}|{|{z|{{zzz{z{|}|z{z{}{|{z{}{{z|{z{{|{||{|{||{{{||{||{||{|{{{|{||}{{|{|||}{{||{||}{{{{{||{{{{|{{|{|{{{{{{{{{{|{{{{||}{{{|{|{|{{{{{|{|{{z{{|{{{z|{{{{|{{{{{{{{{{z{zz{|||{{z|{{{{{{{{{z{{{{z{{|{{{z|{{{z|{{{{{{{{{{z{zyz|||{{z|{{{{{{{{{z{{{zz{z{zz{z|{zzz{|{|{zz{z|{{zz{z{{zzzz{zz|{zzzz|z{zz||{{||{|{||{{{||{{{{||{{{{|||{{{|{|{{|||{{|{{{||{{|zz{zz{{{z{{z{z{{{{{zz{{{z{zz{z{{{{{zz{{|{z{{z{z{{zzz{z{{{{z{{z{z{{{z{zzz{{z{zzzz{{{{zz{{{{{zz{zzz{{zzz{zz{z{z{{zzz{{zz{zzzz{z{zzzz{{{zzzz{{{zzz{zzz{zzzzzz{zzzz|zyzz{{zzzyz{zzzzyzzzz{{zzzz{zzzzzzy{zzzzzzzz{zzzz{{zzz{{zyyzz{zzzzzzzzz|{|zzz{zyzzz{zzzyzzz{zz{{{{{{z|{z{{|{{z{{{{{{{{{zzz{|{{zzz{{{{zz{{{{{{zzz{z{{z{z|{zzz{{z{{zz{z{z{zz{z{|{zz{z{{z{z{{z{z{zzzz{zz{z{z{{zzz{{z{{yz{z{zzzy{z{{{zz{zz{z{z{{z{z{zzzzzzzz{zz{zz{z{z{zyyzz{zzzzyzzz{{{zzzzz{y{zzzzzy{zzyyz{zzyy{{zzy{{zyzzz{zyzzzzyyy{{{zyy{zzyzzyzyzzzzzz{zz{z{z{{zzz{{z{{zz{z{z{zz{z{z{yz{zz{z{zz{{{z{zzz{{zz{z{zz{z{{zzz{{zz{z{{z{z{zzzz{{{zzzz{{zzzzz{zz{zzzz{zz{z{z{{zzz{{z{{yz{z{zzzz{z{{{zz{zz{{{zz{{z{zzzzz{z{z{{z|zz{z{{{z{zzz{{z{zzzz{|{{zzz{{{{{zzzzzz{zzz{zz{z{y{{zzz{{z{{yz{y{zzzy{z{z{zy{zz{z{zy{{z{z{zzyzzzzxzzzyzyzzzzyxyyzyyzxyxzz{zzzyzzzyzzzzzyzyzxxzyyzzyzyzzzzxzzyzzyyzyzzzyyzyzzzyyzzzzzzyzzyzzzzzy{zyzzyzz{yyyzzzzxzyzz{zyyzyzz{yyzz{z{yyzzz{z{yyyyyyyyyzzyyxzzyyyxxzyyyyyyyxyz{yyyzzyyyyyzyyyyyzyzyzyzzzzzyxzzyyzxyzyzzyxyzyzzzyyzzzyzyyzzyzyzyzy{zzyzyzz{yxzzzzzxxzyz{zyyzyzz{yyzz{z{yyzzz{z{yyzyzyzzyzzzzzxzzyzzyyzyzzzyyzyzzzyyzzzzzzyzzyzzzzyzyzzzzyzzyzyzzzzyxyzyyyzyyyzz{{zzyzzzzzzzzzyzyzyyyyzyzyyzyyxzyyyyxyyyxyyzyxyy{zzyyzzyyyyzzyyyyyxyxyzzzyyzzzxz{yzxxyyyxxzzyxyyzzyyxzzzxzyzzyyzxzzyzyzyyzzzzzyzzyyzxyzyzzyxyzyzz}yyzz{yzyyzzyzyzyzy{zzyzzyzz{yyzzzzxzzzz{zyyzyzz}yyzz{z{yyzzz{z{yyzyzzzzyzzzyzyzzzyxyyyyyzzyxzz{zzzyzzzzzzzzzyzyzzy{zzyzzzzz{yyzzzzyzzyz{zyyzyzz{yyzz{z{yyzzz{z{yxxxzzzyyzzz{z|zzzz|z{zyz{zzzyzzzzzzyzzz}{zzz|{z{zz|zz{z{zzz{zzzzzz{{{zyz}zzzyzzzz{zyzzz{|zzz{{z{zzz{z{z{z{z{{|zz{{|||z{{|{z|z{|z{{zz{zz||zz{||z|zz||z{z|zzz{{|{{zz|{{{z|{{{zz{z{z{{{zz{|{{{z|{{{{{|{{{{{{zz{z|zzzz|{{z{{{zzzzz{z{{zzyyz|{zzz|{z{zz|{z{z{zzyzyzyzzzzzzyyz{zyzyyzzzzyzzzyz{yyzzzyzyyzzyzyzyzyzyzyzzzzzzyyz|zyzyy{zzzyzzzyz{yyzzzzzyyzzzzyzyz{z{z{zz{z{{{zz{{z{{zz{z{{z{z{zzz{z{{|{{zz{{{|{{zzz{zzzzzzzz{zyzzzzzyzzzz{zzzzzz{{zzz{z{zzzzz{z{zzzzzzzzzzzzzzyzzzzzyyzzzzzzzzzz{zzzzzzzzzzzzzzzzyyyyyzyyyzzzzyzzyzzxy{yzyzxyyyyz{yyyzyzzyyzyyzzzyyxz{zzyy{zyzyzzzzyyzyzyyzzyyyzzzzyy|zyzy{zzyzyzz{zzzz{{zzz{zz{z{zzzzzzzzzzzzzzzz|zzzz{zz{z{z{zzz{zy{zzzzzzzz{zyzzzzzyzzzz{zyzzyzz{yyzz{z{yzzz{z{zzy{zzzzzyzz{zyzzzzzxzzyz{zyyzyzz{yyzz{z{yzzz{z{zyxyyyyyyxzzyyxyzyyyxyzyyyyxyyxxz{yyyzzyyyyzyyyyyxyxzzyzyy{zyyyzzzyxxzyyxyyzyxyy{yzyx{zyyyyzyyyyyzy{zzyzzzzz{yyzzzzzyzzyz{zyyzyzz{yyzz{y{yyzz{z{yzzzzyzyzzyzz{zzzy{zyzzyzzyzzzyyzyzzzyyz{{zzzyzzzzzzzy{zzzzzyzz{zyzzzzzyzzzz{zzzzyzz{yyzz{z{zyzzz{zzzzzzzzzzzzzzzyzzzzzyyzzzzzyyzzz{{zyzzzzzzzzzzzzzxyyzyyxyzyyyzxxyzzxyxyzyyzxxxyzyyzyxyzzyyyyzyzyyyyyyzyzyyyyyyzyyyzzyyxxzyyzzxxyzzzzyyyzzyzyyzyzyzyyyyyyyyxyzyyyyxyyyyyxyyyyyyxxyyyzyyyyzyyyyyyyyyyyxxzxyyyyzyzyyzzyx{zzyyxyzyyzzyyyzyzzyxyzzzyzyzyzzyzyyyyzzyyyyyyzyzyzzyyxyyyyzzxxyzzzzyyyzzyzyyzyzyzyzyxyxyzyxyyzxyyyyxyxxyyyyyzyyyyyzyyyyzyzxzzyyyzxzyxyyzyyyzyyyzxxyzzxyxyzyyzxxxyzyyzyxyzzyyyyzyzyyyyyyyzyzyyyyyzyxyzzyyxyzyyzzxxyzzzzyyyzzyzyyzyzyzyxzyyyzyyzyzyzzyxyzzyyxyzyyzzyyyzyzzxxyzzzyzyzyzzyzyyyyyyyyxyzyyyxyyyyyyyyxyyyxxyyyzyyyyzzyyyyyyyyyyxyyxxxxxyyxyxxyyyyxxxyyyxyxxxyyxyyxxxyyxxxyyxyxxxzyxyxyxzyxyyzyyyyxyxxyyyyyzyyyyyzyyyyzyzxzzyyyzxzyyyyzyyyyzyyyzyyzzxyxyzyyzxyxyzyyzyxyzzyyyyzyzyyyyyyyzyzyyyyyyzyzzzyyyyyyyzzxxyzzz{yyyzzyzyyzyzyzyyyyyyyyyyyzyyyyyyyyyxyyyyyyyyyyyzyyyyzyyyyzyyyyyyxxxxxyyyzyyyyzyzyyyzzyzyzyzzyyyyzyyyyyyzzzzyyyzzyzyzzyzyzyyyyyzyzyyyzzyzyzyzzyyyyzyyyyyyzzzzyyyzzyzyzzyzyzyyyyyzyzyyzzzyzyzyzzyyyyzyyzyyyzzzzyyyzzyzyzzyzyzyzz{z{z{zz{z{z{zzz{{zzz{{zz{zz{{z{{zzz{{z{z{{z{z{zzzzzzzzzzzz{zzzz|{zzzzzzzzzzzyzz{zzzz{zzzz{zzzzzzyyyyzyyyyzyyyzyyyzzyyxyzyyzyyyyyyyyyyzzyyyzzyzyyyyyyyzyyyyzyyyzyyyzzyyxyzyyzyyyyzyyxyyzzyyyzzyzyyyyyyyzyyyzzyyyzyyyzzyyyz{yyzyyyyzyzyyyzzyzyzzyzyyyzzyzzzzzzzzz{zzzz{{zzzyz{yz{zzyzzzzzyz{zzzz{zzzzzzyyyyzyzyyzzzyzyzyzzyyxzzyyzzyyyzzzzyyzzzzyzzzzyzyzyyxxyxzyyyyzxyyyyyyxxyyyyyzxyyyyzyxxyyyxzyyyyzxzzyyxxyyzyyyyzyyyyzyyyyyzyyyzxyyyyzzyyyzyyzyyyyzyzzyyyxyxzyyyzzxyyzzyyxyyyyyyzyyyyyzyyyyzyxzzyyyzxzyz{zyzzzy{zzz{zz{z{zzzyzzzzzzzzzyzz|zzzz{zz{{z{zzy{zyyyzyzzyzyyzzyzyzzyyyyzyyzzyyyzzzzyyyzzzzyzzzzzzyxyxxxyyyyxyxyyxyyxxyyyyyxxxxxyyxyyyxxyzyyyyxyxyyyyyyxyxyyyyzyxyyzzyyxyyyyyyyyyyyyzyyyyzyyxxzyyyxyyyyyzyzyyzyyyzyzyzzyyxyzyyzzyxyzzzzyyyzzyzyyzzyzyyyzzyyyzyyzyzyzzzyyzzzyyxyzyyzzyyyzyzzyxyzzzyzzzyzyzzyyyzyzzyyyyzzyzyzzyyyyzyyzzyyyzzzzyyyzzzzzzzyzzzyyyyzyyyxzzyyzyxyzzyyyyzyyzyyxyzyzzyxyzzyyyyzyzyyyyyyzyxzyyyyyxzyzyyyxyyxyzyzyyyyzzyyyzyyyyyzyyyyyyyyyyyyyyyzzyyyyyyyyyyyyzyyyzyyyyzyyyyzyyyyyyyyyyyyyyyyyyyzyyyyyyzyzyyyyyyyyyyyzyyyzyyyyzyyyyyyyyyyyyxxyxyyzxyyyyyyxyyxyyyxyyyyyyyxyxxyzyzyyzyzyyyzyyyyxyyyyyyyyyyzyyyyzzyyyyyxyzyyyzzyyyzyyyyzyyyyyyyyyyyyyyyyyyyxyzzyxyyyyxyxyyyzyyyxyyyyzyyxyzyyxyxyyyxyxyyyyyyzyzyyyyyyzyzyyyyyyxyzyzyyyyzyyyyzyyyyyzyyyyyyyxyyyzxyyyyyxyyyzyyxyxyyyxyyzxxyzyzyyzzzxyyzzyxyxyyyyyyyyyyyyyyyzyzyyyyyyyyyyzzyyyzyyyyzyyyyyyyyyyyyxyyyyyyxyyyzyxyzxyyyxyyyzyyyyzyyyzyzxyzyzyyyyyyyyxyyxxyxzxyzyxyxxyxzxxxyyyyxyxxyxxxzyyyxzyxxyyzyxxxxyyyyyyyxyzyzzyyyyyxyxyyyzyyyxyyyyzyyxyzyyxyxyyyxyxyyzyyyzyyzyyyyzzyzzyyyzyxyzyzzyyyzzyzyzyyyyzzyyyyyyyyyyyyxyzyzzyxyyzyyxyyyzyyyyzyyyzyzyyzzzyyyyzyxyxyyyyyyyyyzyyyyyyyzyyyyzyyyyyzxyyyzyyyyzzyyyyyzyyyyyxxyyxxyyyyyyyyyyzyyzyzzyyyyzzzyyyzyzzyzyyzyzzyyyzzyyyyzzyzyyyyyyyyzyyzyzzyyyyzzyyyyzyzyyzyyzyzzyyyzzyyyyzzyzyyyyzyyyzyyzzzzyyyzzzzyyyzyzyzzyzzyzzyzyzzyyyzzzyzyyyyyzzzzyyzyzzyyyzzzzyyzzyzyzzzyzzzzzyzzzzyyyzzzzyyyzz{zz{zzzz{zzzzz{zzzzyzz{zzz{yzz{zzzz{zzzzz{zzzzzzyyyyyzyyyyyyyyyzyzyyyyyyyyzyzyyyzyyyyzyzyyyzyyyyyyyyyyyzyyyyyyyyyzyzyyyyyyyyzyzyyyzyyyyzyzyyyzyyyyyyyyyyyzyyzyzzyyyzyzyyyyyyzyzyzzyyyyyyyzyzyyyzyzyyyyyyzyyzyyzyzzzyyzyzyzyyzyzzzzzzzyzzyyzzzzyyyzzzyzyyzzyzyzzyzzyzzzyzzz{zzyzzz{zz{zzyyzzyzzzzzyzyzzzzzyzyxxyyzxyyyyyyxyyxzyyxyyyyyyyxyxxyzyyyzyyyyyzyyyyxyyyyyyyxyyyzzyxyzyzyyxyyyzyyyxzyyyzyyyyyyxyyyyyyyxyyyyyyyxyzyzzyxyyyzyyyyzyzyyyyyyyyzyyyyzyyyyyzyyyxyyyyzyzyyzyzzyyyzyzyyyyzzyyzyzzzyyzzyzyzzyyzzzyyyyyyzyyyyyzzyzyyyyzyzyzzyyyyzyyzyzyzyyzzzyyzzzzzzzzzyzyyyyyyyyyzyyyyyyzzzyyyyzyyyyyzyxyyzyzyyzzzyyyzyyyyyyyyyyyxyyyzzyxyzyyxyxyyyzyyyxzyyyzyyxyzyyxyxyyxyxyyyyyyzxyzyyyyxyyxzxyyyzyyyyyyyyyyyyyyyzyyxyyzyxyxyyyyyyzyyyyzzyyyzyzyyyyyyzyzyzyyyyzyyyyzyyyyyzzyyyyyyyyyyyyyyyyyyyzzzyyyyyyyyyyzzyyyzyzyyzzzxyyyzyyyyyxyyyyyyyxyyyzzyxyyyyyyyyyyzyyyyyyyyzyzxyzyzyyyyyyyyyyyyyyzyyzyyyyyyzzzyyyyyyyyzyzyyyyzzyyyzyyyyyzyyyyyyyzy{yxyyy{yyyyzzyyyzx{y{yzz{yyzy{{yyyy{{yyyy{{yyyyyyxyyzyy{zxzyyyy{zyyyyy{yyyyyz{zyyz{y{zyzyzyy{zyyyyyyz{zy{yz{{y{yzyz{{yyzyz{{{yyz{zyyy{zz{zy{zzyz{{zzyzyzy{zzzzzz{zzyzzzz{yzzzzzz{zzzz{zzzz{zzzzz{zzzzz{zzzzyyyzzyyyxzzzyyyzxzzzxyzyzz{{yyzzzyyyzzzyzyyzzyzyyzzyzxzy{yyyyyyyyyyyyyz{yyyyyzy{yzyyzyzyzzzyzyzzzxyyyzzyyxyy{yzy{yyyy{yyyyz{yyyzy{y{yzz{yyzy{{zyzy{{zyyy{{zyyyyz{yyyyxzzyyzzyzz{yyzyzz{{yyzyzyyyyzzyzyyzzxzyyzzyzxzy{yyyzyy{yzyyyy{{yyyyy{y{yyyz{zyyz{z{zyzzzyy{zzzyyyyz{{zyzz{{{zy{z{{{{z{z{{{{{z{z{{z{z{{{{{z{{zz{z{{zzzzyy{yzy{yyz{y{yyyz{yyyyy{y{yyy{{zyy{{zyzy{yzyyy{yzyyyyyyyyyyyy{zyyyyyzzxyxyy{yxyyxzzxyyzyy{yyyyyxy{yyyyxyyyyyyyyyy{zyyyyyzzyyyxy{yyyzyzzyzyzzy{yyzzyxy{yzyyyxyyyyzy{yy{zy{yyyzzyyyzx{y{yzz{zyzy{{y{yy{{yyy{{{yyyyyzzzyyyxz{zyyzzyzzzyzyz{{{zyzzzzyyzzz{zyyzzyz{yzzyzxzz{y{y{zz{{y{yz{z{y{z{z{{{y{z{{z{y{{z{zy{zz{z{{zz{z{zyyyy{yyz{yz{{{{yyyzy{yyyyy{yyyyzzyyyyy{yyyyyyyyy{zyyyy{zyyyy{zyyyyyyzyzy{yyzzy{yyyyzzyyyyy{yyyyyzyyy{zyyzy{zzyyy{zyyyyyy{yzy{yy{{z{zyyy{zyyyyy{y{yyyyyyy{zz{zy{zzyy{{zzyyyyzz{zz{yzyz{{zzyzzzzyzzz{{{zzzzzzz{zzyzz{zzyzy{zzyzyzzzy{z{{z{zz{zz{z{{y{z{z{{{y{z{z{z{{z{zz{{z{z{{{z{z{zyzyzyzyyzzyyzyyyzzyyyzzzy{yzzz{yyyyyyzyz{zyyyz{yyyyyy{yzyzyy{{yyzyyy{zyyyzz{y{yzzz{yzyyz{zyz{zyy{z{zyyyyzzyzyzyzyzyyzzyzzzyyzzzz{{yzzz{yzyzzyzyz{zyzyz{zyzyzyzyzy{yyyzy{zyyyz{yyyzz{z{yzz{{zzy{yyzy{{yyyy{{yyyyy{{{{z{{{z{{{{{{{{{{{{{{{{{{{{{{{{{{{zz{{{{{yz{{{{{{yzyzyzyzyy{zyzzyyy{{yyyzz{z{yzzz{yzyz{y{yz{zyy{z{yyyyyy{yyyyyy{{yyyyyy{zyyyzy{y{yzyzzxzyzzz{zyyzyy{yzzyyxyzzyyyyyzyzyyyzyzzzyyzzzz{{yzzzzyzyzzzyzyzzxzyyzzyzxzyzyzy{yyyzy{yyyyz{yyyzy{yyyzy{zzzy{zyyzy{yyyy{zyyyyyzzyzy{yz{zy{yzyz{zyyzzz{{{yzz{{yzy{{z{zy{{yz{{{zyzyzz{zzzzzzz{zzzzzzz{zzzzzzz{zzzz{zzzz{zzzzz{zzzz{zzzyzyyzzyyyyyzyzyyzzyzzzyyzzzz{{yzzzzyzyzzzyzyzzzyzyzzyzxzzzyyyyyzyzyyyzyzzzyyzyzz{{yyzyzyyyyzzyzyyzzxzyzzyzyzyzyzy{yyyzy{yyyyz{yyyyy{yyyyy{yzyy{yyyzy{yyyyy{yyyyyyyyzyzyyyzyyyyyyzzxyyzzzy{yzzz{yzyz{yyyyz{yyyyz{yyyyzzyzy{yz{zy{zzyz{zyyzzz{{{yzz{zyzy{zz{zy{zyyz{{zzzyzy{zzzzzyz{zzyyzyz{yzyzzzz{yzzz{zzzz{yzzzz{zzyzz{zzzyyyyyyyzy{yyyyy{yyyyzzyyyzz{y{yzz{{yzy{{yyyy{{yyyy{{yyyy{||{|zyz{||{{zy{{|yz{{y|}y{{{|z|z{{|{|z{{|{|zyz|{|z{zz{zzzzz{|{}z{{z{|{|zz{}{|}z{}{|{|zz{|{}|{{z{}|{|z{||{z{{{zzzz{|{|z{{z{|{|~z{z{|}z{z{z{~~z{z{~|{{z{~|{|z{~|{z{{}|{zz{|}}{{{z{|}||z{}{|}{{}{|{|zz{|{}|}{z{}|{|z{||{z{{}~|||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{||}~|{|{{|{}|z{z{z{|z{{z{|}||z{z{|}y{z{z{|zz{z{|y}{z{|x{|z{|z{z{{}||{|zz{||{{z{|}||z{{{|}y{{{|{|z{{|{|z}{|{|z{||{|z{z{{}|{{|z{{|{}{z{|}||z{{{|}{{{{|}||{{|}|y}{|}|z{||}|z{z{{}zz{zz{|}z{{z{|}||z{}{|}z{}{|{|zz{|{}z}{z{}z{|z{|z{z{{}~z{zz{|}z{{z{|}|~z{z{|}z{z{z{~~z{z{~z}{z{~z{|z{~z{z{}}~|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}|zzzzzzyzzzzz{zyzzzzzzzzz}zzzzz{|zzzz{zzyzz{zzzzz{zzzzz{{|z{zz{z{|z{{{{{|zz{z{|}z{z{z{|zz{z{{z{{z{|zzzz{|z{z{{{||{|z{z{||{{z{{|zz{{z|}z{{{|{|z{{|{|z{{|{|zzz|{|z{zz{{|{{|z{z{|{}{z{{|{z{{{z}{{{{|}||{{|}{z{{|}{z{z|}zz{z{{{|zzzz{|{}z{{z{|||z{}{|}|{}{|{|zz{|{}|{{z{}|{|z{||{z{~}~{{zz~|}~{{~z~|}~z~}~|}{~}~|~~~z~|~~z}{z~~z~|z{~z~z~yyzz{yyzzzy{|}z|}z}{}z{z{zzzzz{{{yzzzz{|{zzzzz}{zyzzzzzzzz{z{zzz{zzzzzzzzzzz{z{zz{zz{{{zz{zz{|{zz{zz}{zy{z{zzz{z{z{zzz{{zzzz{{z{z{{|{zzz{|{|{{{z{|{|{z{zz|}{{zz{|zz{z{||{{z{||{|z{||{z{{}|{{zz{|}|{{{z{|}||z{{{|}{{{{{|{{{z{|z}{z{|z{|z{|z{z{{{||{|z{z{}|{{z{|{|{z{}{|}|{}{|||{{|{}z{{|{}zzz|{|z{zz{{~{~|{{z~~{}{{~|~~~{~}~|}{~}~|}~{~|}~z{~|}~{{z|}~{{{{{{|z{|z{z{|y}{z{{{|zz{{{|}y{{{|}z|yzz{y{{|}{z{z|}zz{z{{{|z{|z{|{|z}{z{|{|zz{{{|}y{{{|}||{z{||{{|}||{||}||{z{{}|z{|z{|}|z}{z{|}||z{{{|}z{{{|}||{{{|z}{|}|z{||}|z{z{{{|z{|z{z{}z}{z{|{|zz{}{|}z{}{|}||{{|}z{{|}}z{z|}zz{z{{{~{{|z{z{~{}{z{{{~~z{{{|}{{{{|}|~{{|}z{{|}~z{z|}~z{z{}}~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}|{{||{|z{|{||{{z{|{|zz{{{|}z{{{|{|z{{|{||{z{||{||{||{z{{}||{|z{|}||{{z{|}||z{{{|}z{{{|{|z{{|{|z}{{|z{||{|z{z{{{||{|z{z{}|{{z{|{|zz{}{|}z{}{|{|z{{|{}z{{|}zzz|{|z{zz{{~|{|z{z{~|{{z{{{~~z{{{|}{{{{|{|~{{|{|z{{|{zzz|{~z{zz{{||{|z{z{}|}{z{|{|{z{}{|}{{}{|}||{{|}}z{{|}}{z|}|z{z{{}~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||}~|{|{|{{}|z{zz{|}|z{{z{|}||z{z{|}z{z{z{|zz{z{|z}{z{|z{|{|z{z{{{|z{zz{z{}z{{z{|{|zz{}{|}z{}{|{|zz{|{}z{{z{}zzzzzzzz{{{~{{zz{z{~{{{z{{{~~z{z{|}{{z{z{|~z{z{|z{{z{|zzzz{zzz{{{|z{|z{z{|z}{z{{{|zz{{{|}z{{{|}||{{|}|z{{|}|z{z|}|{z{{{||{|z{z{}|{{z{|{|{z{}{|}{{}{|{|z{{|{}z{{|{}zzz|{|zz{{}~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{||}~|{{z{zz{z|{|{|{|{}||{{{}|||||||||}|{}||}|{||{||{|{|}{{|{|{||{{|{{{}|z{{|}|{{{{}|{{||}|{{{z}|{{{{{|{{{{{}{|{z{{|{{|{z{{{z{zz{z{{zz{z{{z{z~{{z{z{{}z{z{z~~{z{z{{{~{z{zzz{~{z{zz{||zz{}{|{z{}{|{|z|{|{}z{{|{}z{{|{|z{z||}zzz{|z|zzzz||{|{||{||z{}{||z|||||z|||{}z|||||z}||||{{|}||{{{||}||{||||~}|||~}|{}|~}|||~~}|||||}|||||~~}||||}|~}||||{|~}||||{|}|{|}}|{{{}}|||||}||}|{}||}|{||{||{|}|}{{|{|{||{{|{{z~{|z{z{|{{z|{|{{~|{|{{{{}|{{{z~~{{{z{{|~{z{z|{|~{z{z{{|||zz{}|{{{}{|{|{|{|{}{{}|{}{{{|{|{{{||}{z{{|{||{z{||{|{|||{||{}{||||||||||||{}|||||||}||||{||}||{|{||}||{{||{||{||||{||||{|z|||{|{z}|{|{|{|{|{|{{||{|{{|{||{|{|}}|~}||}|~}|}}~}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}||}|~}|}{{{~}|z{{~}|{{{}|{{~|}|{{{{}|{{{{~~{{{{{}{~{z{{|{{~{z{{{{}}|{{{}}|{{{}|{|||}|{}{{}|{}{{{|{|{{{}|}{{{{|{||{{{||{|}|||{|}|{}{||||||}||||{}|||||||}||||}{|}||{|{||}||{{||}||{||}|{{|||||||}|{|{z}|{|{|{|{|{|{}{|{|{{|{||{|{{{{{}|z{{{}|{{z{{{z|{}|{{{{}|{{{{{|{{{{{}z|{z{{|{z|{z{||{~}|{|{~}|~{{~}|~|~}|~}~{}|~}~{~~~|~{|}|~~{|{|~|~{{|z{{|||{z{}||{{{}||{||||{}{|}|{}{{{|{|{{{||}{{{{|{||{{{||{|{|||{|||{}{|||||||||||{}z||||||}||||{{|}||{{{||}||{{||{||{||||{{||||{|z||||{{}|z|{|{|{|{|{{{|{|{{|z||{|{zz{{zzzz{{{zz{z{{{zzz{{{zz{}zz{zz{|{zz{zz{{{zz{zz{{{zzzzz{zzzzz{{zz{z{{zzzz{zzzz{}zzzzz{|{zzzzz{{{zzzzz{{{zz}{}z}|{{z{zzzzzz{zzzz~~|~|||~|~~||}}~~|~|~~~|~}~|}|~}~|~}|~|~||~}|~||||~}|~|||}|||||}||{{|}|||||}|||}||}||}||}|||||||}{||||{||{||||{|}|{|{|}|{{{|}||{||}||{|{}{|{|{||{|{|}{|{{|{|{{|{{|||{|||{|{|||{{{||||{|||||{|{}||{|{||{{{|||}{{|{|{|}{{|||{||{{|{||{{{{||{|{|||{|{|{}{|{|{|{z{z||{|{{|{{{{|{{|||{||{{|{||{{{{||{|{|||{|{|{}{|{|{|{zzz{|{|{{|{{{{|{{||}}|~}||}|~}|}}|~}|}|~~}|}|}|}|}|}|~~}|}|}}~}|}||}|~}|}||{~{|||{~||{}{~||||~~|||||{}|||||~|}||||{{}||{{{|~}||||{|{|||{}||{}{}||||{||||}|z}||}||||}||||{|}||{|{||}||||z|}|||z|}|{}{|}|||||}||||{}|||||||}||||}{|{|{|{||}||||z|{|||z|||{}{|||||{||||||z}|||||||}||||{||{z{|{||}||||z|{|||z|||{}{|||||{||||||z}||||||{}||||{z{zzz{{||}|||{|||~}||||~}||}|~}|||~~}|||||}|||||~~}||||}|~}|||||~}||||||{||||}||{}|}|||||||||}|{}||}||||}||||{|}}||{|{|}|||||~{||||~||{{|~||||~~|||||{}|||||~|{||||{{|{||{|{{{||{{||{||{|}||{{|}||{|z|||{}{{}|{}{|{|{|{|{{|}{|{{|z|{|{{{||}||{||}|{{||}|{|||}|{|{{}|{|{|{|{|{|{}{|{|{{|{{|{{{{||{||{||||{{||||{|z|||{|{{}|{|{|{|{|{|{{||{|{{|{||{zyyy{{yxyy{{yzzx{{zzy{{zzy{y{zzyyyzzyyyy{{zyyy{yz{zyy{{{{zz{{{|{z{{{|{{{z|{{{{|{{{{{{{{{{{{{{{{{{{zz{{{{{{z{{{{{zy{{zz{{{{zz{{{zzz{{{{zzzzz{{zz{{{z{{z{z{{z{{zzy{zyzyz{zzzy{{zzzy{zzzz{yzzzzyzzzzyz{z{zyzyzzz{zyzyyzy{zyyy{{yzzy{{zzz{{zzyzy{zzyzz{zyyy{{zzzyy{yzzzzyzzzz{yzzz|zzzzz{zzzz{zzzz{{zzzzz{{zzzzz{{zyzzzzz{zyzzzzz{zzzz{zzzy{{zzzz{zzzz{{zzzzzzzzzzz{z{zzzzzzz{zzzzy{{{{{zz{{|{z{{{|{{{z|{{{{|{{{{{{{{{{{{{{{{{{{zz{{{{{{zz{{{{{z{{zz{{{{zz{{{zzz{{{{zzzzz{{zz{{{z{{z{z{{z{{yyzy{{zyyy{yzzy{{zzz{{zzyzy{zzyzz{zyyy{{zzzyy{yzzzzyzzzz{zyzzz|zzzz{zzzz{zzzz{{zzzzz{{zzzzz{{zyzzzzz{zyz{z{{{z{{{{{{{{{{{z{{{{z{z|{{z{z{zz{{{z{{{{{{{zz{{{{{{zz{{z{{z{|zz{{|zzzy|zzzz{y{{zzzz{{{zz{{{z{{zzz{{z{{zz{{{{{zz{{|{{{{|{{{{|{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{{zzzz{{zzzz|{zzz{{zzz{{zzz{y{zzzzz{zzzz{{{zzzz{zz{zzzzzzz{zyzzz|{zzzz{zzz{zzzz{{zzzzz{{zzzzz{{zyzzzzz{zyz{z{{{z{{{{{{z{{{{{{{{{z{z|{{z{z{zz{{{z{{{{{{{zz{{{{{zz{z{zzz{z{zzz{{{{zy{{zzz{yzzzz{zzzz{z{z{zzzzzzz{zzz{z{{{{{{{{|{zz{{|{z{{{z{z{{{{{z{z{{{{z{|{z{{{{z{{z{{z{z{{{yzz{|{zzz{|{{zz{{z{{{{zz{z{{zzz{{{{zzzz{zz{zzz{z{{{{{{{{{{z{{{{{z{{{{{z|{{z{z{zz{{{z{{{{{{{{z{{{{{zz{z{{zz{z{{zz{{{{zzy{{zzzy{zyz{zzzz{z{{{zzzz{zz{zzzyyyyz{yyyy{{yzzy{{zzyzzyzyy{yzyyyzzyyyz{zzzyy{yzyzzy{{{{zz{zzz{yyzy{{|{|{{{|{|{{{|}||{|{||{|{|{{{|{|{|{|{||{{{{|{{|{{{{{{{{{{{{{{|{{{{{|{{z{|{{{{{{{{{{{{{{{{{{|{{{z{{{|{{{{zz{{{{{z{|{z{{{{{z{{{{z{z{{{{{zzzz{zz{{{{{{z{z{{{{{{zz{{z{{z{|{z{{{{{zz{{{zzzz{{{zzzzzzzz{{{{{{zzz{{{{{{zz{{z{{z{|{zz{{{{zz{{{zzzz{{{zzzzzzyy{{{z{{zzz{{z{{zz{z{{zz{z|{z{{{|{z{z|{z{z|y|{{z{{{{z{z{y{{z{{zz{{{z{{{{|{{{{{||{{{}||{{|||{{|{|{{{|{||{|{|{{{{|{{{{|{{{{{z{{{z{{{{|{z{{{|{z{{|{z{z|{{{{z{{{{{{z{{{{{{zz{{{{{zz{z{zzz{z{{z{{{{{z{z{{z{z|{{{{z{{{{z{z{z{zz{zzz{{{zzz{z{{zz{z{{z{{{{{z{y{{z{z|y{{{z{{{{z{z{{{zy{{zz{{{zzz{z{zzz{z{{z{{{{{z{y{{z{z|y{{{z{{{{z{z{zzzyyzzz{{{zzz{z{zzz{z|{zz{z{{zzz{{z{z{{{z{z{{{zz{z{z{zzzzzz{zzz{{{{{{{{{{{{|{z{{{|{{{z|{{{{|{{{{{{{{{{{{{{{{{{{{z{{{{{z{{{{{{{{{{z{{{{{z{{{{z{z|{{{{z{z{{{{z{{{{{{{{z{{{{{z{{{z{{{{|zzz{{|{zz{|{z{zz{{{{z{zz{{{z{{{z{{zzz{{{{zz{z{zzz{z{zzz{{{{zzz{{z{z{{zz{z{zzzz{z{z{zzzzzzz{zzzz{z{{zz{z{{zz{z{{zzy{{z{z{y{z{z{yzzz{zz{{zzzz{yz{zyyyyzzzxyyzzyzxyzzzzyzyzyyzyyzyyzzyyyyzzzzyyzyzyzzyyxyyyzzzzzzy{zzzzzzzzzzzzzzzzzzzyz{zzyzyzzzzyzzzzzzzyzzyyzyzyzyzzyzyzzyzyzzyzzzzyyzyyyyzyzz{zyzyzzzzzyzxyyyzzyyyzzyzyyzzzzyzyzyyzyyyyyzzyxyyzzzzyyzyzyzzxxyxyxyxxyyyzzxxzzyyzzzyyyyxyyyxyzzxxyzzzyxxzzyyyyxzzyzyzzyzyzzyzyzzyzxzzyzzyxzyzyyzzzyzz{zyzyzzzzzyzxyyyzzzyyzzyzxyzyzzyzyzyyzyyzyyzzyyyyzzzzyyzyzyzzyyyyyzzzzzzz{zzzzzzzzzzzzzzzzzzzyz{zzyzyzzzzyzzzzzzzyzzyzyzyzyzzzyzyzzyzyzzyzzzzyyzyyyyzyzz{zyzyzzzzzyzyyxyyzyyxyxzzyxzzyyzzzyyyyyyyyxyzzyxyzzzyyxzzyyyyyxyyyyzyxyyyzyxyzyyzyzyyyyzyyyyyyzyyyyzzzyxyzzzyzyxzzyzyzyzyzyzzzyzzyzyzzyzzyyzyzyyzzzyzz{zyzyzzzzzyzyyyzzzzzzzy{zzzzzzzzzzzzzzzzzzyz{zzyzyzzzzyzzzzzzzyyyyyzzzyyyzzzzyyzzzzzzzyzyyzyyyzzzyyyzzzzyyzzzzzzyyyyyyzyyyyyzzyyyzyzyzyyyyzyyyyyyzyyyyzzzyyyzzzyzyyzzzzzzzzzz{zzzz{zzzyzzyzzzzzyzz{zyzyzz{zzzyzzzzzzzyyzzzzzzzy{zyzz{zzyyzzzzzyyyyyz{xzyyyzzzzyyzzzzzzyzzyzyzyzyzyzzzzyzzyzzzyzzzzzyzyyzzzyzz{zyzyzzzzzyzxyzyzzzyyyzzzzyyzzzzyzzyyzzyzyzzzzyyyzzzzyyzzzyzzyzzzzzzzzzz{zzzz{zzyzyzzzzzzzyzz{zyzyzz{zzzyzzzzzzzyyyyzzzyyyzzyzyyzzzzyzyzyyyyzxyzzyyyyzzzzyyzyzyzzyyzzzyyzyyyyzzyzz{z{yzz{zzzyz{zzyzzzzzzz{zzyyy{yz{{zz{y{zzzzzz{{z{z{z{z{{{{z|{{{zzzz{z{{zz{z{z{z{z{{|zz{y{{z{zz{zzzzz{zzzzz{z{zz{{{{z{z{zzzzz{zzzzzzz{{|zzz{z{z|zzzzyzzzzzyzzzzzzy{{zzyz{zzzzzzzzyzzyzz{{zzzyzzzzzzzzzyzzzzzyzzzzzzy{{zzyzzzzzzzzzzyzzyyy{{zzzyzzzzzzzyyzzzzzzzy{zzzz{z{yzzzzzzzzy{yyz{zzzyyzyzzyzzzzzzy|z{{{{zzz{{{{z{{{{{zz{{{{{{{zz{{{{zzz{{{{zz{{z{{zzzzzzzzzzzzz{zzzz{zzzzzzzzzzzzzzzz{zzzyzz{zzyzzzzzzzyyzzzzzzzy{zyzz{zzzzyzzzzzzyyzyz{zzyyyzzzzyzzzzzzyyyzzzzzzzy{zyzz{zzyzyzzzzzzyyyyz{zzyyyzzzyyzzzzzzyyyyyyzyyyyyzzzyyzzyzzzzyyyyyzyyyyyzyyyzzyyyyzyyzyyyyyyzzyyyyy{zyyyzzzzyzzyyyzzzyyyzzyyyyzzzyyyzzyzyyz{zzzzzzzzzz{{zzz{{zz{zzzzzzzzzzzz{zzzzz{zzzzzzzz{zzzzzzzzzzzz{zzzz{zzyzyzzzzzzzzyzz{zzzyzz{zzzyzzzzzzzzyzyzyzyzyzzzzyzzyzzzzyzzyzzyzyyzyzyzz{zyzyzzzzzzyyyyzzzyyyzzyzyyzyzzyzyzyyzyyzyyzzyyyyzzzzyyzyzyzzxyyyyxyyyyyyxyyzzyyxyzxyyxxzxyyyyyyxyzyyyyyyyyyyxxxyxxxxyxyyxxxyyyxxyyxxyyxyxxxxyxxxxyyxxxyyxyxxxxxxyyyyxyyyyyyxyyyyyyyyyyyyyyyyyyyyyyyyzyxxyyzyyyxyxyyyyyyyyyyyyyzzyyxyzyyyyyyyyyyyxyxyzyyyyyyyyyyyyxyyyxyyzyyyxyyyyyxyyyyyyxyxxxyyxxyyzyzyxyyyyyyyxyyyyyyyyyyxyyzzyyxyzxyyxxzxyyyyyyxyzyyyyyyyyyyyyxyyyyyxzyyyxyyyyyxyyyyxyyyyxxyyxxyyzyzyxyyyyyyxxxyyyyyxyyyyyxyyyyyyyyyyyyyyyyyyyyyyyyzyxxyyzyyyxyxyyyyyyyyyyyyyzzyyxyzyyyyyyyyyyyxyxyzyyyyyzyyyyxxxxyxxxxxxyxxxyyyyyyyxxyyyyxxxxyyxxxyyyxxyyyyyxxxyxyyxyxyyyxyyyyyxxyyxyyyxyxyyxyxyxyyyxxyyzyyyxyxyyyyyyyyyyyyyzzyyxyzxyyyxzxyyyyyyxyzyyyyyyyyyyxxyyyyyyyxyyyyyyyyyyyyyyyzyyyyyyyyyyyyzzyxyyzyyyyyyxyyyyxyyzyyyxyyyyyyyyyyyyyxxyyyyxyyzzzyxyyyyyyyxxxyxyxxyxyyxxxyyyxyyxxyyyyxxxxyxxxyyyyyxyyyyyyyxxxxxyxxxxyyyxxyyxxyyxyyxxyxxxyyxxxxzyxyxyyyyyyxxyxyyxyxyyyyyyyyyyxyyyyyxxyxyyxyxyxyyyxxyyzyyyyyxyyyyyyyyyyyyyyzzyyyzyyyyyyyyyyyyyxyz{yyyyzyyyyyyxyyyyxyxzyyyxyyyyyxyyyyyyyxxxyyxxyyzyzyxyyyyyyyxyyyyyyyyyyyyyyzzyyxyzyyyyzxyyyyxyxyzyyyyyzyyyyxxxyyzyyyyyyyyyyyyyzzyyyy|zyyxyzyyyxyzyyyyxyyy{yzyyzyyyyyyyyyyyyyyyzzyyyyzzyyxyzyyyyyzyyyyxyyyzyzyyzyyyyyyyzz{zzzy{zzzzzyz{{yyz{zz{yz{yz{zzzyz{{zzzz{z{zyzzyzyzzyzyzz{{yzzzz{zzzzzzzzzzyyzzzzz{z{zyzzzz{zyyyyyyyyyyzzyyyyzzzyxzzyyzyyzyyyyyyxyzzzyyzzyzyyyxyxyyyyxyyyyyyyyyyyxyyyyyyxyyyyxyyyxyyxyyyzyyyyyxyxyyyyxyyyyxyyyyyyyyzyyyyxyyyyxyyyxyyyyyyzyyyy{yyzyzzyzyzzzyyyzzz{yyzzyy{zyzyzzyyyzyyz{yzzzy{yyyyyyyyyyyyzyyyyyzzzyyyzyyyyyzyyyyyyyyyzyzyyzyzyyyyyyyyyyyyzyyyyyyyyyxyyyyyyyyyyyyyyyyyzyzyyzyyyyxxxxxxxxxxxyyxxxyyyxyyyxyyxxyxxxyxyxxxzyxxxyxyyxyxxyxyyxxxyzyyxxzyyyxyyyyyyyyyxxyyxxxyzyyyxzyyyyyyyyyyyyyyyyzzzyyyzyyyyzyyzyyzyyyyzzyyyy{yzyyzzzzyyxyyyyyyyyyyyyyyzzyyxyzyyyyyzyyyyyyyxyzzyyyyzyyyyxyyyyyyyyyyyyyyzzyyyyzxyyxyzxyyyyxyxyzyyxyyyyyyxxxxxxxxxxyyxxxxyxyyxyyxxxxyxxxxyyxxxyyyxxxyyxxxyxxxxxxxxxxxxxxxyxxyyyxxxxxyxxxxyyxxxxxyxxxyyxxxxxxyyyxyxxyyyyyyxxyyyyyyzyyyyxyyyxxyyxxxxyyxxyyzyyxyxyxyxxyxyxyxxyyyyyyyyyyyyxyxxxyyxxyyyyyxxyyyyyxxxxxxxyxxxyxxxxxyxxyxyyxxxxxxxxxyyxxxyyyxxxyyxxxxxxxxyxxxxyyxxxyyyyxyyyyxyxyyxxxyyxxxxyyxxyyzyyxyxyxyyxyxyyyxxyyyyyxxyyyyyxyyxxyyyxyyyyyxxyyyyyxyxxxxxxxxxyxxxxxyxxyyyxxxxxyxxxxyyxxxyyxxxxyyxxxxxxyxyxyxxxyyyyxxyyyyyyzyyyyxyyyyxyyxxxyyyxxyzzyyxyxyxyyxyyxyyxxyyyyyyyyyyyyxyxxxyyyxyyyyyxxyyyyyxyxxxxxxyyxxxyxxxyxxxyyxxxxxyxxxxxyyxxxyxxyxyxxxxyxxxxyxxyxxyyxxyyyyxyyyyxyxyyxxxyyxxxxyyxxyyzyyxyxyyyyxxyxyyyxyyyyyxyyyyyyxyyxxyyyyyyyyyxyyyyyyxxyxyyyyyyyxyyyyxxyyyyyzyyyyxyyyyyyyxxyyyyxxyyzyyxyxxxxxxxyxxyyxxxxxyyyyxxxxyyxxxxyyxxxyyyxxxyxxyxxxxxxxxyxxxxyxxxyyxxxxyxxxxxxxxxxyxxxxxyxxxyyxxxxxxxxxxyxxxxyyxxyyxxyyyxxxxxxxxxxyyxxxyyxyxyyxxxyxyxxyxyyxxyyxxxyyyyyyyyxyyyyxxxyyxxxxyyyxyyzyyyyxyxyyxxyxyyyxxyyyyyyyyyyyyyyxxyyyxyyyyzxxyyyyyxxxxyxxxyxxxyyxxxyyyyyyzxyxxyxxyxyyyxxyyyxyxzyyxxxxxxxxzyyyyyyyyxyyyyyyxyyyzyyxyyyyyyyyyyyxyyyyyyyyyyyyyyxyyyyyyxyyyyyyxyyyzyyxyyyyyyyyyyxxyyyyyyyyyyyyyyxyyyyyyxyyyyyyyyyyzyyxyyyyyyyyyyxyyyyyyyzyyyyzyyxzyzzzzyyzy{zzyyzzzzzyzzzzyzyyzyyzzyzzzz{yyzzzyzyyyyzyyyyyyyzyyyyzzyyyyzyyyyyyyyyyyyxyyzyyyyzyyyyxxxxxyxyxxxyyxxxyyyyxyyyyxyxxyxxxxyyxxyxxyyyzyyxxxxxxyxyxxxyyxxxyyyyxyyyyxyxxyyxxxyyxxxyxyyyzyyxyxyxyyxyyxyyyxxxyyyyxyyyyxyyyyxxyyyyyyxyyyyyzyyxyyyyyzyyyyyzy{yyyyyy{yyzzzz{yyzyyzyyyyzyz{yyzzy{xyxyxyyxyyxyyyxxyyyyyyyyyyyyxyyxxyyyyyyyyyxyyzyyxxxxxxxxyxxxxxyxxyyxxxyyyxxxxxxxxxxyxxxxyyxxyyxxxxxxxxxxyxxxxyyxxxyxyxyyyxxyyyyxxxxyxxxxyyxxxyxyxyxxyxxxyyxxyxyxxxzxxyyyyxxxxyxyyxyyyxxyyyyyxyxxxyyxyyyyyyyxyyyyyxxyzyyyyzyyzyyyyyyyzyyxxyzyyyyzzyyyxyxyyxxyxyyyyxyyyyyyyyyyyyyyyxxyyxxyyyyyxxyyzyyxxxyxyyxxxxyyxyxxyxyxyxzxxyxyxxxxxyzyxxyyyyyyyyyxyyzyxyxxyzyyxyyyyyxyyyyyyyyxyyyxyyyxxyxyxxzyyyxzyxyyzyyyyyyyyyyyyyxyyyyyxxyxyyxyyyyyxyyyyxyyyyyyxyyyxxyyyyyyxyyyyyxyyyyyyyyyyyyzyyyyyyyyyxyzyyxyyzyyyyyxyyyxxyyyyxyxyyyyxxxyyyxxxyyyyyyxyyyxyyyxxyxyxxyyyyxyyyyyyyyxyyyyyyxyyyxyyyyyxxyyyyxyyyyyxyyyyxyyxzyxxxzyxxyyzyxyyyxzyxyxyyxzyxyxyxyyyyyyyyyxyyyzyyyxzyxyxzyxyxzyyxxyxyyxxxyyxyxxyxyxyxzxxyxyxxxxxyzyyxyyyyyyyyyxyyyyyyyyyyyyyyyyyyyyyyyyyyyxyyyyyyyyyyxyyyyyyyyyyxyyyzyyyyxyyzyxyyyyzyyyyyyyzyyyyyyyyyxyzyyxyyzyyyyyxyyzxyyyxyyyxyyyxyyyyyyxyyyxyyyxyyyyyxyyyyxyyxzyyxxzyyxyyyyxxyxyyyyyxyyyyxyyxyyyyxxyyyyxxyxyzyyxyyyxyyyyxyyyyyyxyxyyyyyxyyxxyyyyyyyyyxyyyxyyyxyyxyxyyyyyyyyxyyyzyyyyyxyzyyyxyyzyxyyyyyyyyyyyyyyyyyzyyyxzyyyxzyxyyzzyyxyxyyzyyxyyyyxyyyyyyzyxyyyxyyyxyzyyxyzyyyyzyyyyzyyyyyxyyyyyyyyyyyyyyyyyzyyyyyyyyyyyzyyyyyzyyyyyyyyyyyyyxyxyyyyyxyyyyyxyyyyyyyxyyyyyyyxyzyyxyyyyyyyyyyyyzyxxxxxyzyxxxyxyzyyyxxxyxxxxyxxxxxxyxyxxzyyxxzyxxyzzyxxyxyyzyyxyyxyzyyyxxxyyxyxyxxyyxyyxyxyyxyxyyyxxyzzzxzyyxyzzxyxyzyzyyyxzzyyzyyyzyxyyyzzyyxzzyzxzyxyyzzyyyyyyyzyyyyyyyzyyyyyyzyyyyyyyyyyyzyyyyyyzyyyyyyyzzyxxyxyyzyxxyyxyzyyyxxyxyxyxyyxyyxyyxyxyyyyxyyyxxyzxyyyyyyyyyyzyxyyxyxzyyyyzxxzyyyyxxxyyyyyyyxxyxyxyyyzyyyyzyyyxzyyyyyxyyyyyyyzyyyyyyyyyxyyxyyyyyyyxyxyyyzyyyyzyyyyyzyyyyyyxzyyyyzyxzyyzxyxyzzzyyyzyxyzzyyzyzzyyyzzxyxzyyzyyyyyyyzyyzyyyyzyyyyyzyyyyyyyzyyyyyyyzyyyyzyyyyyyyyyyyyyyyyyzzyyyyyyyyyyzyyyyyyyyyyzzyyzzyyyyzyyyyyyyyxyyyyyyyyyyyyyyxyyyyyyyyyyyxyyyyyzyyxyyyyyzyyyyyyyxyyyyyyyxyyyyyyyyyyyxyyyyyyyyyyyyyzyyyzyxyyzyyyyyzyxxyyyyzyyyyyyyzyyyyyyyzyyyyyxxyyyyzyyyyyxyyzyyyyzyyyyyyyyyyyyyyyyyyyyyyyyzzyyyyyyyyyyzyyyyzyyyzyyyyyyyyyxyyyyyyyyzyyyyyyyzyyyzyyyyyyyzyyzzyyyzzyzyzyzyyyyyxyyyxxyyxyxyxxyyyyxxxyyyxyyyyyxyyxyxyyxzyxxzyxxxyyyxxyxyxyyyxyyxxyyyyxxxyzxxyxyxxxyxyyyyxyyxxyyxxxxyyyxyyyyyyyyyyyxyyyyyxxyyyyxyyyyyyyyyyxyyyyyyxyyxxyyyyyyyyyyyyyyyyyyyyyyyyyyzzyyyyyyyyyyzyyyyzyyyyzyyyyyyzyxyyyxyzyxyxyyyzyxyyyxyyyyyyyyyxyyyzyyyxzyyyxzyyyzyyxxyxyyyyxxyyyyyyyyyyyyzxxyyyyxxxxyzxyxyyyyxyyyyyyzxzyzyyzzyzyyyyzzyzyyzxzyxzyzy{{zyzzzyyzyzyyyzyzyyyyzyyyxyz{yyxyzyz{yyyyzzz{yyyzzzy{yyyzzxyyyzyyyyyyyzyz{zzyzy{zyyz{zy{zz{zyzz{zyyzzz{{{zyz{zyyz{zy{yz{zyyy{zzzzyyz{zzyzzyz{yzzyzzz{zzyzzzy{yzyz{yzyz{yzyyz{zzyzxyy{yyyyy{{yyxyzy{{xyyyzz{{yyyzz{y{yyyzyyyyyyy{yyyyyzy{yzyyyyyyzyy{zyzzz{zyzyzzxyyzy{y{yyy{yyyy{{yyyy{{yyyyyzyzyzyzzyzyzyzzzyzyzzzzyyzzzz{{zyzzzyyzyzyyyzyzyyyy{yyyyxy{yyxyzy{zyyzyzy{zzyyzy{yxyyxz{yyyyzy{yxyzyyy{{zyzyzy{{yz{zy{{z{zyzz{{yyzzz{{{zyz{zyyz{zy{yz{zyzy{zzzzyzyz{zzzzzz{zzzzzzz{zzzzzzz{zzzz{zzzz{yzzzz{zzyzyyyzyzyzyzzzyzzyzzzyzyzzzzyyzzzz{{zyzzzyyzyzyyyzyzyyyyzyyyyyyz{yyyyyyyyyzyzzz{yyyzzzy{yyyzzyyyzzyyyyzzyzyzzzyyyyyz{zyy{zyyz{zyzzz{yyyzz{y{yyy{yyyy{{yyyy{{yzyzzzyzyzyz{zyzyzyzzyzyzzz{yyzzzz{{zyzzzyyzyzyyyzyzyzyz{yyyyxy{{yyyyzy{yyzyzz{{zyyzz{y{yyyz{yyyyzy{yyyzyzy{{{{{{yz{{{{yz{{{{zz{{{{{{{{{{{{{{{{{{{{{z{{{{{z{{{z{yzyyyyyyz{yyy{zyz{x{yzzz{yyyzz{y{yyy{{yyy{zyyyy{zyzyz{yyyyxy{zyyxyyy{zyyyyyyyyyyyy{yyyyxzzyyxyyy{yxyyyyy{{yyyyyy{zyyyyyy{zyyzyyyzyyyyy{yyyyyzzyyyzzy{yyzzyyy{{zyyyyy{zzyy{yy{zz{zyyyyyyyyy{y{yyy{zyyy{{y{yy{{yyy{{zyzyzz{zzyzyzz{zzyzzzzzzyzzz{{{zyzzzzyzyzz{zzyzyyz{{z{z{zy{{z{z{{y{{z{zy{z{z{z{z{{{z{z{{y{z{zy{yz{zy{y{xyyy{yyz{yz{{{{yyyyyyyyyyyy{yyzyy{yxyyzzxyyyy{yxyxzyyyy{zyyyy{yyyyyyyyyyyyzzyyy{zyzzy{yxzyzzyyyyy{yxyxzzyyy{zyyyy{zyyyy{yyyyyy{{yyy{zy{{y{zyzz{zyyyzy{y{yyzyyyy{zy{yy{yyzy{yzzzyzyyzzzz{yyzzz{zzyzzzzyzyz{{{zyzzzyz{zyyzz{zzyyy{z{z{zy{yz{z{{y{{z{zy{z{{z{z{z{{{z{z{y{z{{y{yz{{y{y{yzyyyyyzzzyyyzyzzzyzyzyyzyyyyyzy{yyyz{yxyyyyyyz{yyyy{zyyyyy{{zyyyzy{{zyzyzz{yyyyzy{y{yyyz{yyyyy{yyz{yzy{yzyzyzyyyzyzyyyyzzyzyyzyzyyzyzz{{zyzz{yyzzyyyzz{yyyyyzyyyyyyzzyy{yyy{z{zyyyy{zyyyy{y{yyy{{yyy{yyyy{{yyyyz{zzzz{z{{zz{z{z{{{{{z{z{{z{z{{{{{z{{{{z{{{zyz{{{zyzy{zyyyyy{yzyyyyy{{zyzyyy{{zyyyy{y{yyyz{yyyz{y{yz{yyy{{yyyyyy{{yyyyzy{{yyzyzz{yyyyzy{y{yyyzzyyyzzy{yyyyzy{yzyzyzyyyzyzyyyyzzyzyyzyzyxzyzz{{zyzzzxyzzzyyyzzyyyyyyyyyyyyyyyy{yyy{y{zyyyy{zyyyy{yyyyy{zyyy{zxyyy{xyyy{zyzyzy{yzyz{yy{zz{zyyz{zyyzyz{{{zyz{{yyz{{y{yz{{yy{zzzzzyzz{zzzzzzz{zzzzzzz{zzzzzzz{zzzz{yzzz{zzyyz{zzzyyyzyzyzyyzzyzyyyzzzyzyyzzzyxzyzz{{zyzzzyyzzzyxyzzzyyy|z{z{{z{|z{|z{z{|z}{z{y{|zz{z{z}z{z{|}y|z{|}{y{{|}zz{zzzzz{{z{|zzzz{z{|z{{z{z{|~z{z{|}{{z{{{~~z{z{~{{{z{~{{z||{z{{|}|z{z{{|}|z{{{{|}||z{{{|}z{z{{{|zz{z{|z}{z{|z{|||zz{{|{}zzz{{|{}z{{}{|{|zz{}{|}{{z{|{|{z{z{}|{{z{||{||~|{{{|}~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{|z{z|||{z{z{||{|{{|{||{{{{|{|zz{{{|}z{z{|{|zz{|{||{{|{||{|||z{z{{{|z{|{{|{|z}{{{|{|zz{{{|}z{z{|}||z{|}||{{|}||{|||z{zz{|}zzz{{|{}z{{}{|{|zz{}{|}z{z{|{|zz{z{}|{{z{||{||~z{zz{|{zzz{{|{|z{{{{|{|~z{{{|}{{z{{{~~z{z{~|{{z{~|{|||z{z{{|}}{z{{|}}z{{}{|}||z{}{|}{{z{|{|{z{z{}|}{z{||{||~|{|{{|}~|||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{|{||zz{z{{|}{z{zyzz{y{{{{|}z|z{{{|}y{z{{{|zz{z{|y}{z{|z{||||{z{{|}||{|{z{||{{{{|}||z{{{|}y{z{|{|zz{|{|z}{|{|z{|||z{z{{|}|z{|{{{|z}{{{|}||z{{{|}z{z{|}||z{|}|y}{|}|z{||zz{z{{|}}z{z{{|}z{{}{|}||z{}{|}z{z{|{|zz{z{}z}{z{|z{||~z{z{{|}~z{z{{|}z{{{{|}|~z{{{|}{{z{{{~~z{z{~{}{z{~{{||~|}|}}|}~|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||zzzzzzzzz{zzzzzzz{z{zyzzzzzzzzz}{zzzz{|{zzz{{{yzz{z{zzz{{z{zzzz{{zzzz{z{z{zy{z{zzz{zz}{z{zz{|{{zz{{{zzz{z{zzz||{z{{z{||{|z{z{||{{zz{|zz{zz|}{{z{|{|{z{|{|{{{|{|{zzz|z{z{{z{|z{|{{z{|z}{{{{|{z{{{|}{{z{|}||z{|}|{{{|}|{{z||z{zz{|{}zzz{{|{}z{{}{|||z{}{|}|{z{|{|{z{z{}|{{z{||{||~{{{{~|}~{{z{~|}~z{~}~|}~{~}~|}{{{~|~~~{{z~~{}{z{~{~|yyyz{yyyzzy{|}z|}z}{}zzzzzzzz{zzzzzzz{zzyzzzz{|zzzzzz}zzyzzzzzzzzzz{zzzzzzzz|z{z{{z{|zzzz{z{{z{{z{z{|zz{z{|}z{{{{|zz{z{|z{{z{|z{z||z{zz{|{|zzz{{|{|z{{{{|{|zz{{z|}z{z{{|zz{z{||{{z{||{||zz{z{{|}{z{z{{|}{z{{{{|}||z{{{z}{{z{{|{z{z{|{}{z{|{{|z||{z{{z{}|{|z{|{}|{{}{|{|zz{}{|}|{z{|||z{|{}z{{|{|zzzz~z~z~{z~~z~|z~|~~z}~}~|~~~z~}~|}{~z~|}~z~|}~{{~|}~{{zz|z{z{{z{|y{|z{z{|y}{z{z{|zz{z{|}y{z{|}||{z{|z{{|}|z{z||z{z{{|{|z{|{{|{|z}{{{|{|zz{{{|}y{z{|}||zz{||{{|}||{|||z{z{{|}|z{|{{|}|y}{{{|}||z{{{|}{{z{|}||z{{|{}{|}|{{|z|z{z{{z{}z{|z{|{}z}{}{|{|zz{}{|}z{z{|}||z{|}z{{|}zz{zz~z{z{{z{~z{|z{z{~z}{z{z{~~z{z{|}z{z{|}|~z{|}z{{|}~z{z|~|}|}}|}~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}|||||{z{{|{||{|{{|{||{{{{|{|zz{{{|}z{z{|{|zz{|{||{z{||{||||{z{{|}||{|{{|}||{{{{|}||z{{{|}{{z{|{|{z{|{|{}{{|{{|z||{z{{z{}|{|z{|{}|{{}{|{|zz{}{|}z{z{|{|zz{|{}z{{|zzzzz~|{z{{z{~|{|z{z{~|{{z{z{~~z{z{|}z{z{|{|~z{|{|z{{|{zzzz||{z{{z{}|{|z{|{}|}{}{|{|zz{}{|}{{z{|}||z{|}}{{{|}|{z|~|{|{{|}~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||{{{{z{{{|{{{{{}{{{|{}{|{{{}{||{{|{||{{{}|{{{{z||{{{{{{|{{{{{{{|{{{{{|{|{{{|{|{{z|{|{{z|{|{{{z}|{{{{z||{{{{{||{{{{{{{z}{{{y{}|{{yz}||{z{}||{|z}||{{z}||{{{z||{{{{}z|{{{{zz{z{{z{z{{zz{zz{{{{zz{{{z~z{{{z{z{z{z{z~~{z{z{{z~{z{z{{{{{{{{{}z{{|{}z|{{{}z||{z|z||{{{{|{{{{{||{{{{{{{{{{{{{z{|{|~}{{|~}||{|~}||}|~}|||~~}|||{|}|||{|~~}|{|{}|~}|{|{{{{|{{{{}{|{|{}{|{{{}{||{{|{||{{{}|{{{{z||{{{{{||{{{{{{{{|}{{{|}|{{{|}||{z|}||{||}||{{z}||{{{z||{{{{}z|{{{{{{{{~{{z{z{z{{{|{{{{z|{{{{~|{{{{{z}|{{{{~~|{{{{{z~{{{{{{{{|{{{{{}{{|{}{|{{{}{||{z|{||{{{}|{{{{{||{{{{{{|{{{{{{{{|{{{{{|{||{|{{{}{|{{{{{|{{{{{{}|{{{{||}|{{{{z|}|{{{|||{|~}{|{|~}|||~}||}|~}|||~~}|||{|}|||{|~~}|{|{}|~}|{|{{{{|}{{{{}}|{|}}||{{}}||{||}||{{{}||{{{z||{{{{}||{{{{{{{{~{{{{{~{|{{z{|{{z|{|{{~|{|{{{z}|{{{{~~|{{{{{|~{{{{{{{{|{{{{{}{|{|{}|{{{}{||{z|{||{{{}|{{{{{||{{{{{||{{{{{{{{|{{{{{|{|||{|{{}{|{|{{{|{|{{{{}|{{{{||}|{{{{||}|{{{{{{|{{{{{|{|{zz{zz{z|{|{{z|{|{{{z}|{{{{z||{{{{{||{{{{|||}|~}}|}|~}||}|~}|}}~}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}|{{{{~}{{{{~}|{{{~}||{z}||{~|}||{{z}||{{{~~|{{{{}z~{{{{{{{{{}{{{{}}|{|{}}||{{}||{||}||{{{}||{{{{||{{{{}{|{{{{{{{{|}{{{{|}|||{|}||}{|{|{||}||{{{}||{{{||}|{{{}z|}|{{{{{{z}{{{{{}|{{{{}||{z{zz{||}||{{z}||{{{z||{{{{}z|{{{{{{{{z}{{{{{}|{{{{}||{z{zzz|z}||{{z}||{{{z||{{{{}z|{{{{{{{{~}{{{{~}|{|{~}|~{{~}|~{~}|~{{{}|~{{{~~~{{{{}{~{{{{{{{{|{{{{{}{|{|{}{|{{{}{||{||||{{|}|{{{{z||{{{{{||{{{{{{{{|{{{{{|{{||{|{{{}{|{{{{{|{{{{{}|{{{{||}|{{{{z|}|{{{{{{{z{{{{{zzz{{{z{{{z{z{{{z|z{{{{}z{{{{{||z{{{zzz{z{{zz{zzz{z{z{zzz{z{z{{{z{z{{zzzzzz{z}z{z{zz||z{z{zzz{z{zzz{zzz{z{z{zzz{z{z{{{z{z{{zzzzzzzz}z{z{zz||z{z{zzz{z{z}{}{}|z}|{z{z{zz{z{zz{{~{~{~{~{~~{|~|~~|~}{~~|~{~~~|~{~{}|~{~{~}|~{~{{~}|~{{{{{|{{{{{}{{||{}{|{{|}{||{{|{||{{|}|{{{{|||{{{{{{{|{{{{{{{}{{{{{}|{|{{}||{{{}||{||}||{{{}z|{{{{||{{{}z|{{{{{{{{|{{{{{|{|{|{|{|{{{|{|{{{|{|{{{{}|{{{{{||{{{{||{{{{{{{{|{{z{{|{z{|{|{{{{{{{{{{{|{z{{{{}|{z{{{||{{{{z|{{{{zzz{{{zzz{{{zz|{{{z{z{{{z{z{|{z{z{{}z{z{z{z{zyz{zzzzzz|||}|~}}|}|~}||}|~}|}}|~}|}|~~}|}|}|}|}|}|~~}|}|}}~}|}|{{{{~{{{{{~{{||{~{{{}{~{{{{~~{{{{{{}|{{{{~|}|{{{{z}|{{{{{{|{{{{{}{{||{}{|{}{}{||{z|{||{{{}|{{{{||}|{{{{{{|{{{{{{|}{{{{|}||{{|}||}z|}||{||}||{{z}||{{{||}|{{{}z|{{{{{{{|{{{{{|{||{{|{|{}z|{|{{z|{|{{{z}|{{{{||}|{{{{||{{{{{{{|{{{{{|{{|{z|{{{}y|{{{{z|{{{{{z}|{{{{||}|{{{{z|{{{yzyzzyyzyzzzyzyzzzzzyyzzzyyzzzyzyzzzyzyz{yyyzzyzzyyyzzz{{zzzz|{zzzz|{{{{zz{{{z{{{{zz|{z{zzz{|zzzz{z{{zzzzzz{zzz{y{z{{{zz{{{z{{{{{zzz{{z{|{{{z{zz{{zz{z{{z{zzyyzzzyyzyzzzyzyzzzzzyyzzzyzzzzyzzzzzyzyy{yyyzzyzzyyyyyzy{yyzyz{zyzyz{{zzyy{{zyz{{zyz|zzzyzyz{yyyz{z{zyyyzzyzzyzyzzz{zzzzz{z{zzz{zz{z{zzzzz{zzzz{|zyzz{{{{zyzzzzzz{zzzz{{zzzz{{zzzy{{zzz{{zzz|z{zzzzz{zyzz{{{zzyzzyzzzzz{{zzz|{zzzz|{{{{zz{{{z{{{{zz|{z{zzz{|zzzz{z{{zzzzz{z{zzz{{z{{{zz{{{z{{{{{zzz{{z{|{{{z{zz{{zz{z{{z{zzyyzyz{yyzy{zyzyz{{zzyy{{zyz{{zyz|zzzyzyz{yyyz{z{zyyyzzzzz{yzyzz{zzzzz{z{zzz{zz{z{zzzzz{zzzz{|zyzz{{{{zyzzz{z{zzz{z{zz{z{{z{zz{{z{zyzz{z{|{z{z{zy{yzz{zz{zyzzzz{z{zzz{z{zz{z{{z{zy{{z{zzzz{z{|{z{z{zz{zzz{zy{zzzzzzzzzz{{zzzz|{zzz|{{{{zz{{{z{{{{zz|{z{zzz{|zzzz{z{{zzzzz{z{{zz{z{{{{{z{{{z{{{{{zz{{{z{|{{{z{zz{{zz{{{{z{zzzzzzz{yzzzz{{zzzz{z{zzz{zz{z{zzzzz{zzzz{|zyzz{{{{zyzzz{z{zzz{z{zzz{z{{{zz{{z{zyzz{z{|{z{z{zy{yzz{zz{zyzzzzzz{zzzzz|zz{zz|zz{{{zzzzzzzzzz{z{zzzzz{{zzzzyz{{zzyzzzz{yyzzz{z{zzz{{z{z{{zzz{{zzz|z{zyzz{|{yyz{z{{{yyz{{{{{{z{{{|{{zz{|{{{{z{{{{|{{{{{|{{{{{{||z{{{{{|{z{{zzzzz{yzzzz{{zzzz{{z{zz{zz{{{zzz|z{zzzz{|zyzz{{{{zyzzz{z{{zz{z{{zz{z{{{{zz{{{zz{{{z{|{z{z{zy{yzz{{z{zyzzzzzz{{zzzz|{z{zz|{{z{{{zzzz{{zzz|z{zzzzz{{zzz{z{{{zzyyzyz{yyzyz{zyzyz{{zzyyzyzz{{zyz|zzzyzyy{yyyz{z{zyyy{{{{{{z{{{{{{{{{{{{{{{{{{{{{{{{{|{{{{{{{|{z{{{{{{{z{zz{z{zzz{z{{{z{z{{{{{z{{{{z{z{z{|{{{z{zz{zzz{z{{{zzzzzzz{zzzzz|z{{zz|z{z{{{z{zzzzzzz{z{zzzzz{{zzzz{{{{zzzzzzzzyzyzzz{zzzzz{zzzzz{zzzzzzzzz{zzzzz{zyzzz{{zzyzzzyzzzyzyzzz{zyzzz{zzzzz{zzzyyyyzz{zzyzz{zyzyz{{zzyz{{{{zz{zzz{zzzz{{{{{{{{{{|{{{{{|{{{{{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{zz{z{{zz{z{{z{{z{{z{z{{{z{zz{z{z{|{{{z{zz{zz{{z{z{zzzzzzz{yzzzz{{{zzz{{zz{z{{zzzz{zzz|z{yzzzz{zzz{{{z{yzyzzzzzyyzzzzz{zzzzzzz{zzzzzzzzzzzzz{zyzzz{yyzzzzz{yyyzzzzzyyzzzzz{zzzzzzz{zzzzzzzzzzzzz{zyzzz{yyyzzzz{yyzzzz{{zzzz|{{zzz|{{z{z{{{zz{{{zzz{y{zzzzz|zzzz{{{zzz{{{|{|{{{|{|{{{|{||{{{{||{|{|{{|{||{{{{|{{|{{{|{z{{{{zzzz{{zzzz|{z{zz|{zz{{{{zzz{{zzzz{z{zzzz{{{zzz{zz{zzzz{z{zzz{z|zzz{z|{z{{z{{z{zzzz{z{|{z{z{zz{zzz{zy{zzzzzzz{{zzzz|{{zzz|{{z{z{{{zzzz{zzz|z{zzzzz{zzzz{{{zzzzzzz{zzzzz|zzzzz|zzz{y{zzzzyzzzzz{zzzzzzz{zzzzzyzzyyyyyzzyxyyzzzyzxzzzzyzxzzyzzzzyyzyzzyyyzyyyyyyzzyyyyyyyyzzzzyyyzzzzzyyzzzzzzzzzzzzzzzyzzzzyyzzzyyyyzzzyyyyyyzzyyyyyzzyzyzzzzyzzzzyzzyzyyzyzzyyyzyyyyyyzzyyyxxyyzyyyxyzzzyyyzzzyyxyzyyzyyyyzyzzyyxzzyyxyzzyzyxyyyyzyyyyzzzyyyzzyzyzyzzyzzzzyyzyzzyyyzyyyyyxzzyyyyyyyyzyyyzzyzyyzzzyyyzyyyzyyyyyzyyzyyyzzyyyyyyzzyyyyyyzzyyyzzzzzyzzzzyzxzzyzzzzyyzyzzyyyzyyyyyyzzyyyyyzyyyzzzyyyzzzzyyzzzzzzzzzzzzzzzyzzzzyyzzzyyyyzzzyyyyyyyzzyyyyzzyzyzzzzyzzzzyzzyzyyzyzzyyyzyyyyyyzzyyyyyyyzzyyyyzzzyyzzzzyzxyzyzzzzyyzyzzyyyzzyyyyzzzzyyyyyyzzyyyyzxzzyzzyzzzyyzyyzyzyyzxzzyyyzzyyyyyzzyyyxxyyyzzyyxyzzzxyzzzyzyzzyyxzzxyzxzzxyxzzyzxyyzyyzxyzyyyzyzyyzzyzyzzyyzyzyyyzzyyyyzyzzyyyzzzyyyyyzzyyzzyzyzzzyyyzzzzzyyzzzzzzzzzzzzzzyzzzzyyzzzzyyyzzzzyyyyyyzzyyyyzzzzzyzzzyzzzzyzzzzyyzyzzyyyzyyyyyyzzyyyyyyyzzyyyyzzzzzyzyzzzyzzyyzyzyyzxzzyyyzzyyyyyzzyyyyyyyyzyyyyzzzzyyzzzyyzzyyzzyyyyzyzzyyyzyyyyyzzzyyyyyyyzzzyyyzzzzzyzzzzzyzzyzzzzyyzyzzyyyzzyzyyyzzyzyzyzzzzzzyzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzyyyyzzyyyyzzzzzyzzzzzzyzyzzzzyyzyzzyyyzzyyyyzzzzyyyyyyzzyyyyzzzyyyzzzzyzzzyzzzzyyzyzzyyyzyyyyyzzzyyyyyyyzzyyyyzzzyzyzzzzyzzzzzzzzyyzyzzyyyzyyyyyyzzyyyyyyyzzyyyyzzzyzyzzzzyzzzzyyyzyyzxzzyyyzyyyyyzzzyyyyzzzzzzyzzzzzzzyzzzzzzzzzzzzzzzzzzzzzzzzzzyzz{zzzyyzyzzzyyyzzzzzzyzzzzzzzzzzzzzzyzzzzyyzzzzyyyzzzzyyyzyzzzyyyzzzzyzyzzzzyzzzzzyzzzyzyzzyyyzzyyyyzzzyyyyyyyzzyyyyzzzzzyzzzzyzyzzyyzyyyzyzzyyyzzyyyyzzzzyyyzzzzyyyzyyyyyyzzyyyyzzyzzyzzzzyzyyzyzyzzyyzxzzyyyyyyyyy{zzyyyyzyzzzyzyzzzzzyzzzzzzzzzyzzzzyzzyzzyzyzzzyzz{zzzyyzyyyzyzyyzzzzzyzzzzzzzzzzzzzzzyzzzzzyzzzzzyzzzzyyyyyyzzyyyyzzzzzyzzzzzzyzzyzzyzyyzyzzyyyzzyyyyzzzyyxxyyyzyyyxyzzzzyxzzyzzyzzyyzyzyyzyzzyyxzzyyxzzzzyxyyyyzzyyyyzzzzzyzzzzzzzzzyyzzzyyzyxzyyyzyyyyyzzyyyzzzzzz{yzzzz{zzzzz{zzzz{zzzzzzzzzzzzzzzzzzzzzzzzzyzyyyyyzzyyyzzzzzyzzzzzzzzzyyzzzyyzyyzyyyzzyzyyzzyzyyyyyyzyyyyzzzzyyzzzyyzzzyyzyyyyyzyyzyyyzzyyyyyyzzyyyyyzzyyyyzzzyzyzzzzyzzzzyzzyzyyzyzzyyyzyyyyyyzzyyxyyyyzzxyxyyzzxyxzzzyyzzyyyyzxyyyyyyyxyyyyxyzzyzyyyxxxxzzyxxxxzzxxxzyxyyxyxxyxyxxxxxyyxxxxxxyxzyyxxyxxyyyyyyyzzyxyyyzzyxxzyyyyyyyyyyyyyyyyyyxyyyyyyxzyyyyyyyyyyzyyyyyyzyyyyyzzyyzzyyyyyyyyyyyyyyyyyyyyzzyzyyxxxxxzyxxxxyzyyxyzyyyyyyxxyyyxxxxyyxxxxyyyxxzyyyyyyyxyxyyyxyxyyyyxyyxyzyxyyxyyyyxxyyzyxyyyxxyxyyyyxyyxxxxyyyxxxyyyyxyyyxyyyyyyyxyyxxyyzyxxyyyyyxyyyxyyyxyyyyzzyxyyzzyyxzzzyyzzyyyyzxyyyyyyyxyyyyxyzzyzyyyyxyyyyzyyyyyzyxyyyyyyxyyyyyyyxyyyyyxyyyyxyxyyyyxyxyyyyxyyyzyyxyyzyyxxzyyyyyyyyyyyyyyyyyyxyyyyyyxzyyyyyxyyyyyzyyyyyzyyyyzzzyyzzyyyyyyyyyyyxyyyyyyyyzzyzyyyyxyxyyyyxyxyyyxyyyyzyyyyxyyyyxxyyzyxyyyxxyxyyyyxyyyxxxyzzyxxxyzyxyzyxyyyyyyyxyyxxyyzyxxyyyyyxzyyxyyyxzyyyzzyzxyyzzyxzzzzyzzyyyzzxyyyyzyyxyyyzyyzzyzzyyyyyzyzyzzyyyzyzzyyzzyyyzzyyzzyyzyyzyyxyyzyyyxzyyyyyyyyyyyzzyyyyyzzyyyzzzyzzyyyyyyyyyyzyyyyyyyyyzzyzyyxyxyyyzzyxyyyzzxyyyyyyyyyyyyyyxyyxyxxyyyyyxxzyyyyxyyxyxyyyyxyxyyyyxyyyyyyyyyyyyyxxyyyyxyyyyyyxyyyyyyyyxyxyyzyxyxyyzyxyyyyyyyzyyyyyxxyyzzxyyyyyyxyyzyyyyyyyyyyzyyyyyyzyyyyzyyzyyyzyyyyyyzyzyyyyzyyyxzzzyyyyyxyyyyyyxyyyyyyyyyyyyyyyyyyyyxyyyyyxyyyyyyxyyyyyyyyyyyyzyyyyyyzyyyyzzzyyzzyyyzyyyyyyyyyyyyyyyzzyzyyyyyyyyyzyyyyyyzyyyyyyzyyyyyyyyyyyyzyyyyyyyxyyyyyyyyyyyyyyyyyyyyyyyyyyyyzyyyyyyyyyyyyzyyyyyyyyyyyyyyyyyyyyyzyyyyyyzyyyyzzzzyzzyyyyyyyyyzyyyyyyyyyzzyzyyyyyyyyzyyyyyyzyyyyzzzzyzzyyyyzyyyyzyyyyyyyxyzzyzyyyyyyyyyyyxyyyyyyyyyyyzyyyyyyyyyyyyzyxyyyyyyxyyyyyyxxxzyyyxxxxxxxyzyyxxxyzyyxxzyyyyxyyyyyyyyxyxyyxxxyyyxzyyyyyyyxyxyyyyxyxyyyyxyyyyzyyyzyyxyyyxyxzyxyyxxyxyyyyxyyyyyyyzyyyyyyzyyyyzzzzyzzzzyyzzyyyyyzyyyyyyyzz{zyyxxyyyyzzyyxyyzzyyyzzzyyzzyyyyzyyyyyyyyxyzyyyzzyzyyyyxyyyyxyxyyyyyyyyyyyyyyyyyyyyyxyyyyyxyyyyxyyyyyxyyyxyxyyyyxyxyyyyxyyyyzyyyyyyxyyxxyyzyxyyyxxyxyyyxyyyxyyyyzyxyyyyzyyyyyyyyyyyyyyyyxyyyxyxyyyxyyxyyyyyyyyyyyyzyyyyyyzyyyyzyzyyzyyzzyyyyyzzyyyyyyyyyyzzzyyyyxyxyyyyxyxyyyyxyyyyzyyyyyyyyyxxyyxyxyyyyxyxyyyyyyxyyyyzzyyxyyzzyyxzzzyyzzyyyyzxyyyyyxyxyyyyxyzzyzyxyxyxyxyxyxyyxxyxyyyyxyzyxyxxxyxxyzyyxxyyyyyyxyyyyyyxyxyyxyyxyyyxyyyyyyyyyyxyyxyxyxyyxyyxyyyyyyyyyyyzxxxxxzyxxxxzyzxxxzxyxyyxxxyxxxxxyyxyxxxyxxyxyxxyzxxyyzxyyxyzxxyyyzyzxxyzxyxyyyyyxyyyxxyyxxxxyyyxxyyyxyzyyyyyyyyyyyxyyyyyyyyyyyyyxyyxyxyxyyxyyxyyyyyyyyyyyyxxxxxyxxxxyzyyxxxzxyxyyyxxyyxxxyyyxxxxxyyxxxyyxyyyxyxyxyyxyxyyyxyxyyyxxyzyxyxxxyxxyzyyxxyyyyyyxyyyyzyyyyyyzyyyyyyzyyyyyyyyyyxyyyyxyyyyxyyxyyyyyyyyyyzzxxxxxyzyxxyyyzxxyyyyxyyxxxyxxxxxyyxyxxyyxxyyyxyyzxyyyyyxyxyyyyyyzyyyxyzyyxyyyyyxyyyyxyyxyyxyyyyyyyyyyyyyxyxyyyxyxyzyyxyyzyyyyyyxxyyxxxyyyxxyxyyyyxyyyyyyyxxxxxyyxxxxyyyxxyyxyyyyxxxyxxxxxyzyxxxyyxyxyyxxyyzyyxyxxzyyyxxzyyyxzyyyyyyxyxxyxyxyyxyyxxyyyyxyyyyzzyyxyxyzyyyxyzyyyyzyyyyzyxyxxyyyxyzyyyxyyyyyyyyyyzzzxzxyyzyzxyyzzzyyzyzzyyyzxyzyxxyyyzyyxyyyzyyyyxyzyyzxxzxzyzxxxzyzyzxxzyyxyzzyyyzyyxyyzxxxxyzyxxyzyxyzzyxyxyyzxyxyyzyzxyyyyyyyyxxyxxxxxyzyxyxyyxyxyyyyyzyxxxxxyyyxxxyyyyyxyyyxyyxxxyyxxxyyyxyxxyyyxyyyyxyyyyyxyxyyyyyxyyyyyyyyyyyyyxyyyyxyyyyxyyxyyyyyyyyyyyzyyyyxyzyyyxyyyzyyyyyyyzyyyyyyyyyyzyyyxyyyyyyyyyyzyyxyyyxyyyxyyyzyyyxyzzyyyyyzyyyyyyzzyyxxyyyyyyyyzyyyxyxxxyyyxyxyyyyyxyyyyxyyxxyyxyyyyyxyxxyyyxyyyyyyyyyyyyxyyyyyxyyyyyyyyyyyyzyyyyyxyxyzyyyxxyyyyyyyyyyzyyyyxyzyyyxyyyzyyyyyyyyzyyyyyxyxyzyyyxxyyyyyyyyzzyyyyyyyyyyyyyyyyyyyyyyyyzyyyyyyyyyzyyyxyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyzyyzyyyyyyzyyyyyyyyyyyyyyyyyyyyyyyyyyyyzyyyyyzyyyyzyyyyyyyyyzyyyyyyyyyyyzyyyxxyxyyyxxyyyxyxxyyyyxyxyyyyxyyyyyyyxyxxyyyxxyxyyxyyyyxxyyyyyxxxxxxyxxxxyzyyxxyzyyxyyyxxyyxyxyxyxxxxyyxxxyyyyyyyyxyxyyyyyxyyyyyyyyyyyyzyxyxxyyyxyyyyyxyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyzyyyzyyzyyyyyyyzyyyxyyyyyyzzyyzyxyxyyzxyxyyyyzxyyyyyyyyyyyyyyxxyyyxxyxyyyyyyyyyzyxxxxxxyxxxxxzyyxxyzxyxyyyxxyyxxxyyyxxxxxyyxxyyxyyyxxxxxyyxxxxyyyyxxyyxyyyzyxxxxxxxxyxyxxxyyxyxyxxyyzxxxyxyzyxxxyyyzyxyyyyxyyyxxyyxxxxyyyyxxxyyxyyyyyzyyyyyyxyyyyyyyzyyyyyzyyyyyyyyyyyyyxyyyyyxyyyyyyyyyyyxyxyxyyyxyxyyyyyxyyyyyyzyxxyyxyxxyzxyxxyyyxyyxyyyxxxxxzzxxxyyxzzxxyyyxyxyyxyxyzxxxyyzxxxxyyyzxyzyxzzyyyyzzxyyyyzzzzyyyyzzyzyyyzyzyyyyzzyzyyyyxyyyyzzxzyyyyyzzyyyyzyzyyyzyzyyzyyyzyzzyyyzzyzyyyyyzyyyyzyxyyyxxxxxzzxxxxyxzzxxyzyxzyyyxyxxzxxxyzzxxxxyyxzxyyyxzzyyyyzzzyyyyzzzzxyyyzzxzyyyzyzzyyyzzxzyyyyxxyyyzzxzxyyyyxzyyyyzyzzyyyyzyyzyyyzxzxyyyzzxzyyyyxxyyyzzxzyyyyyzzyyyyzzzzyyyxzyxzyyyzyzzyyyzzxzyyyyxxyyzxzzzyyyyyzzyyyyzzzzyyyyzzyzyyyzyzyyyyzzyzyyyyyzyyyzzyzzyyyyzzzyyyzzzyyyyzzzzzyyzzyzzzyyzzzzyyyyyzyyyyzyyyzzyyyyyzzzyyyzzzzxyzyzzyzyyyzyzzyyyzzxzyyyyxxyyyzzxxyxyxxyzxyxyyyzxyyzyyyyyyxyyyyyyxyzyyxxyyyyyxyzyyyxyxxxxzzxyxxyzyxyyzxxzyyyxxxxzyxxxyzyxxxyyxzxyyxxzzxyyyyzzzyyyyzyzyyzyzzyzyyyzxzxyyyzzxzyyyyxzyyyzzxzyyyyyzzzyyyyzzzyyzyzzyzyyyzyzzyyyzzyzyyyyxzyyyzzxzzyzyyzzzzyyyzzzyyzzzzzzzyzzzzzzyyzzzzyyyzzzyyzyzzzzxyxzxxyzxyxzyyyzxyzyyyyyzxyyyzyyxyzzyxxyyzyzxyzyyyyxyxyxxzyxyyyyxzyxyxyyyzyyxyyxxxyxzzxyyxyyxzxyyxyxzyyyyyzzzyyyyzzzzyyyxzyzyyyzyzzyyyzzxzyyyyyxyyyyzyzyyyyyzzzyyyyzzzzyyyyzyzyyyzyzzyyyzzyzyyyyyyyyyyzzzyyyyyzzzyyyyzzzzyyyyzyzyyyzyzzyyyzzxzyyyyyxyyzzzzzzzzzyzzzzzyzzzzzzzzzzzzzzzzzzzzzyzzzzzyzzzzyzzzzzzzyyyyyyzzyyyzzyzzyzzyzyyzyyzyzzyyyzzxzyyzyyxyzyyzyzyyyyyzyzyyyyzzyzyyyyzzyzyyyyzyyyyzzyzyyyyyyyyzzzzzzyzyyzzzzyyyzzzzyyyzzzyzyyyzzyyyyzzyzyyyyzyyyyzzzzzyzyyzzzzyyyzzzzyyzzzzzzzyzzzyzyyzzzzyyyzzzyyzzzzzzzzzyzzzzzyzzzzzyzzzzzzzzzzzzzzzzzzzzzyzzzzyzzz{zzyyyyyzzzyyyyzzzzyyyyzzyzyyyzyyyyyzzxzyyyyyxyyyzzzxxyyxyzzzzxxxxxxxzzxxxxyxzzxxyyxxzxzyxxxxzyxxxyzxxxyyxzxyzyxzzyyyyyzzzyyyyzzzzyyyyzzyzyyyzxzzyyxzzxzyyyxxyyzzzxyyxyxxzyyyxyyxzyyyyzyxzyzzxyxyzyzxyyzyyxzzyyxyzyxzzyyyyyzyzyyyzzzyzyzyyzzyzyyyzyzyyyyzzyzyyzxyyzzzzxzyyyyyxzzyyyyzxzzyyyyzyyzyyyzyyzyyyzzxzyyyyxyyzyzxzyyyyyzzzyyyyzzzzyyyyzzyzyyyzxzzyyxzzxzyxyyxxyyzzxyyxyxxzyyyxyyxzyyyyzyxzyzyxyxyyyyxyyyyyxyyyyyxzyyyyxyxyxzxyxyxyyzyyxyyxyzyzyyxyyzxxyxzxxyyxyyxxxyxyzzyyyyyzzzyyyyzzzzyyyyzzyzyyyzyzzyyyzyyzyyyyxzyyyzxyzxyyyyzxzyyyyzzyzyyzyzzyzyyyzyzxyyyzxxzyyyyxxyyyzzzzyzyz{yzzyzyz{yzzyzzz{yzz{yzz{yzzyzz{zyyzyz|zzyz{{{z{yzyzyz{zyzyyz{{zyyyyz{{yyzzyz{{zyzyzzz|zyyy{yyyyzzz{zzzyzxyzzyzxyzzzzyyyyzzzyyzzyzzzzyzyzzzxzyyy{yyyyzzyzz{zzyz{z{yzzzz{zzzz{zz{z{{zyzz{yzzyzz{{{yzz{{zzz{z{{z{{yzzyz{|yzyy{{{|yyzy{{{zz{zy{{{{yzy{z{|zyzz|zyyz{{z{yyyzzzyzyzyzzyzxyzzzzxyyyzzzyyzzyzzzyyzyzzzxzyyy{xyyyzzyzz{yzyyyz{yzyzyyz{yzyyzyz{yzyyzyzyyyyzz{{yyzy{yyzyzzyzzzzyzyz{zzyzyz{yzzyzzz{yzz{yzz{yzzyzz{zyyzyz|zzyz{{{z{zyzyzyz{yzyyz{{zyyyyz{{yyzzyz{{zyzyzzz|zyyy{xyyyzzz{z{zzzzz{z{zzzz{zzzz{zz{z{{zzzz{zzzzzz{{{zzz{{zzz{z{{z{{yzyzyz{|yyy{{{|yzzy{{{zz{zy{{{{yzy{z{|zyzz|zyyz{{z{yyz{zzzzzz{{zzzzz{{zzyzzz{{yzzzzz{{zzzzz{z|zzyz{zzyzz{{{z{yzyzxyz|yzyyyz|yy{yzzz{{zzyzzzyyzyz{z{zyy{{yyy{{zyzz{yzyzyyz{yzyzzz{yzyyzzz{yzzyzzzyyzyzz{{zyzy{yyzyzzyzzzzzzzz{zzzzzyz{zzyzzz{zzz{zzz{zzzzzz{zyzzyz|zzyz{{{z{{zzzzz{{{zzzzz{{zz{zz{{{{zzzz{{zzzzz{{|zzz{{zzz{z{{{{{zzzzyz{|zzyz{{{|zzz{{{zz{zz{{{{zzz{z{|zzzz|zzzz{{z{zzz{yzyzyyz{yzyzzzz{yzyzzz{yzzyzzzzyzyzz{{zyzz{yyzzzzyz{zyzyzyz{zyzyyz{{zyyyyyyyyzzyz{{zyzyzzz|zyyy{yyyyzzz{{{yzyzyz{|yzyyz{{|yy{yyy{{zzyz{{zyzyz{z|zyy{{yyy{{zz{{{yzyzyz{{yzyzz{{{yzyyzz{yzzyz{{zyzyzz{|zyzy{yyzyzzz{{zzzzzz{{zzzzyz{{zzyzzz{zz{zzz{{zzzzz{z|zzyz|zzyz{{{{{{{{{{{{{|{{{z{{{|{zz{{{{z{{{{{{|{{{{{{|{{{z||{{z{|{{z{zyzyzyz{zyzyyz{{zyy{yz{{y{zyz{{zyzyz{z|zyy{|zyy{{zz{zzzyzyz{zzzyzyz{zzzyzzz{zzzzyyyyzzyzz{zzyzyz{zzyzz{{zzzzyzyz{zzzyzyz{zzzyzzz{zzzzyyyzzzyzz{zzyzyz{zzyzz{{zz{zzzyz{z|zyzyz{z|zy{zz{z{{zzzyzzzyzz{z{yzy{{zzy{{{{zz{zzzzz{z{zzzz{{z{zzzz{{z{z{zz{z{zzz{{{{zzzz{zzzz{{{z{{{z{z{{{{{z{z{{{{{z{{{{{{{{z{{{z{z{{{{|z{z{|{{z{{{{{yyyz{yyz{zz{{{{zzyyyxyyzzyxyyyzzyxy{yyzyy{zyyxzzyyxyy{zxyyy{xyy{zyyzzzyzyzxyzzyzxyzzzzyy{yzzzy{zzyzzzyyzxz{zxzyy{xyy{zzyz{zzzzzz{{zzzzyz{{zzy{zz{{z{zzzz{zzzzzy{z|zzz{zzy{z{{{z{yzyyyyz{yzyzyzz{yz{yzzz{{zyyzzzzyyyz{{{yyz{zyz{zzyzz{{z{yz{z|{z{zz{{|{z{{z{{{{{y{z{{z{y{z{{{y{z{zzz{{{{zz{yzyzxyz|yzyyzzz|yyyyzzz{yzzyzyzyyzyzzz{zyyz{yyyzzyz{{zzzzz{{|zzzyz{{|zyzzz{{{zzzzz{yzzzzy{z|zzyz{zzzz{{{z{yzyyyyz|yzyzyyz|yzyyzyz{yyyyzyzzyyyzz{{yyzz{yyzzyyzz{zyzyzzz|zyzyyz{|zy{zyz{{{{yzyz{zzyzy{y{yzy{{zzy{zzz{|z|z|zz{|z|z{{{||z{{z|{||{{|z|{{|z|z{{{||z{{|{z{{{z{yz{zyzyz{z|zyzyz{{|zyzzz{{{z{yzz{{zzyzz{x{yzyz|yzyz{{{{y{y{zy}{y{{z|y}{y{{||y}{{y{||z|z{y{{|zzy{{{||z{{{{{z{}{{{{|}|{{{{||}|{{{{||}|y{{{||}||{{{||}z{{{{||y{{{{|z}{{{{{|{|{{{{{|{|{z{{{|{|z{{{{|{|z{{{{|}z{{{{||z{{{{||{{{{{{z{}{{{{{|{}{{{{||{}{{{{||{|z{{{{|}z{{{{||y{{{{|z{}|{|||}~|{|{||}~|{||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{{{z{{{z{z{|z{z{{z{|{{|z{z{|z}{z{z{|zz{z{|}z{z{|}||z{|}|z{{{{{{{z}{y{{{|{}{y{{||{}{{{{||{|z{{{{|}z{{{{||z{{{{|z{{{{z{zz{z{z{{{{|{{{z{{{|z{{z{{{|~z{z{|}z{z{{|~~z{{{~z{}{{{{{|}|{{{||}|{{{{||}|z{{{||}||{{{||}z{{{{||z{{{{|z}{{{{{{|{}{{{{|{}{{{{||{}{{{{||{|z{{{{|}z{{{{||z{{{{||{}|{|{{|}~|{{||}~|{||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{{z{{{{{{|{|{{{{zz{zy{{{|{|z{{{{|{|z{{{{|}z{{{{||z{{{{||{{{{{{{|{|{{{{{{|z{|{{|{|z}{{{|{|z{{{{|}z{{{|}||{{|}||{{{{{{{|{}{{{{{|}{z{{||{}{{{{||{|z{{{{|}z{{{{||z{{{{||{{{{{{{|{~{{{{{|{z{{{{|{|z{{{{|{|~{{{{|}z{{{{|~~{{{{~|{}{{{{{|}}{{{{||}}{{{||}}{{{{||}||{{{||}z{{{{||y{{{{||}}|{|{||}~|{|{||}~|||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{|}{{{{{|}{{{{{||}{{{{zzzzy{{{||}z|{{{||}z{{{{||z{{{{|z}}{{{{{|}{{{{{||}{{{{{zz{z{{{||}||{{{||}z{{{{||z{{{{|z}}{{{{{|}|{{{{||}|{{|{|{|z}{{||}||{{{||}z{{{|}||{{|}|z}}{{{{{|}}{{{{||}}{{{{||}{{{{||}||{{{||}z{{{{||z{{{{|z}}{{{{{|}~{{{{||}~{{{{||}z{{{||}|~{{{||}z{{{{|~~{{{{~z}}|}|}||}~|}|}}|}~|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}|zz{z{zzz{z{z{{{z{z{zz{{z{z{zzzzzzz{z{z}z{z{z||zz{z{zzzzz{z{zzz{z{z{{{z{z{zz{{z{z{{zzzzzz{z{z}z{z{z||zz{z{zzz{{{{{{z{|{{{{{{{|{{{{{{z|z{{{{{|z{{{{|}{{{{{||{{{{{|z{{{{z{zz{|{{z{{{{|z{|z{{{|z}{z{{|zz{z{|}z{z{|}||z{|}|z{{{{{{{|{}{{{{{|{}{{{{||{}{{{{||||{{{{|}|{{{{||z{{{{||{}{{{{{|}~{{{{~|}~{{{{~|}~{{{{~|}~{{{~|}z{{{{~~~{{{{~{}yyzz{yz{|}z{|}z|}z}z}{{{zyzz{|{yz{{z{|{z{z{z{|z{{zzz{|zzyz{|}zz{{||zz{{{|z{{{{z{zz{|{{z{{z{|zz{z{z{zz{{z{z{|zz{z{|}z{{{||zz{{{|z{{{{{{{|{|{{{{{|{|{z{{{|{|z{{{{|{|z{{{z|}z{{{||z{{{{||{}{{{{{|}z{{{{||}z{{{{||}zz{{{||}||{{{|z}z{{{||z{{{{|z}{{{{{{z{}{{{{z|{}{z|{||{}|{{{||{|z{{{{|}|{{{|||{{|{{z{{{~{~{z~~{~{~~|~~{~|{~|~~{}~{~|~~~{~{~|}z~{~|}~{~|}~z{{{{z{zz{|{{z{{z{|y{|z{z{|y}{z{z{|zz{z{|}z{z{|}||{{{|z{{{{{{{|{|{{{{{|{|{{|{{|{|z}{{{|{|z{{{{|}z{{{|}||{{{||{}{{{{{|}|{{{{||}|{{|{||}|y}{{||}||{{{||}z{{{|}||{{{|z}{{{{{{z{}{{{{{|{}{{|{||{}{}{{||{|z{{{{|}z{{{|}||{{|{z{{z{z{zz{~z{z{{z{~z{|z{z{~z}{z{z{~~z{z{|}z{z{|}|~z{|}z{}|}|}||}~|}|}}|}~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}|z{|{|{}{}}}{z{}}{{}{}}{}|{|}{}{{}}{}{}}|{}{}{|}|{}{}}}{|{}{{{{||{{{{||{{{{||{{|z||{{{{{|{{{{||{{{{{z}|{{{{z}{|{{{{{||||{|y||{{|y||{||z||{|{{{|{|{|||{|{|{z}|{|{|{}{|{|{|||||||||{|}|||{z}|z|{|}||{{|}|||}{}||||{}|||||z}{||||{{|{||{|{||{{|{||{|{{||{|{{||{|{|~{{|{|{|{|{|{|~~{{{|{{|{||||||~||||~}||||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{{}{}}}{{}}{{}{}}{}|{|}{}{{}}{}{}}|{}{}{|}|{}{}}}{|{}{{{|{|||{|||{{|{||{||z||{|{{{|{|{|||{|{|{z}|{|{|{}{|{|{|||||||||||}|||||}|||||}||{{|}|||}|}||||{}|||||z}{||||{{|{|~|{|{|{{|{||{||{||{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{z{}{}|}z}z}}{}{}}{}|z}}{}{{}}{}{}||{}{}{z}|{}{}z}{|{}{|{||||||~|||||~}|||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{{}{}}}{}{}}{{}}}{}|{|}{}{{}}{}{}}|{}{}{|}|{}{}}}{|{}{||||||||||||}||||}|||||}||{{|}|||}|}||||{}|||||z}{||||{{|{|~|{|{|~{{|{|{||{||{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{{{}{}|}{}{}}{{}{}}}|z}}{}{{}}{}{}||{}{}{z}|{}{}z}{|{}{{{{{||z{{{||{{{{{|{|z||{{{{{|{{{{||{{{{{z}|{z{{z}{|{z{{}|||||~|||||~}||||~}}||~}}|}|~}}||~~}}|||}}}||||~~}||||||}|}}}|}|}}}|}|}}}}||}}}|{}}}}|}}|}}|}||}||}|}}}{||}|{{|{|~|{|{|~{{|{|~{||{|{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{{{}{}|}{}{}}{{}{}}{}|z}}}{{}}{}{}||{}{}{z}|{}{}z}{|{}{{{|{|||{|{||{{|{||{||z{|z{{{|{|{|||{|{|{z}|{|{|z}{|{|{{{|{|||{|{||{{|{||{||z{|zz{{|{|{|||{|{|{z}|{|{|z}{|{|{}}}|}|~|}|}|~}}|}|~}}|}|~}}}}~}}}|~~}}}|}}}}}|}|~~}|}|}|||||~|||||~}||||~}||||~}||{|}|||~|}|||||}|||||~~{||||||}|}|}|}|}}}|}|}}}}||}}}}|{}}}|}}|}}|}|{}||}|}{}{||}|||||||||||||}|||||}|{|||}||{{|z||}{}||||{}|||||{}{||||||||||||||||}|||||}|{|||}||{{|zz|}|}||||{}|||||{}{||||||||||||||||}|||||}|{|||}||{{|zzz}{}||||{}|||||{}{||||||}|}~}|}|}~}|}|}~}}||}~}}||}~}}|}~}}|}|}}}|}|}~~|||}|{{}{}}}{}{}}{{}{}}{}|{}}{}{{}}{}{}}|}{}{|}|{}{}}}{|{}{{{|{|}|{|{|}{{|{|}{||{|}{|{{|}{|{|}|{{|{|}|{|{|}}{|{|{{{|{|}|{|{|}{{|{|}{||{|}{|{{|}z|{|}|{||{|}|{|{|}}{|{|{{{|{|}|{|{|}z{|{|}z|{{|}z|{{|}z|{|}|z|z{|}|{|{|}}{{{|{{{|{|}|{|{|}z{|{|}z|{{|}z|{{|}z|{|}|z|z||}|{|{|}}{{{|{}|}z}|z}|{z}|{zz{{{yz~~}~}~}~}~}~~~}~}~~}|~}~~}~{}~~}~}~~~}~}~|}|~}~}~{|~}~{{}{}|}{}{}}{{}{}}{}|z}}{}{{}}{}{}||{}{}{|}|{}{}|}|{}{|||||}|||||}}||||}}|{||}}||{|}}|||}|}|||||}{||||}}{|||{{|{|||{|{||{{|{||{||z||{|{{{|{|{|||{|{|{z}|z|{|z}{||{{{{{||z{{{||{{{{||{{|z{|{{{{{|{{{{||{z{{{z}|{z{{z}{|{{z{{{||zz{{||{{{z||{{|z||{{{{{|{{{{||{{z{{z}|{zz{z}{|{zyyyzzyyyy{zzyyy{zzzzzzyz{yz{zz{yyyzzyyyyy|zyyyyz{zyyz{z{zzz{z{z{z{z{z{{{z{z{{z{|z{{z{z{{z{zyz|zzz{z{{zzzzzz{{zzzy{|zzzz{|z{{z{zz{zz|{z{zzzz{zzz{{{zzzzyz{zzzzzzzzzzzz{zzzzz{zzz{zzzz{zz{zz{zzzzzzzzyy|yyzzyz{zyzzzzzzyzzz{z{zyz{z|zzzzz|{zz{z|{zz{{zzzzyy{zzzz{zzzzzzzzz{zzzz{z{z{z{z{{zz{z{{z{{z{{zzz{{zzzyy{zzzzy{zzzzzzzzzzzzz{zzzyz{zzzzzzzz{zz{zz{zzzzzzzzyy|zzzzyz{zzzyy{{zz{z{zzzz{z{z{z{z{{{z{z{{z{|z{{z{z{{z{zzz|zzz{z{{zzzzzzz{{zzz{|zzzz{|z{{z{zz{zz|{z{zzzz{zzz{{|zzzzyz{zzzzzzzzzzzzzz{zzz{z|zzzzz|{zz{z|{zz{{zzzzyy{zzzz{zzzzzzzzz{zzzzz{{z{z{z{{zz{z{{z{{z{{zzz{{zzzyy{zzzzy{zzzzzzzz{{zzzz{{zzz{{z{zz{{z{z{{{z{zzzz{zzzyy{zzzzz{zzzzzzzz{{zzzz{{{{z{{{{zz{{{{zz{z{{zzz{{zzzyy|zzzzyz{zzzz{{zz{z{zzz{z{z{z{{z{{{z{z{{z{|z{{z{z{{z{zzz|zzz{z{{zzzzzzz{{zzzz{|{zzz||{{z{z|{zz|{|{zz{{{zzz{{{zzzz{z{zzzzzzz{zzzzz{{{z{z{{{zz{z{{z{{z{{zzz{{zzzyy{zzzzy{zzzzzzzz{{zzzz{{zzzz{{{zz{{z{z{{{z{zzzz{zzzyy{zzzzz{zzzzzzzzz{zzzz{|zzzz{|zzzz|z{zz{{z{zzzzzzzz{{{zzzzyzzzzzzzzzz{zzzz{|{zzz{||zzz||{zz{{|{zz{{zzzz{{|zzzz{z{zzz{{zz{z{zzz{z{z{z{z{z|{{zz|{z{|z|{z{{{{z{zzz|zzz{{{{zzzzzzz{{zzzz{|{z{z{|{{{z{{{z{|{{{zzz{{zzz{{{zzzzy{{zzzzzzz{{zzzz{{zzzz{{{{zz{{{z{{{z{zzzz{zzzyy{zzzzz{zzzzzzzzz{zzzz{|zzzz{|zzzzz|zzz{{z{zzzzzzzz{{{zzzzyzzzzzzzzzzzyzzz{zzzyz{zzz{yzzz{z|zz{zzyzzzzzyy{zzzzyz{zzzzz{z{zzz{z{{{z{z{{|||z{{||z|{||z{{{|z{zyy|z{zz{{|zzz{{{|{|{|{|{|{{z|{|{||{z|{||{{|||{|{{|{|{z{|{|{|{{{{|{zzzz{{zzzz{{{z{z{{|{{z{{|{z{{{{zz{{{zzzyy|zzzz{{{zzzzzzz{{zzzz{|{z{z{||{{z{||{zz{{zzz{{{zzz{{|zzzz{z{zzzzzzz{zzzzz{z{z{z{z|{{z{z|{zz|zz{z{{{zzzyy|zzzz{z{zzzzzzz{zzzzz{z{z{z{z|{{z{z|{zz{zz{y{{{zzzyy|zzzz{z{zzz{{|{|{|{|{||{{|{||{|{{||{|{{|{{|{|{|{|{{{|z|{|z{{z|{zz{z{{zz{z{|zzzz{|z{{z{|z{z{|{z{z{zzz{z{{|zzz{z{{zzzzz{z{{zz{z{{zzzz{{z{{z{{z{z{|{z{z{zz{{zzz|zzz{z{{zzzzz{z{{zz{z{{zzzz{{z{{z{{z{z{|{z{z{zz{zzzz|zzzzy{{zzzzz{z{{zz{z{{zzzz{{z{{z{{z{z{|{z{z{zz{z{zz|zzz{y{{zzz{{{{{z{{yy{{yyyzz{z|{zz{z||zz{z||{{|z||{{z{|{{{z{z{{z{z{{|z{zzz|zzzzzzzz{zzzz{|{zzz{||z{zz||{zz|{|{zz{{zzzz{{{zzzz{zzzzzzzz{{zzzz{{{z{z{{{{{z{{{{zz|{{{zzzz{zzzyy{zzzzyzzzzzzzzzzzzzz{zzzzz{zzz{zzzz{zz|zz{zzzzzzzzyy{zyzzyzzzzyyyyzzyyyy{zzzyy{zzz{zzzz{yz|zz{yyyzzyyyyy{zyyyyzzyyyzyzzzyyzyzzzyyyzzz{zzzyz|y{zz|yzzz{yzyyyyyyyzz{zyyyyyyz{zzzz{zyzzyz{zzzzy{zzzzzyzzz{{yzzz{zzzzz{zzzyzzzzzzyzyyzzz{yyzyy{{yyyzy{zzyz{zzy{z{zyzzzyyzyzyzyyyz{|zyyyyyzyzzyyzyzyz{yyzzz{{{zzz|y{{z|yzzz{yzyyyy{yyzz{z{yxyyyyyzzyyyzyzyzyzyz{zyzyz{y{zz{yzy{{yzyyyyyzyyz{zyzyzzzzz{yzzzz{yzzzz{zz{zz{zzz|{yzzz{zzzzz{zzzyzzzy{zyzzzzzz{{zzzz{{zyzz{{{zzy{{|z{{y|zz{z{zzz{zzzyzz{|zzyzyyzyzzzyzyzzz{yxzzzzzyzzzzy{{zzyzzzyyzyyyy{yyzzyz{yyyyz{zzzzz{zyzzz{zzzzy{zzzzzyzzz{{zzzz{zzzzz{zzzyzzzzzzyzyyzyzz{yyzy{{{yyzy{{{{z{z|y{{{|yzzz{yzyzyz{yyz{|z{yyyyzyzzzzyzyzzyzyzzz{zyzzz{y{zz{yzz{{yzyyyyyzyzz{zyzyzzzzz{zyzzzz{zzzz{zz{zz{zzz|{yzzz{zzzzz{zzzyzzzy{zyzyyyyyyzzyyyzyzzyzyz{zzzyz|y{zz|yzy{{yzyyyzyzyyz{yyzyzzzzz{{yzzzz{{{zz{{zzzy{{zz{{zzzz{zzzzz{zz{yzz{|z{yzzz{zzzzz{zyzzzz{z{zz{z{{{zyz|z{{z|zz{z{zzz{zz{yzzz{z{yzyyzyzz{zyzyz{{yzyz{{zyz{z{y{z{{yzz{{yzyzyzyzyz{|zyzyzzzzz{zyzzzz{zzzzz{z{zz{zzz|{zzzz{zzzzz{zzzyzzzy{zyzyyzyzz{yyzyz{{yyyz{{zyz{{zy{z{zyzzzyyzyzyzyyyz{|zyyyzzyzyzzyzyzyzz{yzyz{{{yz{|z{{{|zyyx{zyzzzz{yzyz{{{yzyyyyyyzzyyyzzz{zyzzz{zzzz{y{{z{yzy{{yzyyzz{zyyz{z{zy{{zzzz{{zzzzz{{zzzz{{z{{z{z{z{{z{zz{{{zzz{z{zzzzz{{zzzzzzzz{{yzzzz{{zzzz{{z{zz{zz|{{zzz{zzzzz{zzzyzz{|{zyzyyzyzz{yyzyz{{yyyz{{zzyz{{y{z{zyzzzyyzyzyzyyyz{|zyyyyyzyzzzyyzyzzzyyyzzzzzyzzzz{zzzyzzzyyzyyyzyyyzzyzyyyz{z{z{zz{z{z{z{z{z{{{{{z{{|{{{|{z{{{{z{{zz{z{zz{{{zz{{{z{{{{z{z{{{{{z{{{{{{{{{{{{|{{{z{{{{z{{{z{z{z{|{{z{zzzzz{{zzzzz{{{zzz{{{z{z{{{z{{{zz{{{zzz{zz{zzz{|z{zzzzzzz{zzzzzz{z{zzz{z{z{z{z{z{{zzz{{{zzz{zz{zzzz{z{zzzzzzz{zzzzzz{z{zzz{z{z{z{z{z{{yzy{{{zzz{zz{zzzz{z{zzzz|z{z{{z|z|{{{{z|{||{{{{||z|{{|z|{|z|zz{|{{z|{|{{{z{{{{{{{{{{{{{{z{{{{{{{z{{{|{|{{|{{|{{{{{||zz{{{|{zz{zzzz{z{zzzz{{{zzz{{{{{z{{{|z|z{|zz{{zzzzz{zzyz{|{zzyyyzy{z{yyzy{{{zzy{{{{{z{{{|y|z{|yz{{zyyzz{zzyz{|{zyyyyzy{z{yyzy{{{zzy{{{{{z{{{|y|z{|yz{{zyzzz{zyyz{|{zyyyzzzzyyzyyyzzzzz{zyzzzz{zzzzz{{{{zz{{|z|{{|zz{y{zzz{yzzyzz{{zyzyyzyzz{yyzyz{{{yyz{{z{{z{{zy|{{zyzzzzyzyzzz{yyz{|{yyyyzyzzzzyzyzzzzzyzzz{zzzzz{y{zz{yzz{{yzyyyzyzyzz{zzyzzzzz{{yzzzz{{zzzz{{zzzz{{zz{{{zzz{zyzzz{zzzyzz{|zzzyyzyzzzyyzyzzzyyyzzzzzyzzzzy{zzzyzzzyyzyyyyyyxzzzzyyyyyzy{yyyyzy{{yzyzz{{zzy{{yyz{yyyzyyyyyy{yyyyy{y{zyyxyxyyy{xyxyyyyy{xyxzyzzyzyyyy{zxyyyyyxxyyxx{xyyxxy{xxyxy{xyyyy{yxyyyy{zyyxyy{zyzyyzyyz{yyyyyyyyyy{yyyxy{yyyyxyyyyyzzyyyzyz{zzyzzy{zzzzyyyzz{yyzyyyyyyyyyyyyzy{zyyyyyyzy{yyyzyyz{{yzyzy{{yzzzyy{zzyyyyzxyyyyx{yxyy{z{yzzyyyyyzyzyyyzzyzyzyzzzzyzzyzzzzxyy{zxzyyyyyzyyy{zyzzzxyyyyzxzyyyyzzzyzyyzzzyzzyzzzzxyy{zxzyyyyyzxyy{zyzyyyyzy{zyyzy{{{yyzz{{yzy{{zy{{yzyzyyzyyy{yyyyy{y{zyyxxyxzyy{xxzyzzy{xxyzzzzyzzyyz{zxyyyyyxxyyxy{xxyyxy{xyyz{yyyyyy{zyyyy{zzzyyy{zzzyyzyyz{zyyyyyyyyy{yyyyy{yyzyyyyyyzyz{yyyzz{{{yzzy{{{zzyzyy{{zyzyyzyyyyyy{yyzy{z{yzzyyzyyyzyzzyzzyzzzzzzzzzzzyzzzzyyy{zxzyyyyyzxyy{zyzxyyyyy{yxyyyy{zyxyy{yzzy{yyy{{yyyyyyyyyy{yzyxy{yxzyxyyyyyyy{yyyyyyy{yyyyyz{yy{yxz{{yyyxyyyyyyyz{yyyyyz{yzzyyyyyzzyzyyyy{zyzyyzzzyzzy{zzzxyy{zxzyyyyyzxyy{zyzyyyyzy{{yyyzy{{y{zz{{zzx{{yyy{zyyzyyyyyy{yy{xy{y{y{yyz{yyyyyy{{yyyyy{z{{yy{z{{yyzzyz{yzyyyyzyyy{yy{yy{y{z{yzzyyzyzyzyzzyz{zyzzz{zzzzzzyzz{zyzy{zyzyyyyyzyzy{zyzxyyyzy{yxyyzy{zzyxzy{zzy{zyy{{zyyyyyyyyy{yzyxy{yxzyxyyyyyyy{yyyyyyz{{yyyyz{yy{zy{{{zyyyyzyyxyyz{yyyy{z{yzzyzyyy{zyzyyyzz{zyzzzzzzzzzz{zzxyy{zxzyyzz{zxyz{z{z{{zzyzzz{yzyzzz{zzyzzz{zzzzzzyz{zzyyz{zyzz{zzyzy{z{zyzyyyyzy{yyyyzy{{zyyzz{{zzz{yy{{{yyzyyyyyy{yzyxy{y{zyyyyyyzyzyyyyzyz{yyyzzz{zzzz{yzz{xyzyyyyyyyxyyxyzy{yyyzzyyyy{{zyzyy{y{{zyz{y{{z{zz{{zzyyy{zyzy{yy{zy{y{z{zzz{y{y{{z{z{y{y{{z{z{y{{z{{zy{{z{{y{z{zy{yz{z{{y{z{z{zz{y{y{{z{z{y{{z{z{z{{z{z{{zy{{z{{y{z{zy{yz{z{{y{z{zzzyyzy{{zyzzy{{z{zzz{{z{z{{zyz{{yzy{zyzy{yy{zy{y{z{zzzyyzy{{zyzzy{zz{zzz{zz{z{zzyz{zyyy{zyzy{yy{zy{y{z{zyzzzzzzzzzzzzz{{zzzzz{{zzz{zz{z{zzzzzzzzzyzzzzzy{zzyz{z{z{z{{z{z{z{{{{z{z{{{{z{{{{{{{zz{{zzyz{{{zzzy{{{z{{{{{{{z{{{{{{{{z{{{{{{{{{{{{{{{{{{{{{{z{{{zy{{{{zzyzzzzzzzzzzzzzz{{zzzzz{{zzz{zy{z{zzzyzzzyzzzzzyzz{zzzyyzyzyzzyzyzyz{{zyzzz{{zzz{zy{z{zzzyyyzyzyzzyzzy{zzyyyyyyyyyxzzxyyyyzzxzyyyzzzzyzzzzzzzzzyzzzzxyy{zxzyxxyyzxy{zyzyyyyyy{zyyyyy{y{zyyy{y{zy{{zy{{{zyyyyzyyy{yzyyy{{zyyyyyyzyz{yyyzyz{z{yzzz{z{zz{yy{{{yyzyyyyyyyyy{xyzy{{xzzyyzyyyzyzzyzzzyzzzzzzzzzzzyzzzzyyy{zxzyyyyyzxyy{zzyyyyzy{yyyyzy{{yyyzz{{yzz{{yyy{{yyzyyxyyy{yyyxy{y{yyyyyzyzzyyyzyzyzyzyzyzzzyzzzxzzzzyzxz{yyyzyyyyyzyz{yyzyyyyy{zyzyyyz{yzzyzzyyzzzzyy{zzyyyyyyzyyyyyyyyyz{yz{yyyyxz{yyyyxyz{yyxyyyzyyzyyyy{zyyyyyyyyxyyy{yxyyyy{xyxy{yyyyyyyyyyyyy{yzxyy{yyyzyzzyyz{yyxxyyyyyx{yxyyy{yyxyyzyyyyzzyzyyxzzzyyyy{zzyyzyyzzz{yyxzyyyxyyyyyyyyz{yy{zyyyy{{yzyyyy{{zzyzyy{{yzzyyy{zyyyyyyzyyyyy{yyyz{y{{yyyyyx{yyyyxyy{yyxyzyy{yzzyyy{{yyyyyyyyxyzy{yxyzyy{yzyyzyzzyzzyzyzzzzzyzzzzzzzyzzzzyzxz{yyxzyyyyyzyz{yyzzyyyyy{zzyyy{{yzzy{{zyzz{{yz{{yyyyzyyzyy{yyyyy{z{yz{yyyyyyz{yyyyzz{yyyzzyzyyzzyyz{zyyyyyyyyyyyy{yyyzyy{yyz{yzyyyyyzzyzyy{zzyxy{yyzzyzzyyz{zyyxyyyyxy{yxyyy{yyyy{zyyyyy{{yzyyz{{zzyy{z{{yzyyzy{{yyyzyyzyyyyy{yyyz{y{yyyxzxzyyyyzxzyyzyzzzzzyzzzxzzzzyzxz{yyxzyyxyyzyz{yy{zyyyyxz{yzyyxy{yzxyzyz{yzzyyz{{yyyyyyyyxyzy{yxyzyy{zzyyzyz{zyzzyzy{zzzyzzzzzzzyz{zzyzyz{yzyzyyyyyzyz{yz{yyyyyyz{yyyyy{z{yy{{zzyy{{yzy{zyyyzyyyyy{yy{yy{z{y{yz{{zyyyyy{{yzyyy{{{zz{yy{{yzzyyz{yyyyyyyzyy{yy{yy{z{y{yyyyzyzyyyyzyzzyyzyz{zzyzzzxzzz{yzxz{yyxzyyyyyzyz{yyyyyxyxyyyyyyxy{yyyyy{y{yy{zxy{{zxyxyyxyxy{zyyyy{zyyyzzyyyyy{zyzyyyy{zzzyyy{zzzzyy{zzyyyyyyzyxyyxyyxyy{yz{zyyyyy{{yzyyyy{{zzyyzy{zzzyy{{{yyyyyyzyxyzy{yxyz{y{{zzyzyzz{zzzyzyz{zzzyzzzzzzyzz{zyzyz{zyyzyzz{zzyz{z{{{yyzyzyzzyyyzyz{zzzyz{zzzzzzyzz{zzzyz{yyxz{zzyyz{z{zyyyyyyyyzyyyyyy{zyyyy{{z{yy{yz{{{yyyzyxyyy{zyyxy{z{yy{zyyzyzz{yzzyz{z{zzz{zzz{z{zyz{zyzyz{yyyz{yy{yz{z{y{{zyyzyz{{yzzyz{{{zzz{zz{{z{zy{{zyzyz{yzyz{yy{yz{z{y{{{y{z{z{{y{z{z{{{z{z{zz{{z{z{z{{yz{z{y{{z{zy{yz{z{y{{{{y{z{zy{y{z{z{y{z{z{{z{{z{{{z{{yz{z{y{{z{zy{yz{z{y{{yyyzyzy{yyzyz{y{zyz{{zz{z{{yzz{{zyz{yyyz{yy{yz{z{y{zzyzyzy{zyzyzyz{zzzyz{z{zzz{zz{z{yzyyyzzyzzyzyyzz{yzzzzzzzz{zzzzzzz{zzzzz{z{zzz{zz{z{yzzzyzyzzzzzyzzz{zz{{{{{{{{{{{{{{z{{{{{z{{{{{{{{{{{{{{{{{{{yz{{{zyzz{{{zz{z{zz{z{z{z{{{z{z{{{{{z{{{z{{{{{zz{{zzz{{{zyz{{{yzzzzzzzy{zzzzzzz{zzzzz{z{zzz{zz{z{zzzzzzzzzzyzzyzz{yzxyyyyyyyy{zyyyyy{{yzyyyy{{zzyyyy{{zzyyy{{yyyyxyyzyxyyy{yyy{y{yzyyzyzzzyzzyzyzzzzzyzzzzzzzyzzzzyzxz{yyxzyyyyyzz{yyzzyyyyy{zyzyyy{{zzzy{zy{zz{zyy{{{yyyxyyzyx{yyyyy{{yz{yyyyyyy{yyyyyzy{yyyz{z{{yz{yz{{{yyyzyyyyyyzy{yyyz{{yyyxzxzzyyyzxzzzzzyzzzzzzzzzxzzzzyzxz{yyxzyyxxyzyz{yzzyzyzy{zzyzyzy{zzyzzzy{zz{yzzy{|zyzzz{yzyzzz{zyz{yzzyzyzyzyzyzyy{zzzyy{y|zzz{{zy|z{{yzy{zzzyy{yyyxy{z{z{zzyzy{{yyzyyz{yzyyyyzy{zyzzyz{z{yzyyzzzyyyzyzyyyz|{zzzzyzz{zyyzyzz{yzyzzzzyzzzyzzy{{zyzzz{yzyzzz{zyzzzzyyyz{zyyyyyzzyyxyyzzzxyy{yzyzyyzyyyz{{yxxyzyxyy{yxyyy{zxzzzyzyzzzzyzyy{zzzyyyy|zyzzzzy|zz{yzy{zzzyyyyyyxyyz{zzzzyzyz{zzyzyzy{zzyzzzy{zz{yzzy{|zyzzz{yzyzzz{zyz{yzzzyzyzyzzyzyz{zzzyzyy{zzzyzzy{zz{yzy{{zzyzyyyyyzyz{z{zyzyzy{{yzyy{{yzyy{y|y{z{{zy|{{{yzy{zzzyy{zyzyy{z|{zzzyzyzz{zyzyzz{yzyzzzzyzzzyzzz{{zyzzz{yzyzzz{zyzzzzyyz{zzyzyzyzzzyzyzzzzxy{yzzzzyzzyzz{{yzyyzzzxy{yxyxy{zxz{zzzzzz{{zzzz{{{zzyzz|{{yzzzz|y{{zzz{z{zzyzzz{zyzz|{{zyzyzy{{zyzyy{{zyyyyz{{zyzzyz{z{yzyyzzzyyyzyzyyyz|{zzzzzzzz{zzzzyz{zzyzzzz{zz{zzzz{|zzzzz{zzyzzz{zyz{yz{zyzyzy{{zyzyz{{zyzyy{z{zyzzy{{z{yzy{{zzyzyzyzyzyz|{zzzzzyzz{zzyzy{z{zy{z|zyz{{zz|z{{zyz{z{yzy{zz{zy{z{zzz{{zzzzzz{{zzzzyz{{zz{zz{{yzzzzzz{{zzzzz{zzy{zz{zy{z|{zyyyyyyzyzyyyz{zyzyzy|zyzzzzy|zz{yzy{{yyyzyzyyyzyy{zzzyzyzyzzzyzyyzzzzyyyzzzzyzzyzzz{yzyyzzzxyyzyyxyyzxz{zyzyzy{{zyzyyz{{zyyyy{{zyzzyz{z{yzyyzzzyyyzxzyyyz|{{zzzzzz{{zzzzyz{{zzyzzz{zz{zzz{{|zzzzz{zzyzzz{zyz{|{z{zzzzzz{{zzzz{z{{zzzz{z{z{zz{z{{zzz{{{zzzz{z{zzz{{z{{zyyyyyyzzzyyyz{zzzyz{y{zzzzzy{z{{yzy{{yyyz{zzyyz{z{zzyzyzyzzzyzyzy{{zyzy{z|{zy{yz|{{{zyz{xyyzy{zzzzy{{{zzzzyzyzz{zzyzz{z{zzz{z{z{z{zyzy{{zzz{{{yzz{zz{zz{z{zzzzzzzzz{zzzzz{z{zzz{z{z{z{zzzz{{zzz{{{zzz{zz{zz{z{z{zzzzzz{{zzzzz{{{zzz{z{{{z{zzz{{{zzz{{{zzz{zz{zz{z|{{{{z{z{{{{{z{z{{{{{z{{{{{{{{z{{{|{z{{{{z{z{z{{{z{{|{{zz{y{yzz{z{y{z{{{z{z{{|{{z{{z{|{{{z{{{{y{z{zz{zz{{{z{{yzyzy{{{yzyy{{{{yzzy|{{{z{zy|{z|zyz{{zyyz{zzyyz{|{{{yzyzy{{{yzyy{{{{yzzy|{{{z{zy|{z|yyz{{zyzz{zzyyz{|{{{zzzzz{{{zzzz{{{{zzzz|{{{z{zz|{z|zzz{{zyzz{zzyzz{|{{{{{{{{{{{{{{{{{{{{{z{|{{{z{{{|{{|{{{{|{{zz||{{zz{|{{{z|z|z{{|z|z{||{|z{{z||{{{{|z|{{|z|z|{|z{{|{zz{{{|{yyyzyyzzzzyzzyzyzyzzzyzyyzzzzyyyyzzzzyzzyzzz{yzxyzzzxyyyxyyyzxz{zzzzzz{{zzzzyz{{zzyzzz{{zzzzzz{{{zzzyz{zzyzzz{zzz|{zzyzyzyzzzyzyz{zzzyzzy{zzzzzzy{zz{yzy{{zzyzyzyyyzz{z{zyzyzy{{zyzyyz{{zyy{yz{{z{{zyz{{|yzyyzzzyy{zzzyy{|{zzzyzyzz{zzyzy{{{zzyzz|{{zz{yz|{{|zyz{x{yzyzzy{zyz{{zzzzz{z{zzzyz|z{zyzz{|zzzzzz{|z{zzzzz{{zzzz{yyzzzzz{zzzzzzz{zzzzzzz{zzzz{zzzz{zz{zz{zzzzzzyzzyy|yyzyz{zy{zzzzz|{yzzz{z|{zzzz{zz{z{zz{z{|zzzz{zyzzzz{{{zzz{zy{z{{z{z{z{zz{{z{zzzz{{z{z{{z{{y|{z{z{{z{zzz|zyzzz{{zyyy{{zyyyyzz{yyxyzzz{yyyy{zyzzzyy{zz{zyyyzzyyyyz|yyyyz{zy{zzzzz{{zzzz{z{{zzzz{z{{zzzz{z{{{zzz{zyzzzz{yyzzzz{y{zzzzz{{zzzz{{z{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{yzzzzzz{zzzzzz|z{zzzz{|zzzzzz{|z{zzzzz{{zzzz{yyzzzzz{{zzzzzz|{zzz{z|{zzzz{zz{z{zz{z{|zzzz{zyzzzz|{{zzz{zy{z{zzz{z{zzz{{z{zzzz{{z{z{{z{{z|{z{z{{z{zzz|zzzzz{{zyy{{zzzzzzzz{zzzzzz{zyzz{zzzzzzz{zz{zzzzzzyzzzz|yyzzz{zyzzzzzzz|{zzzzz|{zzzz{z|zzzzz{z{{zzzzzzyzzyz{{{zyzzzy{zzzzzz{{zzzz{{{zzzz{z{{zzzz{z{{{zzz{zyzzzz{yyzzzz{y{zzzzz{{{zzzz{{{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{y{zzzzz{|{zzzz{||zzzz{|z{z{zz{|{|zzzz{{{zzzz{{{zzz{z{{z{z{z{z{z{zz{{z{zzz{{z{z{{z{{z|{z{z{{z{zzz|zzzzz{{zz{{{zzzzz{{{zzzz{{{{zzz{{{{zzzz{{z{zzzz{{yzzzz|yyzzz{zyzzzzzzzz{zzzyzzz{zyz{zzzy{zz{zz|zzzzzzyzzzz{yyzzz{zyzzzzzzz|{zzzzzz|{zzzzz|zzzzz{z{{zzzzzzyzzzz{{{zzzzzy{zzzzzz{{zzzz{{{{zzzz{{{zzzz{z{{{zzz{zyzzzz{yyzzzz{y{zzzzz{|{zzzz{{|{zzzz{{{z{zz{{{|{zzz{{yzzzz{{{zzz{{y{z{z{z{z{z{zz{|z{zzzz{|zz{{z{|z|{z{z{{{{zzz|zzzzz{{{{{zzzzzz{|{zzzzz||{zzzz{||zzzz{|{{zzzzz{{zzzz|{{zzz{z{{zzzzz{z{zzzz{|z{zzzz{|z{z{y{zz{zzzz{{{zzzz|yyzzz{z{{zzzzz{z{zzzz{|z{zzzz{|z{z{z{zz|zzzz{{{zzzz|yyzzz{z{{zzzzz{|{zzzz{||{zzzz{||{z{zzz{{zzzz{{{zzzz|{{zzz{z{{zzzzz{{{zzzz{|{{zzzz{|{{z{zz{{{{zzz{{{zzzz|yyzzz{{{|{|{|{{{|{|{|||{|{|z{||{|z{|{|||{{|{|{{|{|{|{y{|{{{{{{z{zzz{{{z{zz||{{z{zz||{{z|{z||{|z{z|{{zz{z|yyzzz|{{{z{z{zz{{z{zz{z{{zzzz{z{{z{{z{z{|{{z{zz{zzz|zzzzz{{y{z{z{zz{{z{zz{z{{zzzz{z{{z{{z{z{|{zz{zzzzzz|zzzzz{{z{z{z{zz{{z{zz{z{{zzzz{z{{z{{z{z{|{z{{zz{zzz|zzzzz{{z{z{z{zz|{z{zz{z|{zzzz{z|{z{{z{z{|{z{zzz{zzz|{{zzz{{z|{|{|{{||{|{||{||{|{{|{||{{|{|{{|{{|{|{|{|z|{{{|z{{yyyy{{yy{{z{{{{{zyyyyyzz{yyyyzzz{yyzy{zzzz{yy{zz|zyyyzzyyyyz{yyyyzzyzzzzzzzz{zzzzzzz{zzzz{zzzz{zz{zz|zzzzzzyzzyz{yyzzzzy{zzzzz{{{zzzz{{{{zzzz{{{{z{zz{{{|zzzz{zyzzzz{yyzzzzyzzzzzz{|{zzzzz||{zzzz{||zz{zz{|{|zzzzz{{zzzz{{{zzzz{|z{zzzz||z{zz{{||z{zz{{||z|{z{{{|{z{z{{yzz{z|{{zzz|y|{|{|{{||{|{||{||{|{{|{||{{|{|{||{{|{|{{~|{|{|{|{|{{{~~||||||}|||||||}|||||||}|||||||}|{{||||}|}|||||}{||||{}z|||{|{{||{|{||{||{|{{|{||y||{|{|{{{|{|{|||{|{|}y{|{|{}{||{{{{{||{{{{{{||{{{{{{||z|{{{{|{{{{{{{||{{{{|}z{{{|{}z}}{}}{{}}{z{}}{}}{}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}~|||||}~|||{|}}~|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~z{|{||}{}{}z}}z}z}}{}}{}{{}{}}z|}{}{}}{{}{}{||}{}{|}z{}{|{}z~|{|{|{{|{|{||{||{|{{|{||{||{|{||{{|{|{|~|{|{|}|{|{|{~~|||||||}||||||}|||||||}|||||||}|{{||||}|}|||||}{||||{}z||{|{|{{|||{||{||{|{{|{||z||{|{|{{{|{|{|||{|{|}z{|{|{}{}}{}{}{{}}{{}}{}}{}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}~||||||}~||||}}~|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~{|{|||{{{{{{||{{{z{|{{z{{{{||z|{{{{|{{{{{{{||{{z{|}z{z{|{}z|}{}{}{{}}{}{}}}}z}{{}{}}z|}{}{}}{{}{}{||}{}{|}z{}{|{}z~|{|{|{{~|{|{||{|{|{{|{||{||{|{||{{|{|{|~|{|{|}|{|{|{~~|||||||}|||||||}||||||}|||||||}|{{||||}|}|||||}{||||{}z}}{}{}{{}}{}{}}{}}}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}~||||||}~|||||}}~||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~|{|||{|{|{{||{|{||{||{|{zz|{y||{|{|{{{|{|{|||{|{|}z{|{|{}z||{|{|{{||{|{||{||{|{{z|{z||{|{|{{{|{|{|||{|{|}z{|{|{}z|}{}{}{{}}{}{}}{}}{}{{}}}z|}{}{}}{{}{}{||}{}{|}z{}{|{}z~|{|{|{{~|{|{||{~|{|{{|{|{||{|{||{{|{|{|~|{|{|}|{|{|{~~}}|}|}|}}}|}|}}}}}|}||}}}||}|}}}}{|}|}}|}}|}||}||}||{}}~||||||}~|||||}}~|||||}}~||||}}~|}|||}}~~||||}}}||||}~~{}|||||||}|||||||}|||||||}|||{zzz|{{||||}{}|||||}{||||{}{|||||||}|||||||}|||||||}|||{|zz|{{||||}|}|||||}{||||{}{|||||||}|||||||}|||||||}||||||{|{{||||}|}|||||}{||||{}{|}|}|}|}}}|}|}}}}}|}||}}}}||}|}}}{|}|}}|}}|}||}{|}||{}{~||||||}~||||||}~||||||}~||||||}|{||||}|~|||||}|||||{~~~|}|}|}}~|}|}|}}~|}|}}}}~|}||}}}~}}|}}}~~|}|}}}}}|}|}~~}}|{|{|{z}|{|{||z}|{|{{|z}|{{|{|z}|{|z|z|}|{|{|}|{|{{{}}}|{|{|{{}|{|{||{}|{|{{|{}|{||{|{}|{{{|{|}|{|{|}|{|{|{}}}|{|{|{{}|{|{||{}|{|{{|{}|{||{|z}|{{||{|}|{|{|}|{|{|{}}}|{|{|{{}|{|{||{}|{|{{|{}|{||{|{}|{{|{{|}|{|{|}|{|{|{}}}}{}{}{{}}{}{}}{}}{}{{}{}}{|}{}{}}{{}{}|}}{}{|}|{}{|{}}~}|}|}|}~}|}|}}}~}|}||}}~}||}|}}~}||}|}}~}|}|}}}|}|||~~{z{|}yz{|}y{|}z|}z}|}||{{{{z{||{{yz{{||yz{{{{||z|{{{{|{{{{y{{||{yz{|}zz{|{}z||{{{{{{||{{{z{{||{z{{{{|{z|{{{{|{{{{{z{||{{z{|}z{{|{}z||{|{|{{||{|{||{||{|{{|{||z||{|{|{{{|{|{|||{|z|}z{||{}z}||||||}}||||||}}||||||}}||{|||}}|{||||}|}||||{}||||{}}|}{}{}{{}}{}{}}{}}{}{{}{}}z|}{}{}}{{}{}{||}{}{|}|{}{|}|~}~}~}~{~}~}~}}~~}~}~~}~~}~|}~}~~}{~}~}~~~}~}~|}|~}~|{~{{{|}z}|}|~|}|}|~}}|{|~}|{}|~}|}||z}|}|}~}|}|}y||}|}|z}|{}|}|||||{|{{||||{|{|||{||{|||||||||{}||||{|{|||{|{z}|{|{|{{{||{{{{{||{{{|{||{{||||{|||||{{}|||{{{y||{{{{z}|{{{{}}|}}|}|}|}~}|}|}~|{}|}~|}||}~|}|}|~|}|}z~|}|}|{}|{}|}{{|{||{|{||z{|{||{|{{||{|{|||{|z|}|z|{|{z|{z|z|~}|{{|{{{|}z||}|}|}}|}|~|}|}|~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}}|}|~|}}|~}}|{|~}|{}|~}|}|||}|}|}~}|}|}z||}|}|z}|{}|}||{|||{|{||||{|{|||{||{|||||||||{}||||{|{|||{|{z}|{|{|}}|}|}|}|}}~}|}|}~|{}|}~|}||}~|}|}|~|}|}z~|}|}|{}|{}|}{{|{|~|{|{||{|{||||{{||||{|||||{|}|||{|{z||{|{|~}|{{|{{{|{|||{|{||{|{||||{{||||{|||||{|}|||{|{~||{|{|z}|{{|{{|}z||}|}|{|}|}|~||}|~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}}|}|~|}|}|~}}||~}|{}|~}|}|||}|}|}~}|}|}z||}|}|z}|{}|}}}|}|}|}|}|}~}|}}~|{}|}~|}||}~|}|}|~|}|}{~|}|}|{}|{}|}{{|{|~|{|{|~|{|{|||{{||||{|||||{|}|||{|{z||{|{|~}|{{|{{{|{|||{|{||~{|{|||{{||||{|||||{|}|||{|{~||{|{|z}|{{|{}}|}|~|}|}|~}}|}|~}{}|~}|}||~}|}|}~}|}|}{||}|}|z}|{}|}|}{||}|}|}|}|}|~|}|}|~}}}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}}|}|~|}|}|~~}|}|~~|{}~~|}||}~|}|}~~|}|}z~|}|}|{}|{}|}|||||~|||||~|||||~||{||||||||||||}||||||z||||||~}|{|||{{|{|||{|{||~{|{||~|{{|||{|||||{|}|||{|{~||{|{|z}|{{|{}}|}|~|}|}|~}}|}|~}|{}|~}}||~}|}|}~}|}|}{||}|}|z}|{}|}{{{{||{{{{|||{{{||||{{||{{|||||{{}|||{{{z||{{{{y}|{{{{}z}}}}}}}}}}}}~}}}}}~}{}}}~}}|}~}}}~|~}}}}~~}}}}}|~|}}}}}}|}|~|}|}|~}}|}|~}|{}|~}|}||}|}|}~}|}|}z||}|}|~}|{}|}||||||||||||~|||||~|{|||~||||||||}||||||~||||||z}|{|||}}|}|~|}|}|~}}|}|~}|{}|~}|}||~}}|}~}|}|}{||}|}|{}|{}|}||{|||{|{|||||{|||||{|||||||||{{{}||||{|z|||{|{{}|{|{|||{|||{|{|||||{|||||{|||||||||{{{}||||{|z|||{|{{}|{|{|}}}~}~~~}~}~~~}~}~~~~~}~~~~}|~~~~}~~~~}~}~~~}~}~~~|~}~}}}|}|}|}|}|}~}|}|}~|{}|}~|}||}~|}|}||}|}~~|}|}|z}|{}|}}}|}|~|}|}|~~}|}|~~|{}|~~|}||~~|}|}~}}|}{~|}|}|z}|{}|}}}|}|}|}|}|}~}|}|}~|{}|}~|}||}~|}|}||||}z~|}|}|z}|{}|}}}|}|}|}|}|}~}|}|}~|{}|}~|}||}~|}|}|z|{}z~|}|}|z}|{}|}}}|}|}|}|}|}~}|}|}~|{}|}~|}||}~|}|}|z|{|z~|}|}|y}|{}|}}}~}~~~}~}~~~}~}~~~~~}~~~~}|~~~~}~~~~~}~}~~}~}~~~|~}~}}}}}}~}}}}}~}}}}}~}}}}}~}}}|}~}}}}~~}}}}}||}}}}~~|{}}}||}|}~}|}|}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}}|}~~|}|}|||}|}~}|}|}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}||}~~|}|{|||}|}~}|}|}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}|}}~~|}|}|||}|}~}|}|}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}|}|~~|}|}|}z}{}|z}|{z}|{{z}|{{{{{{{{|zy{{{{|{zy{{|||{{{||{{|{||{{}}||y{{z{zzy{z|{|{zz{|{|z}|{|{|z}{|z|z}|{{|z}|{{|z}|{|}}||{|{||{|{|}}{{{|{||||}||||z|}||||z}|||||z|||{|}||||}}{||||{{||||{}{{|||{{||{||{|{z{|{|{|z|||{|{||{{|{||{|}}|{{|{z{y|{|z|{|{|{{{{{{|z{{{{{|{z{{{|||{{{||{{|{|{{{}}||{{{z{zz{{z|{|{z{{{}{}|}{}{}{}{}{}{}}|{}{}}{{|{}}z}}}|}{}{z}z}z}z|{|{}z{{|{|{|{|{|{|{|{|{|||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{{{{{{{|{{{{{|{z{{{|||{z{||{{|{||{{}}|{{{{z{zz{{z|{|{z{z{|}y{{|{|{}|{{|{}{|{|{}||{|{}|{{|{}|{|}}||{|{||{|{|}}{|{|{|||||}|||||}||||z}|||||z|||{|}||||}}|||||{{||||{}{{|||{{|{|{||{|{{|{|{|z|||{|{||{{|{||{|}}|{{|{z{z|{|z|{|{|{{{}{}{|}{}{}}{}{}{}}|{}{}}{{|{}}{}}}|}z}{z}z}{}z|{|{}{{{|{|{~|{|{|{{|{|{|||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{{{|{|{||{|{|{||{|{|||z|{||{{|{||{|}}||{|{z{z|{|z|{|{|{{|}z{{|{|{}|{|{|{}{||{}||{|z}|{{|{}|{|}}||{|{||{|{|}}{|{|{|||||}||||||}||||}|||||{|||{|}||||}}|||||{{||||{}{||||{{}{}{|}{}{}{}{}{}}}|{}{}}{{|{}}{}}}|}{}{z}z}{}z|{|{}{{{|{|{~|{|{|{~{|{|{||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{|||||}||||||}|||||}||||}|||{|}||||}}|||||{{||||z}{|||||||||}}|||||}}||||}}|||}}||{{}}|||}}|||||||||||}}{{||||}z{{|{|{}|{|{|{}{|{|{}||{{}|{{|{}|{|}}||{|{||{|{|}}{|{|{||}|}}|}|}|}}}|}|}}}}||}}}|{|}}}|}}}|}|}|{}|}|}{}{||}|{{|{|{~|{|{|{~{|{|{~||{|{|{{|{||{|~}||{|{||{|{|~~{|{|{|||||}||||||}|||||}|||||}||{|}||||}}|||||{{||||z}{||||{{|{|{||{|{|{|{|{|{|||{|{||{|{||{|}}||{|{y{y|{|{|{|{|{{{}{}{|}{}{}{}{}{}{}}|{}{}}{|{}}{}}}|}{}{|}z}{}||{|{}{}|{{}{}{}}{}{}{}{}{}{}}|{}{}}{{|}}{}}}|}{}{|}{}{}}}{|{}{|||||}~|||||}~||||}~||||}~||{|}|||~}|||||||||||~~{|||||||||}||||||}|||||}|||||}|||{|}|||}}|||||{{||||z}{||||{{|{|{||{|{|{|{|{|{|||{|{||{{|{|||}}||{|{z{z|{|{|{|{|{{{{{{{|{{{{{{|{{{{{|||{{{||{{|{||{}}||{{{z{z{{{z|{|{{{~~}~}~~}~}~}~~~}~}~~}|~}~~}~{|~~}~}}~}~}~|}~}~}~~{|~}~}||}|}}~}|}|}}~|}|}}~}||}}~}||}}~}|}~}}|}|}}|}|}~~|||}|||}|}}}}|}|}}}|}|}}}}||}}}}|{|}}}|}}}||}||}|}|}}}{||}|{{}{}{}}{}{}{}{}{}{}}|{}{}}{{|{}}{}}}||}{|}{}{}}}{|{}{{{}{}{}}{}{}{}{}{}{}}|{}{}}{{|{}}{}}}||{{|}{}{}}}{|{}{{{}{}{}}{}{}{}{}{}{}}|{}{}}{{|{}}{}}}||{z|}{}{}}}{|{}{}}|}}}~|}|}}}~}|}}}~||}}}~|}}}}~|}|~}~|}|}}}|}|~~}|}|}||||}}~||||}}~|||}}~|||}}~||}}}~|||~}~||||}||||~~}||||||||}}~||||}}~|||}}~|||}}~||}}}~|||~}~||||}|{||~~}||||||||}}~||||}}~|||}}~|||}}~||}}}~|||~}~||||}|{||~~}||||||||}}~||||}}~|||}}~|||}}~||}}}~|||~}~||||}|{|{~~}||||}}{|{||{|{|{|{zz{z{z{{z{z{z{|{{z{z{|{|{z{|{|}|{|{{|}|y{zzzy{z{{|z}|{zyyzz{yzzz{zz{z{z{{zzz{zz{z{{z{zz{zz|zz{z{|}zz{zzzz{z{zzz{z{z{{{||}{{{{z|}z{{{|z}{{{||z{{|||}z{{|}z{{{zzy{{{}z|{{{{{{{{|{{{{{{z{|{{{{|z|{{{|{{{|||{|{{|}|z{{|zzy{{{zz{{{{zz{z{{{z{z{z{||{z{z{|}|{z{|{|}|{|z{|}|{{zzzz{z{{|z}|{z{{{{{z{{{{||{z{{{||{}{{{|{}{|||{}{y|}|{{{zz{y{y{zz{{{{{{{{{|{{{{{|{|{{{{|{|{|{|{|{|}|{|{{|}|{{{|zz{{{{|z}|{{zz{z{z{{{z{z{|{{z{z{|{{{z{|{|||{z{{|}|z{zzzzzz{{zz{{{zz{|}zzz{z{zz{z{{{zzz{zz{z{{z{zz{zz|zz{z{|}zz{zzzz{z{zzz{z{z{{{{||}{{{{|}z{{{|z}{{{||z{{|||}{{{|}|{{{zzz{{{}z|{{{{{{{{{|{{{{{{{||{{{|{|}|{|{|{|}|{|{{|}|z{{|zz{{{{|z}|{{{{{{{z{{{{{|||{{{||{}{{{|{}{|||{}{{|}|{y{zz{y{{{zz{{{{zz{z{z{{z{z{{{{{z{{{|{{{{{|z~||{|{{~}|{{zzzz{z{{~~{{{z{{{{||}{{{{||}|{{||}|{|||}|{|}|}|{{|}|{{{zzy{{{}||}|{{{{{{{|{{{{{{|{|{{{|{|{{z|{|{|||{|{{|}|{{{|zzz{{{zz{{{{{|}z{{{{{z{{{{{{{{|{{{{{|{{{{z|{|||{|{{|}|{{{z{z{{{{{z{{{{{{{{||}{{{{||}||{{|}|}|||{|{|}|}|{{|}|{{{zzz{{{}||}|{{{{{{{|{{{{{||{|{{{||}{{{|{}{|||{}{{|}|{{{|z{z{{{zz{{{{zz{z{z{{z{z{{{~{{z{{{{{{{{|{~||{|z{~}|{{zzzz{z{{~~{{{z{{{{{z{{{{{||{||{{||{}|{|{}{{}|{}{{|}|{{{zz{{{{{|z}|{{{{{{||}{{{{||}z{{{||}z{||}z{||z}z{{|}|{{{zzz{{{}z|{{{{|}zzz{z{z{{z{z{{{||{z{{{|}|{{|{|}|{|{{|}|z{zzzz{z{{|z}|{z{{{{||}{{{{||}|{{{||}}{{||}{|||}}{{|}|{{{zz{{{{}z|{{{{{{{{{|{{{{{{|{~{{{{|{~{{{|{{~||{|{{~}|z{{|zz{{{{~~{{{{{{{{||}{{{{||}|{{{||}|{{||}||||}|{{|}|{{{zzy{{{}y|{{{{zz{z{z{{z{z{z{~|{z{z{~}|{z{~z}|{~z{|}~z{zzzz{z{{~~}|{z{{{{zz{{{{{||{||{{||{}{|{|{}{{|{}{{|}|{{{z||z{{{|z{|{{}z{{{{{|{{{{{||{|{{{||{}{{{|{}{|||}{{|}|{{{||{{{{{z|{{{{{{{{||}{{{{||}~{{{||}~{{||}~{~||}{{~}|{{{zzz{{{}~~{{{{{{{{||}{{{{||}|{{{||}|{{||}|{|||}|{|}|{{{zzz{{{}z|{{{{{{{{{|{{{{{{|{|{{{{|{|{{{|{|{|||{|{|}|{{{|zzz{{{zz{{{{{{~{~z{~{~{~|~~|~{~|~~}|~|~~{~}|~~{~}~{~{zz{~{~{~~}|~{}{{{{~|}{{{{~|}~{{{~|}~{{~|}~{~~|}~{{~}{{{{z{{{{}~~{{{{{{{{||}{{{{||}|{{{||}}{{||}}{|||}}{{|}|{{|z{{{{}y|{{{{{{{{{|{{{{{||{|{{{||{}{{{|{}{|||{}{{|}|{{|z{{{{{zz{{{{{{{{{z{{{{{||{|{{{||{}{{{|{}{|||{}{{|}|{{zz{{{{{yz{{{{||}|}|}}|}|}|}~|}|}|}~}|}|}~|~}|}~|}~}~|}|||}|}}~~}|}|||}|}|}}|}|}|}~|}|}|}~}|}|}~|~}|}~|}~}~|}|||}|}}~~}|}|||{|||}{|{|||}~|{|||}~}|||}~|~}|}~|{~}~|{|||||{}~~}|{|||{|||}{|{|||}~|{|||}~}|||}~|~}|}~|{~}~|{||||{{}~~}|{{||{|||}{|{|||}~|{|||}~}|||}~|~}|}~|{~}~|{||||{|}~~}|{||||{z{{z{{{{z{{{|z{z{{{|{{|{{{|{||{|{|{||{|{||||}||{{|z|{z|{zz{|{zzzzzzzzzzzzz{zzyzzz{zzzzzz{zzzz{zzzz}|zzzzzzzzz{zzyzzyyyz{yzzzzzzzzzzzzzz{zzzyzzzz{zzzz{{{zz{z{|}zzzz{{zzzzy{z{zz{{z{{|z{z{{y|}{z{{{z}z|{{{|z{|{|}{zz|}zz{{yyy{z|}z|{z{{{z{{||{z{{{z{{|{{{|{||{|{|{||{|{||||}||{{|z|{z|{zz{|{{{z{z{|{z{z{z{}|{z{z{||}|{z{||}|{|zz|}|z{{zzz{zz{|z}|{{{z{{{|{z{{{|}{|{{{|}||{|{|}||{|}||{|}||{{{{|{z|}{|{|{{{z{{{||z{{{|{}z{{{|{||{|{|{||}|{|z||}|z{{|yz{z|{|z}|{{{z{z{zz{{z{z{{z{z{z{||{{{z{||{|{{zz|}|z{{zzzzzz{zz{z{yyzzyzzzzzzzzz{zzzz{zz{y{z{z{zz{z{{{zz{{{|}{{zz{{zz{zz{z{zz{{z{{{||{z{{|}{|{{{z}||{|{|{||{|}||z|}||{{zy|{z|}z|{|{{{z{{{||{z{{{{}|{{{|{||}|{|{||}|{|z||}|z{{|zz{z|{|z}|{{{z{z{zz{z{}{z{z{}{|{z|{|{|{}}{|{}zz|}|zz{zzzzzz{zz{z{{{z{z{z|{z{}{z{|{}{|{|z{|{|{}}{|{}|z|}||{zzz|{zz{zz{|{{{z{{{||{z{{{|}}{{{|}||{|{|}||}|}|z{|}|z{{{{y{z|}||}|{{{z{{{|z{z{{{|{{z{{|{||{{z|{||{|{|z||}|z{{|zzzz|{zz{zz{|}z{{z{z{z|{z{z{z{{|{zz{||{|zz{||{|{||{|}||{z{{|{zz{{z{|{{{z{{{||{z{{{|}}|{{{}||}|{|{||}|}|zz|}|z{{yzz{z|}||}|{{{z{{{|z{z{}{|{{z{}{|||{|{|{}}{|{}z||}|z{{|zzzz|{zz{zz{{z{z{zz{z{z{z{{z{z{z{~{{{z{|~{|{|z{~}|zz{{{zzzz{~~{z{{{z{z{z|{z{z{z{{|{z{z{~{|{z{~|{|{~|z|}~|{zzz|{zz{~~{|{{{z{z{z|{z{}{z{}|{}{|{|z|{|{}}}|{}zz|}|z{{zzz{zz{|z}|{{{z{{{|z{z{{{|}{z{{{|}z|{{|}{|{z}{z{|}|z{{{{z{z|}{|{z{|}z{{z{{{z|{z{{{z{}|{{{z{||}|{{||}|{|z{|}|z{{{{z{zz{|{}|{{{z{{{|z{z{}{|}{z{}{|}z|{|{|}}{|}}zz|}|z{{zzz{z|}z|{z{{{z{{{|z{z{{{|{{z{{{|{~~{{{|{~{|{|z|~}|z{{|{zzz|{~~{zz{{z{z{z|{z{z{z{}|{z{z{~~}|{z{~}|{~zz|}~z{{zzz{zz{~~}|{{{z{z{z|{z{}{z{{|{}{|{||{|{|{}}|{}|z|}||{zz||{zz{|z{|{}{{{z{{{|z{z{}{|{{z{}{|{||{|{|{}}{|}z||}|z{{||zzz|{{|{zz{{z{{{|z{z{{{|}{z{{{|}~~{{{|}~~{|}z{~}|z{{{{z{z|}~~{z{{{z{{{|z{z{{{|}{z{{{|}||{{{|}||{|}|z|}|z{{zzz{z|}z|{z{{{z{z{z|{z{}{z{}|{}{|{||}|{|{}}}|{}||}||{{{{|{zz{|z}|{~~z~z{z|~z~}~z{}|~}~|~~~}|~|~~~}|~~z{}~z~{{{z~zz{~~}|~}{{{~{~|z{{~}~|}{z~}~|}~~~|~|}~~~|}~{{~}{{~{{z{{|}~~{z{{{z{{{|z{z{}{|}{z{}{|}||{|{|}}}{|}}z||}|{{|{z{z|}{|{z{{{z{{{|z{z{}{|{{z{}{|{||{|{|{}}{|{}z||}|z{|{zzz|{{z{z{{{|{|{||{|{|{|}}|{|{|}~~}|{|}~~}|}~||~}~|{|||{||}~~}|{}}|}|}||}|}|}|}}|}|}|}~~}|}|}~~}|}~||~}~|}}||}||}~~}|}}}|}|}||}|}|}|}}|}|}|}~~}|}|}~~}|}~||~}~|}}||}||}~~}|}{{|{|{||{|{|{|}}|{|{|}~~}|{|}~~}|}~||~}~|{{|||||}~~}|{{{|{|{||{|{|{|}}|{|{|}~~}|{|}~~}|}~||~}~|{{|||{|}~~}|{{||||{z{zz{z{z{{z{z{z{||{z{z{|}|{z{|}|z|{|}|{z|}|zz{zzz{{|}z|{z|{z{z{}|y{{z{zz}z{{{z{{z|{{{|z{}|{|{zz}|zz{yyy{{z{|z}|zzzzzzzzzzzzzzzzzyzzz{{zzzz{zz{zz{{zzz}|{zzz{{zzz{z{yzyyyz{yzzzzzz{zzzzzzzz{zzzyzzz{zzzzzzz{zzzzz|}zzzzzzzzzzyzz{zzz{z{{{z{z{z{||{z{z{z}|{z{|{|z|{|}|{x|}|zz{yyz{{|}z|{z|{{z{z{|{{{z{z|{|{{{|{|{|{|{|||{|{|{||}||z{|z|{{|{zz{|zz{z{z{z{}{z{zz{|{}{z{}{|{|{|z}{|{}zz|}|zzzzzz{{z{zz{z|{{z{z{{{{{z{||{|{{{|}|{|{|}|z|{|}|{z|}||z{zz|{{|}z|{||{{z{z{}|{{z{||}z{{{|{|{|{|{|||}|{|{||}|zz{|yz{{|{|z}|zzzzz{zzzzz{zz{z{y{zz{{z{zz{z{{zz{{z{{}|{{zz{{zzz{z{zzyyzzyzz{z{z{{z{z{{z|{z{z{z{|{z{{{|z{{|{|{z|}|zzzzzz{{z{zz{z|{{z{z{{|{{{z||{|{{{z}|{|{|{|z|{|}|{z|}||z{zy|{{|}z|{||{{z{z{}|{{{z{|}|{{{|{|}|{|{|||}|{|{||}|{z{|{{{{|{|{}|zz{z{z{{z{z{z{z{z{z{z{|{z{{{~z|{|{~zz|}~{zzz{{{{z{~~{z|{{z{z{{|{}{z{z||{}{z{}{|{|{|z}{|{}{z|}||zzzz|{zz{zz{||{{z{z{}|{{{z{||}{{{|}|{|{|}|z|}|}|{z|}|zz{zzy{{|}||}|zz{z{z{{z{z{z{||{zz{|{|{zz|{|||{|{|{||}|{z{|{{z{|{z{{z{|}z|{{z{z{{|{{{z{z|{|{{z{|{|z{{|z|{|{|{z|}||zzzz|{zz{zz{||{{z{z{}|{{{z{||}|{{{}|}|{|{|z|}|}|{z|}|{z{y{{{{|}||}|zz{z{z{{z{}{z{||{|{}{|}{|{|{z|}{|{}{||}|zz{|zzz{|{zz{z|{{z{z{{|{{{z{z~{|{{{z{{|{{{~z|{|{~{z|}~|zzz{|{zz{~~{||{{z{z{}|{}{z{zz}|{}{z{}|{|{|z}}|{}{z|}|zz{zzz{{z{|z}|z{{z{z{{z{{{z{||{z{{{|}|{{|}|z|{|}|{z|}|{z{z{{{{|}{|{z|}z|{{z{z{}|{{{z{zz}|{{{z{{}|{{|z{}z{|{z|}|{z{z{{{{z{|{}|zz{z{z{{z{}{z{||{|{}{|}}{|{|zz}{|}}{z|}|zz{zzz{{|}z|{zzz{z{z{{z{z{z{|~{z{z{|{~{z{|{|~{|{|{|~}|zz{|zzz{|{~~{z|{{z{z{}|{{{z{z|}|{{{z{|}|{{{||}|{|{z|}|zz{zzz{{z{|z}||{{z{z{}|{{{z{z~}|{{{z{~}|{{{~z}|{~{z|}~{z{z{{{{z{~~}||{{z{z{{|{}{z{z|{|{}{z{}{|{|{|z}|{}{z|}||zzz||{zz{|{{|}{zz{z{z{{z{}{z{||{|{}{|{}{|{|{||}{|}{||}|zz{||zz{|{z|{zzz{z{z{{z{z{z{|~{z{z{|}~{z{|}~z~{|}{z~}|zz{zzz{{|}~~{z|{{z{z{{|{}{z{z|{|{}{z{}{|{|{|z}{|{}z|}||zzz{|{{z{z{{||{{z{z{}|{}{z{z|}|{}{z{}}|{|{|z}}|{}{|}||z{z{|{{z{|{}||{~{{{{}|~}~{{z~}|~}~z{~}|~|~~{~}|~~{{}~{{{z{{~{z{~~}|}zz~z~z~{z~}~z~|~~|~}~|}~~|~|}~z~~|}~~z~}{z~z{{{~|}~~{zzz{z{z{{z{}{z{||{|{}{|}}{|{|}||}{|}}{||}|z{|{{{{|}z|{z||{|{|{}|{|{|{|~}|{|{|}~}|{|}~|~}|}~{|~}~|{|||{{|}~~}|||{|{|{}|{|{|{|~}|{|{|}~}|{|}~|~}|}~{|~}~|||||{{|}~~}|||}|}|}}|}|}|}|~}|}|}|}~}|}|}~|~}|}~}|~}~||}||}}|}~~}|||}|}|}}|}|}|}|~}|}|}|}~}|}|}~|~}|}~}|~}~||}||}}|}~~}|||{|{|{}|{|{|{|~}|{|{|}~}|{|}~|~}|}~{|~}~||{|||{|}~~}|z{z{||||{{{{{{{z{||{{{{}{||{{{{}{|{{{y{}{|||{{{|}|y{y{zz{{{{zz{{{{{{{|{z{{{{{|z|{{{{{{{|{{{{{|{|||{{z|}|{{yzz|{{{{zz{}|{{{{z}|z{{{{{}z|{{{{{z||{{{{z}|||{{{z}|{{{yzz{{{{|z}z{zz{zzz{{z{z{{z{zz{zz{zz{z{{z{zz|zz{zz}|{z{zzzz{z{zzzyyzz{y{{z{zz|{z{zyz{|{zzz{{{|{z{{{{{|{|||zy{|}|yzzzzzz{{{zz{{{z{z{|{z{z{z{|{z{z{{{|{z{|{{{|{|}|z{y|}|{z{yzzz{|}z|{{{z{z{z{{{z{z{|{{{z{{z|{{{{{{{|{||~z{{|}~{z{zzzz{{{~~{{{{{{{{|||{{{{}{||{{{{}{|{{{{{}{|||{y{|}|{{y{zz{{{{zz{{{{{{{{|{{{{{{|{|{{{|{|{|{|}{{|{|}|{{z|}|{{{zz|{{|}z|{}|{{{{{z}|{{{{{}z|{{{{{z||{{{{{}|||{{{|}|{{{zzz{{{{|z}z{z{z{zzz{{{z{{z{zz{zz{zz{z{{z{zz|zz{zz}|{z{zzzz{z{zzzz{|}z{{z{z{z|{z{z{{|{z{z{{{|{z{{{{{z{|||z{z|}|{zzzzzz{{{zz{{{{{{{{|{|{{{{|{|{{{{{|{|{|{{{|{|}|{{{|}|{{{zz|{{|}z|{{{z{z{z~{{{z{z{{{{z{{{|{{{{{{z|{||~z{{|}~{z{zzzz{{{~~{{{{{{{{|{||{{{{}||{{{{}{|{{{{{}{|||{{{|}|{{z{z|{{{{zz{}|{{{{{|}||{{{{|}|{{|{|{|||}{{|}|}|{{{|}|{{{zzz{{|}||}{{{{{{{|{{{{{{{|{{{{{{|z{{{{{{|{|||{{{|}|{{{z{z{{{{z{{{|}z{{{{{{{|{|{{{{{|{|{{{{|{|z{{{{|{|||{{{|}|{{zzz|{{{{zz{}|{{{{{|}||{{{{|}||{{{|}|||{{{|}|}|{{{|}|{{{yzz{{|}||}}|{{{{{|}||{{{{|}||{{{|}||{{{{|}|||{{{|}|{{{yzz{{{{|y}{{{{{{{~{|{{{{{~{|{{{{{{|{{{{{|{||~{{z|}~{{{zz|{{{{~~{}|{{{{{|}||{{{{}}||{{{{}||{{{{}}|||{{{|}|{{{{zz{{{{|z}{{z{z{z|{{{z{z{|{{{z{|{|{{|}{{|{|}|z{z|}|{z{zzzz{|}z|{|}z}|{{{{{z}||{{{{z}||{{{{z}||{{{z}z||{{{|}|{{{zzz{{{{|z}{{{{{{{|{||{{{{}{||{{|{}{|{|{{}{|}{{{{|}|{{{{zz{{|}z|{{{{{{{{|{|{{{{{|{|{{{{{|{|{{{{|{|||{{{|}|{{zzz|{{{{zz{}|{{{{{|}||{{{{|}||{{{{|}||{{{|}|||{{{|}|{{{zzz{{{{|z}}|{{{{{~}||{{{{~}||{{{{~}||{{{{}||~{{{|}~{{{zzz{{{{~~}{{{{{{{|{||{{{{}{||{{{{}{|{{{{{}|||{{{|}|{{{{||{{{{|z{}z{z{{{{{|{||{{{{}{||{{|{}{|{|{{{}{|{{{{|}|{{z||z{{|{z|{{{z{z{z~{z{z{z{~{z{z{|z~{z{|}{z~{|}z{z~}|{z{zzzz{|}~~{{{{{{{{|{||{{{{}{||{{{{}{|{{{{{}{|||{{|}|{{{{zz{{{{zy{{{{{{{{|{||{{{{}{||{{{{}{|{{{{{}{|||{{|}|{{{{z|{{{{zz{}|{{{{{|}||{{{{}}||{{{{}}||{{{{}}|||{{|}|{{{{z|{{{{|y}}~{{{{{~}|~{{{{~}|~{{{{~}|~{{{{~}|~~{{{}~{{{{z{{{{{~~}}{~{~{~{~~|~{~{~~~|~{~|{~~|~|}~{~~|}~{~{~}~{~{zz{~|}~~{}||{|{|~}|||{|{~}|||{||~}|||}{|~}|}~|{|~}~|{||||{|}~~}}||{|{|~}|||{|{~}|||{||~}|||}{|~}|}~|{|~}~{{|||{{|}~~}}||{|{|~}|||{|{~}|||{||~}|||}{|~}|}~|{|~}~{|||||{|}~~}}}|}|}|~}|}|}|}~}|}|}||~}|}|}}|~}|}~|}|~}~}|}|||}|}~~}}}|}|}|~}|}|}|}~}|}|}||~}|}|}}|~}|}~|}|~}~}|}|||}|}~~}{{{z{{z{||||{|{|{|{|{|{|||{|{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|{{{{{|{{{{{z||{{{z{{||{{{|{{{|{|{{{{||}}{{zz{z{z{|{|z|||{|{|{z{|{|||z|{|{{||{|{||{||{|{{|{{|}}|{|y{z{|{|{|z|||||||}|z|||||}z||||||z|||||||}|{||||{}}||||{{|||{{}{}|{||{}z|{|{||}z|z|{{|}z|{{|{|}z|{{|{||}}|{|{||{|{{{}}{z{|}y|{{{{{|{{{{yz||{{yz{{||{{{|{{||{|{{{y||}}{yzz{zzz{|{|z~|{|{|{{|{|{|||{|{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|}{}{}{}}{}{}}}{}{}{{}}{}{|}{}}{|{{}z}|}}}{}z}z{}{|{|z||{|{|{|{{|{|||z|{|{{||{|{||{||{|{{|{{|}}|{|z{z{|{|{|z||||||||}||||||}z||||||z|||||||}|{|||||}}||||{{|||{{}{}|{|{|{}{|{{||}{|{|{{|}{|{||{|}{|{{|{||}}|{|{||{|{|{}}z{|}y|{{{{{{|{{{{{||{{{z{{||{z{|{{||{|{{{{{|}}{{zz{z{z{|{|z||||||||}||||||}|||||||}|||||||}|{|||||}}||||{{||||{}z~|{|{|{~{|{|{||{|{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|}{}{}{}{}{}{}}}}{}{{}}{}{|}{}}{|{{}{}|}}}{}z}z{}{|{|z||||||||}|||||||}||||||{|||||||}|{|||||}}||||{{||||{}{}|{|{|{}{|{|{||}{||{{|}z|{||{|}{|{{|{||}}|{|{||{|{|{}}{|}z||{|{|{|{|{|{|||{|{|{||{|z||{||{|{{|{||}}|{|z{z{|{|{|z||{|{|{|{|{|{|||{|{|{||{|{||{||{|{{|{||}}|{|y{y{|{|{|{||||||||}|||||||}||||||}|||||||}|{|||||}}||||{{||||{}z~|{|{|{~{|{|{||~{|{|{{|{|{||{||{|{{|{||}~|{|{||{|{|{~~|}|}|}|}}}|}|}}}}}|}||}}}||}|}}}|{|}|}|}}}|}|}{|}||{}{}|{|{|{}{|{|{||}{|{|{{|}{{||{|}{|{{|{||}}|{|{||{|{|{}}|}z}||||||}}||||||}}||||||}}|||||}}{{|||||}}|||||||||{{}}|{{{{{{|{{{{{{||{{{{{{||{{{|{||{|{{{{||}}{{{z{z{{{|{|z||{|{|{|{|{|{|||{|{|{{||{|{||||{|{{|{||}}|{|z{z{|{|{|{||||||||}|||||||}|||||||}||||||}|{|||||}}||||{{||||{}z~||||||~}||||||~}||||||~}||||||}|{|||||}~||||||||||{~~}}{}{}{}{}{}{}}}{}{}{{}}{}{|}{}}|{{}{}|}}}{}{}|{}{|{}}}||}{}{}{}{}{}{}}}{}{}{{}}{}{|}{}}{|{}{}|}}}{}z}|{}{|{||}}{}{}{}{}{}{}}}{}{}{{}}{}{|}{}}{|{z{||}}}{}{}|{}{|{}}}}{}{}{}{}{}{}}}{}{}{{}}{}{|}{}}{|{{{||}}}{}{}|{}{|{}}}}{}{}{}{}{}{}}}{}{}{{}}{}{|}{}}{|{{}||}}}{}{}|{}{|{}}}}|}|}|}}}|}|}}}}}|}||}}}}||}|}}}|{|}||}}}|}|}||}||{}}~}|}|}|~}}|}|}}~}}|}||}~}}||}|}~}}||}|}}~}|}|}}|}|||~~}~}~}~}~~~}~}~}}~~}~}~~}~~}~|}~}~~|{~}~}~}}~}~}|~}~|{~~~}|||||~}}|||||~}}|||||~}}|||||~}}}||||~}~{|{|}||||}~~~}|||||~}}|||||~}}|||||~}}|||||~}}}||||~}~||{|}||||}~~~}|||||~}}|||||~}}|||||~}}|||||~}}}||||~}~||{|}||||}~~~}|||||~}}|||||~}}|||||~}}|||||~}}}||||~}~||||}||||}~~~}}|}|}~}}}|}||~}}}|}}|~}}}||}|~}}}}|}|~}~|}|}}}|}|}~~z{|{|{|{||{|{}}}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}|}|~|}|}|}|~z}|}{|}{|{{{{||{{{{{||{|{{{{||||{{{{|||||{{{|||}{{{{||y{{{{|}z|||{||||{{|{|||{|{||||{||{{|||||||{||||}{|{|||{|{|{|}z|}||}|~|}|}||}~|{|}}|}~|}{|}|}z||}|}|}~}|}|}||y}|}{|}z}|}||~|}|}|}}~|}|}||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{{{|}z|{|{|{||{|{|||||{|{{||||{{|{|||||{|{|||}|{|{||~{|{{|}z|{|{|{||{|{|||||{|{{||||{{|{|||||{|{|||}|{|{||z{|{{|}~|}|}|}~}}|}||~}|}|}}|~}|}{|}|~}||}|}|~|}|}|}|~z}|}{|}{||{|{||||{|{|||{|{||||{||{{|||||||{||||}{|{|||{|{|{|}z|}|}|}|~|}}||}~|{|}}|}~|}{|}|}|||}|}|}~}|}|}||z}|}{|}z}|}|}|~|}|}}}~|}|}||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{{|}z|}|}|}|~|}|}|}~|}|}}|}~|}{|}|}~||}|}|}~}|}|}||{}|}{|}z|{|{|{~||{|{||||{|{{||||{{|{|||||{|{|||}|{|{||~{|{{|}z|{|{|{|~|{|{||||{|{{||||{{|{|||||{|{|||}|{|{||z{|{{|}~|}|}|}~}|}|}||~}}|}}|~}|}{|}|~}||}|}|~|}|}|}|~{}|}{|}{|}|}|}|~|}|}||}~||}}|}~|}{|}|}|||}|}|}~}|}|}||z}|}{|}z}|}|}|~|}|}|{}~|}|||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{|}z|{{{{{|||{{{{||||{{{{{||{{{{|||||{{{|||}{{{{||z{{{{|}y|}|}|}|~|}|}||}~|}|}}}~|}{|}|}~||}|}|}~}|}|}||{}|}{|}z|{|{|{~||{|{||~||{|{{|||{{|{|||||{|{|||}|{|{||~{|{{|}z|||||||~|||||||~|||||||||{|||||||||||||}||||||z|||{|}~|}|}|}~~|}|}||~~|}|}}|~~}{|}|~}||}|}|~~}|}|}|~z}|}{|}{}|}|}|~|}|}|}}~|}|}||}~|}}}|}~|}||}|}~|~}|}|}~~|}|}|~||}{||{|{|||||{|{|||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{||{|{|||||{|{|||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{|}|}|}|~|}|}||}~|}|}}|}~|}{|}}~||}|}|}~}|}|}||{}|}{|}{||||||~|||||||~|||||||~|||{||||||||||||}||||||~|||{|}z|}|}|}|~|}|}||}~|}|}}|}~|}{|}|}||}|}|}~}|}|}||z}|}{|}~}}}}}}~}}}}}}}~}}}}}}}~}}}{}}}~}|}}}}~|~}}}}}~~}}}}|~|}z|}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}|||{|z|}|}|}|~z}|}{|}y|}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}{|||}|}|}|~z}|}{|}z|}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}||||}|}|}|~z}|}{|}z|}|}|}~~|}|}||~~|}|}}|~~|}{|}|~~||}|}}~}|}|}|~{}|}{|}z|}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}|}||}|}|}|~~}|}{|}z~}~}~}~~~}~}~~~~~}~}}~~~~}~~}~~~~|}~}~~~~}~}~~~}~}~|~~}}|}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~|}|}|||}|}|~~}|}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}}|}|||}|}|~~}|}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}||}|||{|}|~~}|}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}|}}|||}|}|~~}}}}}}|~}}}}}}}~}}}}}}}~}}}}}}}~}|}}}}}~~}}}}||}}}{|~~~}~}~}~~~}~}~~~~~}~}}~~~~}~~}~~~~|}~}~~~~~}~}~~}~}~|~~{{{|}z{{|}z{|}z|}{}z}~~~~~}}~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~}~~~~}~~~~~~}}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~}~~~}~}~~~~}~~~~~~}}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~}~~~}~~}~~}~~~}~~~~~~}~}~~~~}}~~~~~}~~~~~~~~~~~~~~~~~~}~~~~}~}~~~}~~}~~}~~~}~~~~~~}~}~~~~}}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}}~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}}~}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~}}}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~}}}~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~}~~~~~~~~~~~~~}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~}~~~~~~}}}}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~}~~~~~~~~~~~~~}~~~~~~~}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~}~~~~~~~~~~~~~}~~~~~~~~~~~~~}~}~}~{|{}|{{{z}{|{{}||{{}|||{}|||||{}||||{|}||||{|{||||{|{|||{}|{|{{|||{{}|{{{}|||{}|||||{}||||{|}||||{|{||||{|{|~|}}|~~~|}||~}}|~~~~|~~|}~~~|}|}~~~|}|}|}~|}|}|}||}|}|}|}||~~~||||~}}|~~~~|~~|}~~~|}|}~~~|}|}|}~|}|}|}||}|}|}|}}|~~~||}|~}}|~~~~|~~|}~~~|}|}~~~|}|}|}~|}|}|}||}|}|}|}~}~~~|}~}~~~}~~~~}~~}~~~~}~}~~~~}~}~}~~}~}~}~}|~}~}~}~}}~~~|}}}|}}}~~~~}~~}}~~~}}}}~~~}}}}}}~}}}}}}}|}}}}}}}|}||}|}|}{~|{{}|~}~}}|}~}}|}||~}}|}|}|}}|}|}|}||}|}|}||}||~|}|}{~||{~|~}~~}|}~~}|}||~~}|}|}|~}|}|}|}||}|}|}||}~~~|}|}{~~|}~~~}~~}~~~~}~}~~~~}~}~}|~}~}~}|}|~}~}|}|~~}~~~|}~}~~~~}~~~}~~}~~~~}~}~~~~}~}~}~~}~}~}~}|~}~}~}~|}||}|}|}~~||}~}|}~}}|}~}}|}||~}}|}|}|}}|}|}|}||}|}|}||||{~||||{}|||~~||{~|||~~|||||~~||||||~|||||||||||||||||~~}||||{~~||~}~~|}|~~~}|~|~~~}|~|~||}|~|~||||~|~||||{|~}~}|{||~}}|~~~~|~}|~~~}|}|~~~}}}|||~}}}}|||}}}}|}||{}|}|}~}}|}~~||}~~}~}~~}}~~}|}||~~}|}|}|~}|}|}|}}|}|}|}||}~~~|}|}|}||}~~~|}~~}|~~}|}|~~~}|}|}|~}|}|}|}||}|}|}||{~~}|{|{{~~|{{}~~{{}|~~}|~|~~~}|~|~{|}|~|~{|{|~|~{|{|||~|~|||||~|||~}~~|~}||~~||}|~~~||}|||~||}||||||}||||||||{~||||{~|||{~|~|~}|||~~||||~~||||||~|||||||||||||||{}}||||~||||~~|||~~|~|~~|||~~||||~~||||||~||||||||||||||||}~{}|}|}{~||}~|~~}~}}{}~}}|}~~}}|}|}{}}|}|}|}||}|}|}|||~~~||||{||||~~|{|~~|||~~||||~~||||||~||||||||||||||||{~~}|{z{{~~{{{}~~{{}|~~{}|~|~~}|~|~{|}|~|~{|{|~|~{|{|{|~|~||{||~|||~}~~|~}||~~}||}|~~||}|||~||}||||||}||||||{|{}|{|{{|||{{}|{{{}|||{}|||||{}|||{|}||||{|{||||{|{||}|{~|}|}{~||}~~|~}~}}{|~~}|}||~~}}|}|~}|}|}|}||}|}|}|{}||||||~||||~~|||~~|~|~~||}~~||||}~~|||||~||||||||||||||||}~{}|}|}{|||}~}~|}~}}||~}}|}|~~}}|}||}}|}|}|}||}|}|}|||||}||||{~|||~}|~|~}||}~}||}||~}||}||}||}||||||}|||||||~|~||{||~|{|~}~~|~}||~~}||}|~~}||}|||||}||||||}|||||{{|{}|{{{{|||z{}|{{{}|||{}|||||{}||||{|}|||{|{||||{|{||}|{}|}|}{}||}~}||}~}}||~}}|}||~}}|}|}|}}}|}|}||}|}|}|||||~||||{~|||{~|~|~||{|~~|||{|~~|||||{~||||||||||||||{{|{|||||~||||~~|||~~|~|~~|||~~|||||~~||||||~|||||||||||||||}~{}|}|}{}||}~}~|}~}}||~}}|}|~~}}|}|||}}|}|}}||}|}|}|||||}||||{||||~}|{|~}|||~}|||||~}||||||}|||||||||||||||{|{}|{{{{|||{{}|{{{}|||{}|||||{}||||{|}||||{|{|||{|{||}|{}|}|}{}||}~}||}~}}||~}}|}||~}}|}|}|}}|}|}|}|}|}|}||{||}|{|{{|||{{}|{{{}|||{||||||{}||||{|}||||{|{|||{|{|{||{~||{|{~{||~~|~|~||{|~~|{|{|~~|||{|{~|||||{|||||||{{||{{{||||~||||~~|||~~|~|~~|{|~~||{{|~~|||||{~||||{||||||||||}~{}|}|}{|||}~}~|}~}}||~}}|}|~~}}|}|||}}|}|}|}||}|}||||||}||||{}{||~}|||~}|||~}|||||~}||||||}||||||{|||||||{{z|}{z{{z|{{{}}|{{}}|||{}}|{{{}}|{{{{}}|{{{{{}|{{{{{{{{z|}{{z{z|{{{}}|{{}}|||{}}|{{{}}|{{{{}}|{{{{{}|{{{{{{|}}|}~~}}{}}|}|}~}~|}~}}}~}~}}}}}~}}}}|}~}}}}|}|}}}}|}|}||}~~}|{}}|}|}~}~|}~}}}~}~}}}}}~}}}}|}~}}}}|}|}}}}|}|}}|}~~}|}}}|}|}~}~|}~}}}~}~}}}}}~}}}}|}~}}}}|}|}}}}|}|}|}}~~}}|}|||}|~}~}|~}|}~|~}|}|}~}|}|}|~}|}|}|}}|}|}|}|}}}~~}}}}}}}}}~}~}}~}}}~}~}}}}}~}}}}}}~}}}}}}}}}}}}}}}|}{|||}|}||}{{}}|}|}}||||}}|}|{}}|}|}{}}|}|}|}||}|}|}||}{|||}|}||}|{}}|}|}}||||}}|}|{}}|}|}{}}|}|}|}||}|}|}||}{||}}|}||}|}}}|}|}}||||}}|}|{}}|}|}{}}|}|}|}}|}|}|}||}{~~}}|}||}|}|}~}|~}|~~|~}|~|{~}|~|}{~}|~|}|}}|~|}|}|}|~}~~}~|~}|}|~|~}~|~~|}~|~~|~|}~~|~|~|~~|~|~|~}|~|~|~|{{{z}|{{{{{|{{{}}|{}||||{}||{{{}||{{{{}||{{{{{||{{{{{{{{{|}}{{{{{|{{{}}|{}}|||{}}||{{}}||{{{}}||{{{{}||{{{{{{|}~~}|{|{{|{|{}}~|{}|}~{~}||{}~}||{|{~}||{|{|}||{|{|{{|{|}}|{|{|}{|{}}||{}|||{}}||{{}}||{|{}}||{|{|}||{|{|{|}}}||}}}}}}}}}}}}}|}}}}}|}}}}}}{}}}}}}}}}}}}}}}}}}}}}}}|}}~~|}|}||||}|~}|}|~}|}|~}|}|}~}|}|}|~}|}|}|}||}|}|}|{{{||}{{{{z|{{{}}|{{}}|||}}||{{}}||{{{}}||{{{{}||{{{{{{{}~~}{{{{{|{{z}}~{{}}|}~{}|{{}~}|{{{{~}|{{{{{}|{{{{{{||{|}}|||{}}}||}}||}}}|||}}||{{}}}|||{}}}|}|||}}|}|}|||}}|}|}|}||||}|}}|}|}}|}||}}}|}}}|}|}|}}|}|}|}||}|}|}|{}||}{|}}}|}||||}|}}|}|}}{|||}}|}{}}|}|}{}}|}|}|}}|}|}|}|||}{}||||{{}||{}}||{}||}|{}||||}||||||}|||||||||||||||{{}~~}{z{{{|{{{}}~{z}}|}~{}}|{{}}|{{{{~}|{{{{{}|{{{{{{{|{||}|{|{|}||{}}|||}|||||}|||{{}||{|{}}||||{|}||||||{|}}|}}}|}||||}|}}|}|}}|}||}}|}|}}}}|}|}}|}|}|}}|}|}|}|{{{z}|{{{{{|{{{}}|{{}||||{}||{{{}||{{{}||{{{{{||{{{{{{{}|{|}{|}}}|}||||}|}}|}|}}||}|}}|}|{}}|}|{}}|}|}|}}|}|}|}|||}|}}|||{z{||{}}||{}}|}|{}}|||{}}||||}}||||||}|||||||{{}~~}{z{{{|z{{}}~{{}}|}~z}}|{{}}}|{{{{}|{{{{{}|{{{{{{{|{||}|{|{|}||{}}|||}|||||}|||{{}|||{|{}||||{|}||||||{|}}|}|}|}||||}|}}|}|}}|}||}}|}|}}}|}|}|}}}|}|}||}|}|}|{{{|}}{{{{{{{{{}}|{{}}|||{}|||{{}}{|{{{}}|{{{{}||{{{{{z{{z||{z{{z|z{z{}|{z||{||z||z{z{||{{z{z||{{{z{|{{z{z{z{}|{{|}{|}}}|}||||}|}}|}|}}||||}}|}|{}}|}||{}}|}|}}}|}|}|}|||}{}||||{z|||{}}||{}||}|{}||||{}|||||{}||||||||||||||{|{||}|{|{|}||{}}|||}|||||}|||{{}|||{|{}|||||{|||||||{|}}|}|}|}||||}|}}|}|}}|}||}}|}|}}}|}|}|}}|}|}|}|}|}|}|{{{z}|{{{{{|{{{}}|{{}||||{}||{{{}||{{{{}|{{{{{{||{{{{{{{{||}{{{{z{{{{{}|{{|}|||{}|||{{}}{|{{{}}|{{{{{}||{{{{z{{z||{z{{z|z{z{}|{z||{||z||{{z{||{{z{z||{{z{z{|{{zz{z{}z{z{|}{|}}}|}||||}|}}|}|}}||||}}|}|{}}|}||{}}|}|}|}}|}|}||||}{}||||{z|||{}}||{}||}|{}||||{}|||||{}||||||{|||||||{|{|{{z{{{{{{{||}}{{||||{{||||{|||||{{{|||{{{{|||{{{{{{|{|{{{{{{{{{{||}}{{||||{{||||{|||||{{{|||{{{{|||{{{{{{}}|||}~~||||}||||~}~|||~}}}||~}}|||~}}|||~}}||||~}}||||||||}~~||||}||||~}~|||~}}}||~}}|||~}}|||~}}||||~}}||||||||}~~||||}||||~}~|||~}}}||~}}|||~}}|||~}}||||~}}||||||||}~~||||}||||~}~|||~}}}||~}}|||~}}|||~}}||||~}}|||||}||}~~|}|}}}|}|~}~|}|~}}}}|~}}}||~}}}|}~}}}|}|~}}}|}|}|}|{}}}|}|}|{{||}}}|}}||{|}}|}||}}|}|}|}|}|}|}}|}|}|}||}|{}}}|}|}||{||}}}|}}||{|}}|}||}}|}|}|}|}|}|}}|}|}|}||}|{}}}|}|}||}||}}}|}}||{|}}|}||}}|}|}|}|}|}|}}|}|}|}||}|{}}}|}|}||}||}}}|}}}|{|}}}}||}}}}|}|}}}|}|}}}}|}|}||}||~~}|}|}}|}|}}~}|}~}}||}~}}||}~}}|}|~}}|}|}~}}|}|}|}~}||~~}~}~}|~}~}~}}~}~~||~}~~}~|}~~}~}~~~}~}~}~~}~}~}~{{|{|{{{{{{{{{{||}}{||||{{||||{|||||{{{|||{{{{|||{{{{{{||{|{|{|{{{{|{||}}|||||{{||||{|||||{|{|||{|{||||{|{|{|||{}{||||{{|||||}}|||}|{|||}|||||}|||||}||||||}|||||||||{~~|||||||||||}~|||}|{||~}||||~}||||~}|||||~}||||||{}|{}}}{}|}|{}{}|}}}{}}|{{}}|}{|}}|}{}{}|}{}{}}|}{}{}{|}|}|{|}}|}|}||}|}}}}}|}}|||}}|}||}}|}|}|}|}|}|}}|}|}|}|{||{|{|{|{{{{|{||}}|{||||{||||{|||||{|{|||{|{||||{|{|{|||{}{||||{{|||||}}||||}|{||}|||||}|||||}||||||}||||||{||{~~|{|{||{|{||}~|{||||{{|||{||~||{|{~||{|{|~||{|{|{|}|{}{}|}|}{|}|}|}}}|}}}|{|}}}||}}}}|}|}}}|}|}}}}|}|}||||{}}|||||||||||}}|||}||{||}||||}|||||}||||||}||||||||}|||{{}}|||||||||||}}|||}}{{||}}|||}}||||}}|||||}}|||||||||{}{||||{{|||||}}||||}|{|||}||||}|||||}||||||}||||||{||{~~|{|{||{|{||}~|{||||{{||||{||||{|{~||{|{|~||{|{|{{}|{|{}{}|}{{}{}|}}}{}}{|{{}}{}{|}}}{}{}|}{}{}||}{}{}{|||{}|||||{{|||||}}||||}|{|||||||||}||||}||||||}||||||{||{}}|{|{||{|{||}}|{|}||{{|}{|{||}|||{}||{|{|}||{|{|{|}|||||{||||||{{|||||}}||||||{||||||||||||||||||||||||||||{||{~~|{|{||{|{||}~|{||||{{||||{|||||{|{||{|{|~||{|{|{{}|{|{}{}|}{{}{}|}}}{}}||{{}}|}{|}}|}{}{}}{}{}||}{}{}{|||{||||||{{|||{|}}||||||{||||||||||||||||||||||||||||||{{}{||||{{|||||}}||||}|{|||{|||||}{||||}|||||}||||||{||{}}|{|{||{|{||}}|{|}||{{|}||{||}||{|{}||{{|}||{|{|{|}||||{|{||{|{|{{|{|{|}}{|||||{||||{|||||||{{||||{|||||{|{|{||{~~|{|{||{|{||}~|{||||{{||||{|||||{|{|||{|{|||{|{|{{}|{|{}{}|}{{}{}|}}}{}}||{{}}|}{|}}|}{}{}|}{}{}|}{}{}{|{|{||{|{|{{|{|||}}{|{|||{||||||||||||{|||||{|{|||{|{|{||{|{|{|{{{{|{{|}}|{||{|{{||{|{|||{|{|{|{{{|{||{||{|{||{{}{||||{{||||{}}||||}|{|||{|||||}{||||}|z||||}|||||{|{{}}|{|{||{|{||}}|{|}{|{{|}{|{{|}{|{|{}{|{|{|}{|{||{|}|||||{|{||{|{|{{|{|||}}{|||||{||||||||||||{{||||{|{||||{|{{{|}z{z{{||{{{{|||}{{|z|||{||||{{||||{{{|||{{{{||{{{{{{{|}z{{{{||{{{{{||}{{|||||{||||{{||||{{{|||{{{{||{{{{{|}{}z}|}}|~~|}|}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}||}}|~~}}|}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}||{}|~~}||}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}||}}|~~}|}}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|}}{|~~}}}}||}}}}}~~}}}}~}|}}}~}}}}}~}}}}}~}}}}}~}}}}}}}~~|~~~}~}~~}~}~~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}}|{|}z|}|}|~{|{|{|}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}}|{|}z|}|}|~{}{|||}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}}|{|}z|}|}|~{}||||}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}}|{|}z|}|}|~{}|}}~}|}|~~||}|~~|}{|~~|}|}~~|}|}|~|}|}|}}|{|}z|}|}|~~}|}||}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}}~~|~~~}~}~~~}~}~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}}|{{|}{{|{|||{|{||||}{{{|||||||||{|||||{|||||{|{|||{|{||{{|}{{|{|||{|{||||}{{{|||||||||{|||||{|||||{|{|||{|{|}|{|}{|}|}||{}|}|}~}|}}~||}|}~|}{|}~|}|}}~|}|}|~|}|}|}||{|}{||||||~||||||}||||||||~|||{|~|||||~|||||||||||||}|{|}~|}|}|||}|}|}~}|}|}||}|}~|}{|}~|}|}}~|}|}|~|}|}|}}}}|~|}}}}}~~}}}}~|~}}}~}|}}~}}}{}~}}}}}~}}}}}}}}}}}}}|}{{{|}z{{{{||{{{{|||}{{|||||{{||{{||||{{{|||{{{{||{{{{{}|{|}z|}|}||{}|}|}~}|}|}~||}}~|}{|}~|}|}}~|}|}|~|}|}|}{|{|}z|{|{||~{|{|||}|{|||||{|||{{|~||{|{~||{|{|||{|{|{||{|}~|||||||||||||}||||||||||||{||~|||||~|||||~||||||}|{|}{|}|}|~{}|}|~~}|}|~}||}|~~}{|~~|}|}~~|}|}|~|}|}|}|}}|~|}|}|}~~|}|}~|~}|}~|}||}~|}}}~|}|}|~|}|}|}|}|}|}|{}|}|{|}z|}|}||{}|}|}~}|}|}~||}|}~|}{}~|}|}}~|}|}|~|}|}|}{|{|}z|{|{||~{|{|||}|{|||||{||||{{|||{|{~||{|{|||{|{|{{|{|}~|{|{|||{|{|||}|{|||||{||||{{|||{|{|~|{|{|~|{|{|{}|{|}{|}|}|~{}|}|~|}|}|~}||}|~}|}{|~}}|}~}|}|}|}|}|}|}}|{|}z|}|}||{}|}|}~}|}|}|||}|}~|}{|}~||}}~|}|}|~|}|}|}|}}|~|}|}|}~~|}|}~|~}|}~|}||}~|}|}}~|}||~|}|}|{|}|}|}|{}|{{|{|}z|{|{||~{|{|||}|{|||||{||||{{||||{|{||{|{|||{|{|{{|{|}~|{|{|||{|{|||}|{|||||{||||{{||||{|{||{|{|~|{|{|{}|{|}{|}|}|~{}|}|~|}|}|~}||}|~}|}{|~}|}|}~}}|}|}|}|}|}|{{|}z{|{|||{|{||||}{|||||||||{||{|||{|{||||{|{|||{|{|}|{|}z|}|}||{}|}|}~}|}|}|||}|}~|}{|}~|{|}}~|}}|~|}|}|}|}}|~|}|}|}~~|}|}~|~}|}~|}||}~|}|}}~|}|}|~|}|}}|}|}|}|{}|{{{|{|}~|{|{|||{|{|||}|{|||||{||||{{||||{|{|||{|{||{|{|{}|{|}{|}|}|~{}|}|~|}|}|~}||}|~}|}{|~}|}|}~}|}|}|}}|}|}{{{|}z{{{{||{{{{|||}{{|||||{||||{{||{|{{{||{{{{{||{{{{|{{|}z{|{|||{|{||||}{|||||||||{||{|||{|{||||{{|{||||{|}|{|}z|}|}||{}|}|}~}|}|}{||}|}~|}{|}~|{|}}~|}|}|~|}||}|}}|~|}|}|}~~|}|}~|~}|}~|}||}~|}|}}~|}|}|~|}|}|}|}|}||{}|{{{~~~~~~}~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}~~}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}~~}}}}}|}||}}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}~}}}~~}}}}}|}|||}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}|~~~~~}~~}}~~}}}|}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~}}}}~~}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}~}}}}~~}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}~}}}}~~}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}}|}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}}|}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}}|}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}~~~~~~~~~~~~~~}~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~}}}}~~}}}}}}}}}}}}}~}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}~}}}}~~}}}}}|}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}~}}}}~~}}}}}|}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}~}~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~}~}}}}~~}}}}}}|}}}}}}}|}}}}}}}|}}}}}}|}}}}}}~|}}}}}}~|~~~~~~~~~~~~~~}~~~~~~~|~~~~~~~|~~~~~~~~~~~~~~~~~~~~~~~}~}}}}~~}}}}}}}|}}}}}~}}}}}}}~}}}}}}}~}}}}}}~}}}}}}}~|}~}}}}~~}}}}}|}||}}}}}|}}}}}}}|}}}}}}}|}}}}}}|}}}}}}}|}~}~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~}~}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~}~~~~~~}~~~~~~~}~~~~~~~}~~~~~~~~~~~~~~~~~}~}}}}~~}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}}}}}}|}}}}}}~|~~~~~~~~~~~~~~}~~~~~~~|~~~~~~~|~~~~~~~|~~~~~~~~~~~~~~~}~}}}}~~}}}}}}}|}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}~|}~}~}~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~}~}}}}~~}}}}}}}|}|}|}}}}}|}}}}}|}}}}}}}}}}}}}}}}}}}}}}}~}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~}~~~~~~}~~~~~~~}~~~~~~~}~~~~~~~}~~~~~~~~~}~}}}}~~}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}}}}}}|~~~~~~~~~~~~~~}~~~~~~~|~~~~~~~|~~~~~~~|~~~~~~~|~~~~~~~{{||{z{zz}{z{yz{{{z||z{z||{{z||{{z{z||{{z{z{|{{z{z{z{{}{{{{zz}|{z{|{{{{}{{{{}{{{{}{{{{{{}{{{{{{{{{{{{{{{{}}|}{}|{}|{}{z||}{~}{}{~}{}{~}{}{}{~}{}{}{}|{}{}{}{{{{}{{{||{|{{|||{{|~|{{|~|{{{~|{{{{{~||{{{{{{{{|{{{{z{z{zz}{||}}}|}|}||}|{||{{}|}}{}|}}|}{}}|}|}{}}|}|}|}||}|}|}||}}~|}|}||}|||||{}|~}{}|~}|}{~}|}|}{~}|}|}|}||}|}|}|{}}}|}{}||~||}|{{}|}}{}|}}|}{}}|}|}{}}|}|}|}||}|}|}|}~}}}~}~}}}}}~}}}~}}~|}}}~}~}}~}~}~|}~}~}~}~}}~}~}~}|}}}|}|}||}||}||{}|}}|}|}}|}|}}|}|}|}}|}|}|}||}|}|}|{|{~||{|{{}|{{{|||z~|{{{~|{|z~|{|{|z~|{|{|{||{|{|{|{{|{|||{|{{~|{{{|{||||{{{||{|z||{|{|z||{|{|{||{|{|{|{{|{~}|{|{{~|{|{||}|{}{{{~}{|{~}{|{|z~}{|{|{|}{|{|{|{||}}}|}|}||~||}{}{}}|}}}|}}|}|}}|}|}|}}|}|}|}||}|}|}|{}}}|}{}|{}|{}||{|}|}}{|}}{}{}}{}{}{}}{}{}{}|{}{}{}{{{{}|{{{zz~{{{{z{{{{}|z{||{{{}|{{{{{}|{{{{{{|{{{{{{{{{{}|{{{{{}{{{{z{|{{}|{{{|{{{}|{{{{{}|{{{{{{|{{{{{{{|{{~|{|{z|~||{|||{{|}|{{|~|{{~||{|{{~||{|{|{||{|{|{||}}|{}||}||}}}}{}}}||}}|{|}}|}|}|}|}||}|}|}|}||}|}|}|}{}}}|}{}|{~|{}{{{|}{}}{}{}}{}}}{}{}{}}{}{}{}|{}{}{}{z{{}|{z{{{}{z{zz{|{z||{{z||z{{|z{z{z}|z{z{z{|z{z{z{z{{{}{{{{z|}||{{|{{{||{{{|}{{{z}|{{{z}||{|{{{{|{|{|{{{}}~|}{}|{~|{}{{||}{}}z}{~}z}{~}}{}{~}{}{}{}|{}{}{}{||{{|{}||{|{|}||{{|||||}|z{|}|{{|}|||||}|||||{||||||||{{}}}|}{}|{}|{}{|{{}{}}{}{}}{}{}}{}{{}}{}{}{}|{}{}{}{{|z}||{||{~{{{|{{|||}|{{|}|{|{}|{|{|}|{|{|{||{|{|{|{z{{}|{z{{{}{z{yz{{zz||{{y||z{{||z{z{z|z{z{z{|z{z{z{z{{{}{{{{z|}|{z{|{{{{|{{{|}{{{z}{{{{{z}|{{{{{{{{|{{{{{}}}|}{}|{}|{}{{{|}{}}z}{}}{}{}}{}{}{}}}{}{}|{}{}{}{{{z~|{{{|{~{{{|z|{{|}|{{|~|{{{~|{z{{{~|{{{{{|{{{{{{{||z{{|{}||{|{|}{{{{||||{}|z{|}|{{|}|||{||}|||{{||{|||{|{{}}}|}{}|{}|{}{z{{}{}}{}{}}{}z}}{}{{{}}{}{}}|{}{}{}{{{{}{{{{|{}|{{||{{{|}|{{|}|{{{}|{{{{{}|{{{{{{{{{{{{{{{{}{{{{z|}||z{|{{z||{{{|}{{{z}{|{{{z}{|{|{{{{{|{|{{{}}}|}{}|{||{}{{{|}{}}z}{}}z}{}}z}{}{}}z}{}{}|}{}{}{{{{}{{{{|{}{{{|z{{{|}|{{|}|{{{}|{{{{{}|{{{{{{{{{{{{{z{z~|{z{z{~{z{zz|{{z||zzz~|z{z~|z{z{z~|z{z{z{|z{{z{z|{z{z{|{}||{|{{}{{{{{|||{}|z{{}|{{|}|||z||}|{|{{{||{|{||{{}}}|}{}|{{|{}{z{{}{}}{}{}}{}z}}{}{{{}}{}{}z}|{}{}{{{{{||{{{|{}{{{|z{{{|||{{|||{{{||{{{{z||{{{{{{|{{{{{{zz{{zzzzzz{zzyzz|zzz|z{zz|{zzzz|{{zzz|{zzzzz{{zzzzzzzz|{zzzzzz|zzzy{|zzz|{{zz|{zzzz|{{zzz|{{zzzz{{{zzzzz{z|{{{z|z|{{{{{{|z{{|{|{z||z{{z||{{z{||{{{{z{|{{z{{{{|{||{|{|{|{|{|z{|{||||{||||{{||{|||{|{|||{|{{|||{|{zzzzzzzzz{|{|{|||{|{||||{||||{||{|{||{|{{||{|{|{|{|{|{||{|{|{|{{|{|||{|{|||{{||||{||{|{||{|{{||{|{|{|{|{|{||{|{|{|{{|{|||{|{|||{|||||{||{|{||||{{||||{|{|||{|{||||{|{|{{|{|||{|{|||{|{|||{||||{||||{{||||{|{|||{|{||||{|{|{}||}}|}|}|||}|}|}|}|}}|}|}}|}||}}|}|}}}|}|}|}}|}|}|}{{z|{{{{|{{|{{{{{|zz|{{{{|{{{z{|{{{{{|{{{{{{{{{{{{{{{{z|{{{{|{{|{{{{{|{z|{{{{|{{{z{|{{{{{|{{{{{{{{{{{{{{{{z|{{{{|{{|{{{{{|{{|{{{{|{{{z{|{{{{{|{{{{{{{{{{{{{{{{{|{{{{|||}{{{{||{{|||{|||{{{||||{{{|||{{{{{||{{{{{|||||}||||||}||||}||||}|||}|||||}|||||}||||||}|||||||z{zz{{z{z{{{z{z{{|{z{|{{{|{zzz{|{{z{z|{{z{z{{{{z{z{zz{z|{{z{z{{{z{z{z|{z{|{{z|{zzz{|{{z{z|{{z{z{{{{z{z{zz{{|{{z{z||}{{z{{|{{{|{|z{{zz{{|{{{{z|{{{{z{{{{{{{{zz{{|||z{z{||z|z{|||z||{|z|||z{||{|z{z|{|z|z{|{|z|z|z|{{|||}|{||{||{|{||}|{|}{{{|}{|||}||{|{}||{|{|}||{|{|{{|{{{|{||||{{|{||||{|||{{||||{||||{|{|||{|{|{||{|{|{zzz|{zzzzzz{zzzzz|zzz|{{zz|{zzz|{{zzz|{{zzzz{{{zzzzzzz{z{zzzz||}zzzz{{zzz|{|zz|{zz{z{z{zz|{z{zzz{{z{zzzzz{z||{z{z{||z{z{|||z{|{{z||{{zz||{z{z|{|z{z{|{|z|z{z{|{{{|{||{{|{|{|{||{||{{{||{{{{|||{|{|||{|{|{||{|{|{{{{{{||}{{{|{||{{{{{|{{{}{{{{}{{z|{}||{{}|{{{{{}|{{{{{{{|{|{|{|{{{{{|{|{||{||{{{||{|{z||||{||||{|{|{||{|{|{zz{z{zzzz||}zzzz{{zzz|{|zz|{zz{z|{z{zz{z{zzz{{z{zzzzz{z||{z{z{{|z{z{{|{z{|z{z{|{{zz{|{{z{z|{z{z{|{{z{z{z{|{|{|{||{{{{|{|{||{||{{{||{z{{||{{{|{|{{|{|{{|{|{|{z{zz{{z{z{{|z{z{{|{z{|{{z{|{{zz{|{{z{z|{{{z{{{{z{z{z{{zz{{|{}{{{|{||{{{{{|{{{}{{{{}{{z|{}||{z{}|{{{{}|{{{{{{{|{|{|{|{z{|{|{|{||{||{{{||{|{z||||{|z|||{|{{||{|{|{zz{z{zzzz||}zzzz{{zzz|{|zz|{zz{z|{z{zz|{z{zzz{z{zzzzz{z||{z{z{{|z{z{{|{z{|z{z{|{{zz{|{{z{z|{{z{z{|{z{z{z{|{{{|{||{{{{|{|{||{||{{{||{z{{||{z{|{|{z{|{|{{{|{|{z{z|{{z{z{{{z{z{{|{z{|{{z{|{{zz{|{{z{z|{{z{z{{{{{z{zzzzzzzzzzzz|zzzz{|zzz{{{zz|{zzzz|{zzzz|{{zzzz{{{zzzz{zzzz{{|{}{{{|{||{{{{{|{{{}{{{{}{{z|{}||{z{}|{{{z{}|{{{{{{|{{{|{|{z{{{|{|z||{||{{{||{|{z||||{|z|||{|{z{||{|{|{zzy{z{z{zzz{yzzy{z{zz{zz{z{{zz{z{{z{zz{{z{z{{{z{z{zzzzz{z{z{zzz{zzzz{z{z{{zz{z{{zz{z{{z{zz{{z{z{{{z{z{z{{{{{{{{{{{{{{{|{{{{|{|{{{||{{{{|||{{{|||{{{{{|{{{{{z{|z{z{z|{|z{z{{z{z{{{|{z{{}|z|{{}|z{zz}|z{z{}|z{z{zz{z{{{z{{z{{{{{{{{{z{{{{|{|{z{zz{{{{||{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{{z{{{{|{|{z{zz{{{{||{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{{z{{{{|{|{{{z{{{{{||{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{{z{{{{|{|{{{{{{{{{||{{{{|{{{{{||{{{{||{{{{||{{{{{{|{{{|{|{|{|{|{|{|{|{||{{|{||{{|{||{|{{||{|{|||{|{|{{{{{{{{{{|{{{{{{|{z{z{{{{{|{{{{{|{{{{{|{{{{{{{{{{{{{{{{{{{{{{|{{{{{{|{{{z{|{{{|{{{{{|{{{{{|{{{{{{{{{{{{{{{{{{{{{{|{{{{{{|{{{z{{{{{||{{{{|||{{{|||{{{{{|{{{{{{{{{{{{{{|{{{{{{|{{{{{{{{{|{{{{{|{{{{{|{{{{{{{{{{{{{{|{{{|{|{|{|{|{||{|{|||{{||||{{||||{|{|||{|{|||{|{|{{{||{{|{|{|{|{|{||{|{||{|{||{|{|||||{|{|||{|{|||{|{|{z{{zz{z{z{zzz{z{zz{z{z{|z{z{{z{{z{{z{zz{{z{z{{{z{z{zz{zzz{z{z{{{z{z{zz{z{z{{zzz|{zz{z||z{zz||z{z{{|z{z{zz{z{z{z{z{{zz{z{zz{z{z{{{z{{{zz{{{{z{zz{{z{z{{{z{z{zz{{{z{z{z{{|z{z{{z{z{{{|{z{{{z{{{||z{z{||z{z{{|z{z{z{{{{{{{{{|{{{{{{|{{{{|{|{{{||{{{||{{{{||{{{{{|{{{{{{{{{{{{{{{{{|{{{{{{|{{{{||{{{{||{{{|||{{{|||{{{{||{{{{{z{zzz{z{z{{{z{zzzz{z{z{{zz{z|{zzz||z{zz||z{z{{|z{z{zz{z{z{z{z{{zz{z{zz{z{z{{{z{z{{zz{{{z{zz{{z{z{{{z{z{zz{z{z{z{z{{|z{z{{z{z{{{{{z{{{{zz{{{z{z{{{z{z{{{z{z{z{{{{{{{{{{{{{{{{|{{{{|{|{{{|{{{{{||{{{|||{{{{||{{{{{z{{{z{z{z|{{{{z{{{{{{{{|{{{{|{z{{{|{{z{|{{{z{{{{{{{z{{zz{{zz{z{z|{{z{z{{{{z{{{{zz{{{{zz{{|{z{{|{z{z{|{z{z{zz{z{y{z{z{{zz{z{zy{z{z{{{z{z{{zz{z{{z{z{{z{z{{{z{z{zz{z{z{z{z{{|z{z{{z{z{{z{{z{{{{zz{{{{z{z{{z{z{{{z{z{z{{{{{{{{{{{z{{{{|{{{{|{{{{{|{{{z{||{{{{||{{{{|{{{{{{z{{zz{z{z|{{z{z{{{{z{z{|zz{z{{z{{z|{z{zz||{z{{|z{z{z{{{{z{{{z|{{{{{{{{{{{{{|{{{{|{z{{{|{{{z{|{{{{{{{{{{{{{z|z{{zz{z{z|{{z{zz{{{z{z{{zz{z{{zz{z|{zzzz|{z{z|{z{z{zz{z{z{z{z{{|zzz{{z{z{{z{{z{{z{zz{{z{z{z{z{z{z{{z{z{z{{{{{{{{{{{z{{{{|{{{{|{{{{{|{{{z{||{{{{||{{{{{|{{{{{z{{zz{z{z|{{z{z{{{{z{z{{zz{z{{z{{z{{z{zz{{z{z{{{{z{zz{{zz{z{z{{{z{z{zz{z{z{|zz{z{{z{{z|{z{zz||z{z{{|zz{zz{{{z{z{z|{{z{z{{z{z{{z|{z{{|{z{{{|{z{z{|{z{z{{{z{{z{{z|zz{{zy{z{z|{{z{zz{{{z{z{{zz{z{{zz{z|{z{zz|{z{z{|{z{z{z|{}zzzz{|}{{zy{{||z{{z|{{{{{||z|{{||zz{{||{zzz||{z{zz{|{}zz{z{|}{{z{z{||z{{{|{{{{{|zz|{{||{z{{||{z{z||{z{z{||{}}||||{}|||||}|}|||}}|{||}}||{|}}||||}}|||||}|||||||}|}|}|}{|}||}|}{||}|}|}}{|}|}}z|}|}}|}{|}}|}|}|}|}|}|~}|{~}~}~|}|~}~}~~~}~}~~}{~}~~}~|}~~}~}~~~}~}~}~}~}~}~{z{|}{z{|}{{|}{|}{}|}{|{{}}|{|{|}||{|{|}|{|{}|{{|{}|{{|{}|{|{{}|{|{|}|{|{|{{||{}}|{|{|}|{{|{|}|{|{}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{{||{}}|{|{|}|{||{|}|{|{}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{{||{}}|{|{|}|{|{{|}|{|{}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{{}|{}}}{}{|}|{}{}|}}{}{}}{{}{}}{|}{}}{}{{}}{}{}}}{}{}{|}||~~}|}|}}}|}|}}~}|}}~}||}}~}||}}~}|}|}~}|}|}~}|}|}||||{}||||||}{||||}|}zzz|{{||}|||{|}|||||}||||||||||||||||{}||||||}{||||}|}|zz|{{||}|||{|}|||||}||||||||||||||||{}||||||}{||||}|}||{|{{||}|||||}|||||}||||||||||||||}|{}|}|}||}{|}|}}|}}|}}}{|}}}}||}}}}|}|}}}|}|}|}|}|}||||{~~|||||}|||||}|~|||}|{||}~||||}~||||}~|||||~||||||}||}~~|}|}}}}}|}}}~~|}}}~}}}}~|}|}}~|}|}}~|}|}|~|}|}|}}{||{}{|{|{|}{{|{|{|||{|{|{{{z|{z||{||{|{{||{|{|||{|{|{{||{}{|{|{|}{{|{|{|||{|{|{{{z|{z||{||{|{{||{|{|||{|{|{{}|{}{}{}{|}{{}{}{||}{}{}}{{}}}z|}{}}{}{{}}{}{}|}{}{}{{||{~~|{|{|}|{|{|{|~|{|{||{{|{|{||{~|{|{{~|{|{|~|{|{|{|}|{}}}|}||}||}|}}|}}|}}}}{|}}}||}}}}|}|}}}|}|}}}|}|}||||}~~||||}}}|||}}~~||}}~|}|}}~||}}~||||}~|||||~||||||}{{z|{}{{{z{|}{{{{{{||{{{{|{{{{{||z|{||{z{{||{{{z||{{{{{{}|{}{}{}{|}{{}{}{||}{}{}}{{}{}}z|}}}z}{{}}{}{}|}{}{}{{||{~~|{|{|}|{|{|{|~|{|{||{{|{||{||{|{|{{~|{|{|~|{|{|{|||{}{|||||}{||||}|}|||}|{{||}|||||}||||}|||||||||||||{}|{}}}{}{|}|{}{}{|}}{}{}}{{}{}|{|}{}}}{{}}{}{}}}{}{}{|||}~~||||}}}|||}}~~||}}~|}|}}~|{|}}~|||}~|||||~|||||||{|{}|{}z}{}{|}{{}{}{||}{}{}}{{}{}}z|}{}}{}{}}z}z}|}{}{}z{||{~~|{|{|}|{|{|{|~|{|{||{{|{||{||{||{|{{|{|{|~|{|{|{|||{}{|||||}{||||}|}|||}|{{||}|||||}|||||}||||||||||||{||{}||{|{|}{{|{|{|||{|{|{{{|{||z||{||{|{{|||{|||{|{|{{}|{}}}{}{|}|{}{}{|}}{}{}}{{}{}|{|}{}}{}{{}}{{}}}{}{}{|||}~~||||}}}|||}}~~||}}~|}|}}~|{|}}~||||}~||||~|||||||{|{{||{~~|{|{|}|{|{|{|~|{|{||{{|{||{||{||{|{{||{|{||{|{|{|||{}{|||||}{||||}|}|||}|{{||}|||||}|||||}||||||||||||{||{}||{|{|}{{|{|{|||{|{|{{{|{||z||{||{|{{||{|{||||{|{{{|{}{{{{{|}{{{{{{||{{{{|{{{{{||z|{{||{{{{||{{{{||{{{{{}|{}}}{}{|}|{}{}{|}}{}{}}{{}{}|{|}{}}{}{{}}{z{}}}{}}{|||}~~||||}}}|||}}~~||}}~|}|}}~|{|}}~||||}~|||{|~||||||{|{z}}~}}}}~~}}}}}|}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}|}|}|~}}|}|}|}|}|}|~~}|}|}}~~}|}||}~~}|}}|}~~}||}|}~~}|}~||}~~}}|}|}}}|}|}}~|}|}|}}~|}|}|}}~|}||}}}~|}}|}}}~|}{}}}}}}}|}}}|}|}}}}}|}}}}}}||}}}}}}}|}}}}}}}|}}}}}}}|}||}}||}}}|{|||}|{|||}|{||||}}|||||||}|||||||}|||||||}||||}}||}}}||{{|}||{||||{||||}||||||||||||||{|}|||{{||}||||~}|~}~}|~}~{}|~}~}~~~}~}~}~~~}~}|~~~~}~~}~~~~|}~}~~~||}~}}}}~~}}}}}}}}}}}}~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~|}|~}}}}}}}}}}|}|}}}}}|}}}}}}~|}}}}}}~|}}}}}}~|}}}}}}~|}||~}|||}}}||||}|{|||}|{||||}~|||||||~|||||||~|||||||~||||~}|||}}}||{|}|||||||{||||}~|||||||~|||||||~||||{||~||||~}|{|}}}|{||}|{|{|||{|{|{}~|||{||{~|||{{|{~||||{||~||}|}|}||}|||}|{||||{{|~}~}}~}~~}}~}~~~}~}~}~~}~}~}~~~}~}}~~~~}~~}~~~~}}~}~~~~}}~}}}}}~}}}}}~}}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}~}}}}}~}}}}}~}}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}~}}}}}~}}}}}~}}}}}}}}|}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}~}}}}}~}}}}}~}}}}}}}}|}|}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}~}}}}}~}}}}}~}}}}}}}}|}|}}~}}}}}}}~}}}}}}}~}}}}}}}~}}~}}~}}}}~~}}}}}~}}}}}}~~}}}}}}~}}}}}}~~}}}}}}~~}}}}}}~~}}}~}}}}~~}}}}}|}}}}}}~~}}}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}~}}}}~~}}}}}|}}}}}}}~}}}}}}~}}}}}}~~}}}}}}~~}}}}}}~~}}}~}}}}~~}}}}}|}}}}}}}~}}}}}}|||}}}}}~}}}}}}}~}}}}}}}~}}}~}}}}~~}}}}}|}}}}}}}~}}}}}}}|||}}}}~}}}}}}}~}}}}}}}~}}}~}}}}~~}}}}}|}}}}}}}~}}}}}}|{|||}}}~}}}}}}}~}}}}}}}~}}}}}~}}}}~~}}}}}}}}}}}}~~}}}}}}}~}}}}}~~}}}}}}~~}}}}}}~~}}|~}}}}}~}}}}}~}}}}}}}|}}}}}}}}}}}}}}}}}}}}}~}}}}}}}~|}||~}|||~~}|||||}|||||~||||||}|||||||}|||||||}~||||||}~|||~}||}}~}||}||}||}|}}||}|}|}~}|}|}||~}}||}|~}||}|}|~||||}}|||}}}|||||}||||||||||||}|||||||||||||||}|||||||}||||}}|||}}}|||||}||||||||||||}}||||||{|||{|||}|||||||}||}}|}}~}}}}~~}}}}}}}}}}}}~~}}}}}}}~}}}}}}~~}}}}}~~}}}}}}~~}|}~}||}~~}||}||}||}|}}~|}|}|}}~|}|}||}~|}||}}~|}}|}|}~|}|~}}}}}~}}}}}~}}}}}}}|}}}}}}}|}}}}}}}|}}}}}}|}}}}}}~|}||~}|{|~~}|{|||}|{|||~||||||}|||||||}}||||{{||||{|||}~|||~}|{}}~}|{}||}|{}|}}|{}|}|}~}|}|}||~}|}||}|~}|}|}|~|||{}}|||}}}|||||}|||||||{||||}||||||||}||||||||||||||}||}}||}}~}}}}~~}}}}}}}}}}}}~~}}}}}}}~}}}}}}~~}}}}}}~~}}}}}~~}||}}|{}}}}|{}||}|{}|}||{}|}|}}}|}|}||}}|}|{}|}}||}||}|||}~}||}~~}||}||}||}|}}~|}|}|}}~|}|}||}~|}||}|}~|}}|}}~|}{~}}}}}~}}}}}~}}}}}}}|}}}}}}||}}}}}}}|}}}}}}}|}}}}}}|}||~}|{|~~}|{|||}|{|||~||||||}|||||||}}|||{{{|}|||||{|||||~}|{}}~}|{}||}|{}|}}|{}|}|}~}|}|}||~}|}||}|~}||}|}|~||}|||{}|||||{|||||{{||||}~}||||||}}||||||}}||||||}}|}|||||}|||||}z|{|||{{||||}}}|||||||}|||||||}|||||||}||{|||}|||||||||{|{}|{|{||}||{|{|||}|{||||{}|{||{|{}||}|||}||||||||{|||{{|||||}}||||||}}||||||}}||||||}}||{|||}|||{|||||{|{{|{|{||}}|{|{||{}|{||{||}|{{|{||}|||}}||}}|||}|}||||{{||||}~~||||}|}~||||||}~||||||}~||{|||{}||{|||||{|{}|{|{||~~|{|{|||~|{||{|{~|{{|{|{~||}||||}|||||||{|||{{|||||~~||||||}~||||||}~||||||}~||{|||{}||||||||{|{{|{|{||~~|{|{||{~|{||{||~|{{|{||~||{||||}||||{||{|{{{{{{{{|~~|{{{|||~|{{||{|~|{|z{{|~|||||||||{|||{{{}}}}|}}}}|}}}}}|}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}|}|}}}|}}}}||}}}}|||}}|||}}~}|||}}}~}||}||}~}|||||}~}}|}}||}}}|||}}}|||||}|||}}}}|||}|}}}|||||}}}|||||}}}}|}}||}}}|||}}}|||||}|||}}}}|||}|}}}|||||}}}|||||}}}}|}}||}}}|||}}}|||||}|||}}}}|||}|}}}|||||}}}|||||}}}|~}||~}}||~|}}|{~|~}|~|~|}}|~|~||~}|~||~|~}|~~|~|~}|}|}}|||}}}||}}}}|}}|}|}}}}}}}}}}||}~}}}||}}~}}|}|}}~||}}|||}}|||||||||||}|||||}~}|||||}}||||||}}||||||}}||}||||}|||||||||||{}||||||}~||||||~|||||||~||||{||~||}||||}||||||||{||{}||||||}||{||||}|||||||}||||{||}||}||||}||||||||{||{}||||||}||{z|||}|||||||}||||{||}||{||||}|||||||||||{}|{|{||}||{|{||}|{|||||}|{||{||}|}}|}}||{}}|||}}||||}|}||}|}}}}}|}|||~}|}||}|~}|{}|}|~||}}|||}}||||}}|||||{|||||}}}||||||}||||||}}||||||}}|||}|||}}|||||||||||{|||||}~}||||||}}|||||}}||||||}}||{|||{}|||{|||||{|{{|{|{||}~|{|{||{~|||{||~|{{|{||~||{||||}||||{||||||{{|{|{||}||{|{|||||{||{|}|{|{{{|}||}||||}||||||||||||{{|||||}||||||{}}|||||}}||||||}}|}}||}}|||}}|||||||||||||||||}}||||||||~||||||~|||||||~|||||||}||||||||||||}||||||}}||||||}}||||||}||||||}}||}}||{}}||{|}}||||{{{||||}}}||||||||||||{||||{|{||}|||}|||}}|||||||||||{{||||}~}||||||}}||||||}}|||||}}||{|||{}|||{|||||{|{{{{|{||}~|{|{||{~|{||{|{~|{|{||~||{||||}|||||||||||{{|{|{||}}|{|{|||}|{|||||}|{|{||}|}}|||}}||{}}||{|||||||{||||||}}|||||||{~||||{||~||{|||~|||||||}||||||||||||{{|||||}}||||||}||||||||}|||||}}||{|||{}|||{|||||{|{}|{|{||}}|{|{|||}|{||{|{}|{{|{|}||}}|||}}||||}}|{||{{{||||}}|||||||||||||||||||||{|||||}|||}}|||||||||||{{||||}~}||||||}}||||||}}||||||}}z~|{|{~|{||{y|{|{zzz{{{~~}{{{~||}|{{|{||}|{{|{{|}|||}{~||}|{||{|{{{|||{{{}~~|{{|}||~|{}{|||~|{{{|||~{{{{~||{{|{~z{z|{|zz{{{~}~{{{~{||~{{{{||{~{{|{{|{~|{|{{~|{{{{{{{|z{z{|z{{||||z{||{{{|z|{{{{{|{{{{{{{||||{|||{{||||{{{||z{{{|}||{{|||}{|{|{||}{|{{{||}{||~}{|~}|{}{~}{{{|y|{{{~~~|{{~}|}~|{}{||}~|{{{||}~{{~}{~|}{|}~|}{|{{zz{{{~~~{{{~}|}~{{}{||}~{{|{{|}~|{~{{~~|{{{{{{|{{|{|z{{~~~|z{~|||~|z|{{|{~|{{{{|{~||~|{~|||{||||{{{||z{{{~~~|{{~||}~|{|{||}~|{{{||}~{{~{{~{|{{{{{{{z{|z{z{{~~~{z{~{|{~{z{{{|{~{{{{{|{~{|||{{{{{{{{{~}|~|~}|}}~~}|}||||{}~~~{|{~}|}~{|}|}|}~{|}{}|}~||~}{~|~}|}}~~}|}|||}|}~~~|}|~}|}~|}}|}|}~||}|}|}~||~}}~|~}}{|~~|}{||}}|{~}~|{|~}}}~|{}}{|}~|}{|{|}~{|~}|~{~}|||~~||||||||{~}~{{{~}|}~{{}|||}~{|||{|}~{|~}|~{~}|{|~~||{||||{|~}~{{|~}|}~{{}|{|}~{|{|{|}~||~}{~~~}|~~~~||~{|||~{~}~|~{~}|~~|~}{~|~~|{~{~|~~|||~||~~~~|||~~~|~||||~|~~}|~|~~|}~|~||~|}~||||~|}~||||{|~||{|||||||{||||{{|~}{{|||}||{|{||}||{|{||}||||{{~~|{{|{||{||{|||{{{}|~{{||||~|{{{||{~|{|{||{~|||{{{~|{{|{||{||{|||{{{|}|{z||||{|{{{||{{|{|{||{{zz~}z~|~}|||~~|{|{zz{{z{|}~z{z}{|~z{}{|{|~zz|{{z|~|z~{||~~{||{||{||{|||{zz||}|zz~||||z||||{||||{{|{||}|||{{~~|{{{{||{|{{|||{{{}|}|{{|||~|{|{||{~|{{{||{~||~|{~|~|{{|~~|{{{|||{{{~}||{{~||}|{|{||}~|{{{||}~{z||{{|||{{|{||{{{zzz{{{|~|{{{|||}{{|{{|}{{{{{{|}{{{|{{~{|{{{{{{{{{{|zzz{{}|~{z{|{|{~{{{{|{~{{{{{|{~|{{}{{~|}|{|{{||z{z{|{{z|}||{{{}{|{|{{{{|{|{{{{{|{||~|{||~|{|||||{|{|||{{{|}}|{{~|{}||{|||}||{|{||}|{|||||}{~||}||||||{|{|||{{{}}||{{|}||~|{}{||~|{|{|||~|{||{{~||{{|{|||{{{z|{{{|}||{{|||}{|{|{{|{|{{{{|}{||~{{~|~{{{{~~{{{{|||{{{~}}|{{~|||||{{{||{|{{{||{~{z||{{|||{{|{||{{{zzz{{{|~|{{{|||}{{{|{{|}{{{{{|}{|||}{{||}|{||||{{{|||{{{|}||{{|}{}{|{|{||}{|{{||}{{{~{{|{~{{|{{{{{|{|z{{{{||}{z{~{|||{z{{||{|{{{{|{|z|{{|||{{~||{{{{||{{{{|||{{{}|||{{|||{~|{|{|{{~|{{{|{~{{|}{{{|}|||{||{|{{z{{{{|}|{{{|}|}{{{}{|||{{{|{{}{|{|{{|~|{{{{{{{|{{|z|{{{||}|z{|{||||z{{{|{z|{{{{||||~{{~|~{{{{~~{{{{|||{{{~}||{{~||{{|{{{||{{|{{{||{{z}{zzz{{z{zy{{z{{zxz{zz}}zz{}|{zzz}{{|{zz{z{{|{zzzz{|{{z{{}z{{zz|z{{z{z{zz|~zz{|}{{zz|{{|{{z{z{{|{{z{zz{{{y||{{{zz{z{z{zzzz{}}{zz}{{{{z}{{z{{{{{zzz{{{{yz|{{{{{{{{z{{{zz{|zzzz|}zzy}{{{{z|{zz{{{{zzzz{{{{yz~{{z~{{{zz{{{{zz|zzzz~~|zy~{{z{z~{{z{z{{zz{z{z{{{z~}}z~}z{}y{}z{{zxz{zz~~|z{~}{}{z~}{|{}{}z{{|{}{{{|~}}{{}{{}z{}{{{{zz{z{~~|z{~}{}{z~}{{{}{}{{z{{}{{zz~{{{y|{{{z{{{{z{|zzz{~~|zz~{{{{z~{{z{{{{{zzz{{{{{|~{|{{{|{|z{|z{{{{z{z{~~|z{~|{|{z~|{|{|{{z{{|{|{zyz{{|{{{{{|~{|{{~}|}|z}|{{}}|{z|~}||{~|}|{|~||{}|{{|{|{}|{{{|}}|{{|}|{|{{}{}{{z{z{}~|z{}}{|{z}}{{{|{}{{{{{|{{|{}|}{||}|||||||}}|||||}~{{|}}|}{{}}|}|}{||}|}|}{|{|}{||{|}|||{|||{{||{||}}}{{}||||{}||{|||{|{|{|||{{|}{|{{|}|||{||{{{||{{|}}|{{}|||{{}||{||{{|{|{||{{{z|{{{z{}{{{z{{{{{{|z{z}~zz{}|{{{z|{{|{{{{{{{|{{{{{z~|{{z~}{{{z{}{|{{|z{zz}|z{~|{|{z~|{|{{{|{|{|{{{}{~|}||{{|~{{|{{~{~~{|{~{{}}{~}~{|{{}~{~{|{|{~{~{|{{{||{|{{||{{|z{|{{{{|z{z{|~{{}|{|{z||{|{|{{{{{|{|{{{z|{{{{||{{{z{{{{{{|{{z{|}{z}|{{{z|{{|{{{{{{{|{{{z{z}{{zz{}zz{z{{z{zzyz{zz|}zz{{{{zz}{{zz{z{zz{zz{z{y{~{z{z~||{zz|{{{zz|zz{|}{|zy~{z{z~{|z{z{{|z|z{z{||{{{|{{{{|{{|{z|{{{{||{{{{|}{{{}||{{|{{||{{{{{{||{{{{|}{|{{{|{{|z{|{{{{{z{z{}}{z{}|{|z}|{|{|{{{{{|{|{{{||{|{{{|z{|z{|z{{{zz{z{|~{z{||{|{||{{{|{{z{{{{|{zzz}{{zzz|zz{z{{z{zyyzzzy}}zyz|{z{zy{zzz{z{zzzzz{z{yz|{z{z{}{{zz{{{zz{|zzz{|}zzy}{{z{z|{z{z{{zz{z{z{{{|~{|{{~|z{|z{|z{{{{z{z{|||z{~|z|{z~||{|{{z{{|{|{|{{z{z|{{z{|}z{{{{{z{{z{z{zz|}zz{||{{zz|{{|{z{z{{|{{z{{||{|{{{|{{|z{|{{{{|z{z{|}{z{}|{|{z||{{{{{{{{{{|{{{z}{{{z|{{{{z{{{{{{{z{z{}}{z{}|{{{z}{{|{{{{{{|{{{{yz|{z{z{{{{zz{{{zz{|zzzz}{zzy}{{z{z|{zz{z{zzzz{z{{{||{|{{{}z{|z{|z{{{{z{z{|}zz{||{|{z||z|{|{{{{|{|{{zz~{{{z~|{{{z{{{{z{yzyz{|{|zz~{{z{z~{{z{{{{{{z{{{|{zzz{z|{zzz|{z{zz{{z{{{{z{zz}}zz{||{zzz|{{|{zz{z{{{zz{{||{|{{{}{{|z{|{{{{zz{z{|}{z{||{|zz||{{{z{{{{z{|{{zz|{{{z|{{{{z{{{{z{|zzz{|{{zz}{{{{z|{{z{{{{{z{z{{z{z}{{z{{{z{{z{{z{{z{z{zz}}zz{}|{{zz}{{|{{z{z{{|{{{zyz{zy{z{zzzyyzz{zyz{{yyz{zzzz{zzy{{z{zzy{{zzy{zzy|zzz{z|yy{{|z|y{{zz{yyzzzy{|zyy{|z|z{{z|z|z{{yzz|z|{{{{~{{{y~{{{zyz}zz{{zz{{{~{{z{~{{{{~{z{{{{~{z{z{{{y|{zz{z|{y{{|z|zy|zz{zzzzzz{|yyz{}z|{{{{|z|{{{zz{|z|zzzzzzzzy|{zzzzz{zzzzyyyzz|{zzz{{zzz{zzzzzzzzzzzzzzzzzyz~zyz~{yzyyz{zyyyyzyyy~{zyy~zzzz~zzzzzz~zzzyzzzy{zyz~z{z~{zzyyzz{zyz{{yyz~{zzz~zzy{~z{zzy{~zzy{zzy|zzzz~z|z~{|z|y{{zz{yyzzzy~}zyy~|z|z~{z|z|z~{zzz|z|{{z{{~{{{{{{{{z{{zz{{yy{{{~}{z{~|{{{~{z{{{{~{z{z{{{zzzzz~zzzz|zzzzzz{zzz{{yzz~{zzz~{zzz~{zzzzz~{zzzzzzzyyyyy{{{{{z{{{{{{{|{{{zz{{zz{{z{{{|{{z{{{{{{{{{{{{{{{{{{{{{{{z{{~{{{{~{{{zz{{z{{{z{{{~{{z{~{{{{~{{{{{{~{{{{{{{{{z{{{{{{{|}{{zz{{z{{{z{{{|{{z{{{{{{{{{{{{{{{{{{{{{|{{{||||{||||||||||{|||{|{||{{{||||{||{|||{||{|{|||{{z{|||{{{|{{|{z|{|{{||z{{|{{z{|{|{{|{{{|{{|{{{{{|{|zzzz~{|zz~{|{|zz{{z{z{{zy~zzzz~|{|z~{z|{|z~{zzz|{||zzzz{{|zz{{|{|zz{{z{z{{zz{{zzz{|{|z{{z|{|z{{zzz|{||zz{z~{|zz~||{|z{}{z{z{{{zz{zzz~|{|z~{z|{|z~{zzz|{|||{z|{{{|{{|||{|z{|{{|{{{||{||z{{|{|{{|{|{|{{|{|{|{||{z{{{{|{{|{|{|z{{{z{{{{{{{||{{{|{|{{{z|{|{{{z{z|{|y{yyz{zy{z{zzzyyzzzzyzyzyyz{zzy{zzy{{z{zzy{{zzz{zzyz{zzz{zz{z{{zzzz{{zzzzyzzzz{{zyz{zz{{{{zzz{{{zz{zzzy{zy{~{y{z~{z{yz{{{{y{{{yy{{zzz{~{z{~{{z{y{~{{z{z{y{||{{z{{{|{{|{|{|{{{{{{{{{zz{||{{{{|{{{{{|{|{{{{z{|{||{z{{{{|{{{{|{|z{{zz{{zz{{{||{z{{|{|{{{|{|{{{z{{|{|zzzyzzzzzy{{zzyz{{zyzyyzyyy{{zyy{{zzzzyzzzzzzzzyzzzzzzyz{zzzz{{yzyy{z{zyz{{yyz{zzz{{zzyz{zzzzz{{{zzyzz|{z{{~{|{{~{|{|z{{zz{{zz{{{||zz{~|z|{~{|{|{~{z{z|{|{z{|{zzz{z|{z|{|z|zz{zz{zzzzzz{|yyz{|zz{{{{||{{{zz{|z|{{z{{{{{{{{{{{zz{{{z{{{{{{{|{{z{{{{{{{{{{{{{{z{{{{{|zzzz{z|zy|{|z|z{{zz{zzyzzz||zyz{|z|z{{z|z|{{zzz|z|yzzyzzzyzy{{zzyz{{zyzyyzyyy{{zyy{{zzz{zyzzyzzyzyzzyyzzyz{zyzz{{yzyyzz{zyz{{yyz{zzzz{zzyz{zzyzyz{zyzyzy|{z{{{{|{{{{|{|z{{zz{{zz{{{||yz{{|z|{{{z|{|{{{{z|{|z{zzz~{z{y~{z{zyz{zzzzyzyzz|zzzz~z{z{~z{z{z{~zz{z{z{zzz|{zzz{z|{y|{|z|zz{zz{zzzzzz{|zyz{|zy{{{{|z|{{{zz{z|{{z{{z{{{{{{{{zy{{zz{{yz{{{|{{z{{{{{y{{z{{z{z{z{z{{z{zzz{zz{z|{zzzyzz{zzz{{yzz|zzzz{zzz{{z{zzz{{zzz{zzzzzzzyzyzzyzyzzy{zyzyzzyzzzzyzzz{yzyzz{zzyzz{yzyzyzzzzzzy{z{zzzyzz{zzzzzzzzz{zzzz{zzzzz{zzzzz{zzzzzzzz{z{zzzyzz{zzyy}zz{{zzzz{zzzz{{{zzz{{{z{zz{{zzz{zyy{zz{y{{y{y{y{zy|zy{yzzyzzz{yzz{}y{zz{{z{y{{{yzy{yyzzzzyyzyzyyyzzyzyyyyzzyzzzzzzz{zzzzz{zzyyz{zzyzyyyzzzzzzyzzyzyzzy{zyzyzzyzzzzyzzz{yzyzz{zzyzz{yzyzyzzzzzzz{z{zzzzzz{zzzzzzzzz{zzzz{zzzzz{zzzzz{zzzzzzy{zzz{y{z{y{y{zz{zy{yzzyzz{{zzz{{z{zz{{y{y{{{yzy{yzzz{z{zzzzz{zz{z{zz{{yzzz{{{zz{{|zzz{{{z{zz{{zzz{zyyyyyyzzzz{zzz{z{zzz{{z{zz{z{zzzzzzz{{zzz{{{zzz{{zz{zz{zzzz{zzzz{z{zzz{{z{zz{z{zzzzzzz{{zzz{{{zzz{{zz{zz{zzzz{zzzz{z{zzz{{z{zz{z{zzzzzzz{{zzz{{{zzz{{{z{zz{{zzz{zzz{|z{zzz{{z{z{{z|zz{zzz{{{{z{{{{zzz{{{z{zz{{zzz{z{{{{{{{{{||{{{{||{{{{{z{{{|{{{{|{{{{{|{{{{{|{{{{{{z{zzz{z{zz{z{z{zz{zz{zzzzzzzzzz{{z{zz{{z{z{{{zzz{zz{zzz{z{zz{z{z{zz{zz{zzzzzzzzzz{{z{zz{{z{z{{{zzz{zz{zzz{z{zz{z{z{zz{zz{zzzzzzzzzz{{z{zz{{z{z{{{zzz{zz{z{z{z{zz{z{z{{z}{z{z{zz{z{z{z{{z{zz{{z{z{{{z{z{z{z|z|{|z|{z|{|z|{{||{|{{z{|{{||{{|z|z{{|{|z|{|{|{|zyzzzzzyz{yzyzyzzzzzyzyzzyzzzzzzzzzzzz{zzzyz{zzzzzyyzzzzzyz{z{yzyzzz{zyzyzzyzzzzzzz{yzzz{{zzyz{zzzzzyzzzzzzzz{z{yzzz{z{zyzzzzyzzz{zzz{zzzz{{z{zz{{z{zzzzzzzzzzz{z{{zzzz{|z{zz{z{z{{zzz{|zzz{|{{zzz|{{z{zzz{z{{z{{z{{{|{{{{{z{z{{z{{{z{{{{z{{{{{{{{{{z{{{{z{{zz{z{z{z{{z{z{z{{z{zz{{zzzz{{{zz{{{z{{{{z{z{{{zzz{zyzzzzyyzzzzyyyzzyzyyzyzzyzzzzyzzz{yzyzzyyyzzzyyyyyyzzzzzyzzy{yzyz{z{zyzyzzyzyz{zzzz{yzzz{zzyz{{zzyzyzzzzzzzzzz{zzzzzz{zzzzzzzzz{zzzz{zzzzz{zzzz{zzzzzzz{z{z{z{zz{z{z{zz{zz{{zzzz{z{zz{{{z{z{{{{z{{{zzz{z{zzy{zzz{y{{z|y{y{zz{zy{yzzyzzz{yzz{{yzzz{{z{{{{zzy{yzzz{z{zz{z{z{zzzz{zz{{zzzz{{zzz{{{zzz{{zz{z{zzzz{zyzzzzzyzzy{yzyz{z{zyzyzzyzzz{zzyz{yzzzz{yzyz{yzyzyzzzzzzzzzz{zzzzzz{zzzzzzzzz{zzzz{zzzzz{zzzzz{zzzzzz{z{z{z{zz{z{z{zz{zz{{zzzz{z{yz{z{z{z{z{y{z{z{zz{zzzzzzzzz{yzzzzzzz{zzzyzzyzzzzzzz{zzzzz{{zzzz{{zzzzzzyzy{zzz{y{{z|y{y{zz{zy{yzzyzzz{zzz{{zyzz{{z{y{{{zzzyzzz{z{zzzzzz{zzzz{zz{{zzzz{zzzz{{{zzy{z{z{zzz{zzz{zz{yzzyzz{yzzyzzzzzzzyzyzzzzzyzzzz{zzyzzzzzyzzzzzzzyzz{{{zzyz{{zzzy{{|zz{{zzz{{{zzz{{{{zzz{{{zzzz{{zzzzzzz{zzzzz{{zzzzz{z{yzzz{zzzz{{{{zz{|zy{zz|{zzzz{zzzzzz{{z{|z{{|{{|z{{{||{|{{|z|{||{{{{||{{{{{|{|z{{|{|{|zzzz{{{zzzz|yzzzz{{{zz{{{zz{{{{z{{{{|zzz{z|{zzzz{zzzzzyzzzyzyyz{yyzyz{zzyyyzzyyyzzz{zyzzzzy{zzzzzyzzzzyzzyyzz{yzzzz{yzzyz{zzzzzzzyzzzzz{zzzzzyz{zzzzzyzzzzzzzyzzz{{{zzz{{zzzz{{|zz{{zzz{{{z{z{{{{zz{{{{zzzz{{zzzzzz{{{z|{z{{{z{z{{{{{z{z|zz{z|{{{{z|{z{{z|{z{z{|{z{z{zzz{{{zzzz{{zz{z{{{z{{{{z{{{{{{{{{{}{z{{z}{z{zz}{z{zzzyyz{yyz{zz{{{{zz{{{zzzzz{{zzzz{|{zzzzzz{{z{z{{{z{zzz{z{zzzzz{zzzzzzz{{{zzzzz{{zzzz{|{zzzzzz{{z{z{{{z{zzz{z{zzzzz{zzzzzzz{{{zzzz{{{zzzz{|{zzzzzz{{z{{{{{z|zz{{z|{zzzz{zzzzzzz{{{zzzzz{{zzz{{|{zz{z{z{{z{z{{{z{zzz{z{zzzzz{zzzzz{z{}{{{{z{|{{{{{{||{{{{{{{{{{{{{{{{{z{{{{{{{z{{{{{{{z{{{z|{z{z{{z{z{{{|{z{{|zyzzzz{{{|{z{z{|{z{z{|{z{z{zz{{{z|{z{{{{z{z{{{|{z{{|zzzz{{{{{||z{{{||{{z{|{z{z{zz{{{z|{z{z{{z{z{{{|{z{{|zz{z{z{{{|{z{z{|{z{z{|{z{z{zz{{{{|{z{z|{z{z{{{|{z{{|zz{{zz{{{|{{{z{|{z{z{|{z{z{z{{{|{|{{{{||{{{{{||{{{{||{{{|{{{{||{{{{||{{{{|{{{{{{{{{{{{|{{{{|{{{{{{||{{{{|{{{{|{{{{|{{{{{|{{{{{|{{{{{{yz{zyzzyz{{zzzyz{z{zzzzzyzzzz{{zzz|zz{zz|{zyzz{zzzzyyzz{yzzyzz{zzzyzz{{zzzzzyzzzz{yzzz{yzzzz{zzyzz{zzzzyzz{{{zzzzz|{zzzz{{zzz{{zzz{{zzz{{{{zzz{z{zzzzz{zzzzzzz{{{{zzz{{{{zzz{||z{{{{z{{{{{{{{{{zz{{{{{zzz{{{z{zzz{{|z|{z{z|{z{z{{{|{z{{|{z{{|{z{{{||{z{||{{z{|{z{z{zzzz{{{z|{z{z{{z{z{{{{{z{z|zz{z|{z{{z|{z{z|{z{z{|{z{z{zyzz{yzzyzz{yyzyzz{{yyzyzyyzzz{yzzzz{yzyz{yzyzz{yzyzyzz{{{zzzzz|{zzzz{{zzz{{zzz{{zzz{{{z{zzz{{zzzzz{zzzzzzz{{z{zzzz{zzzzz{||zzz{{zzz{{zz{z{{zzyz{{zzzz{{zzzzzz{{{{|{z{{{{z{z{{{{{z{{|zz{{|{{{{{|{z{{{|{{z{|{z{z{zzz{{z{zzzz|zzzz{{{|zz{{{{z{{{zz{{{{|zzz{{|{zz{{zzzzz{zzzzz{{{zzzz{{zzzz{{|zz{{{zz{{{zzz{{{{zzz{{{zzz{{zzzzzzz{{{zzzzz|{zzzz{{yzz{{zzz{{zzz{{{z{zzz{z{zzzz{zzzzzzz{{z{zzzz{zzzzz{||zzz{{zzz{{zz{z{{zzyz{{zzzzy{zzzzzy{{{z|{y{z{{z{y{zzz{z{z|zz{z|{z{{z|{z{zz|{y{y{|{{z{yzzz{{zzzz{{{zzzz{{{zz{{zzz{{z{{z{{z{zz{{z{zzzzz{zzzzzz{{z{zzzz|zzzz{{{|zz{{{{z{{{zz{{{{|zzz{{|{zzz{{zzzzzzyyzzz{zzzzzz{zzzzz{{{zzzzzyzzzzzzzzzz{zzyzzzzzzzzzzzzz{{|z{{y{{||zz{y{|}z{z{y{|zz{z{zy{{z{|zz{z{|{{y{{|{{z{z{{||{{{y{||z{{{z|}z{{{|z|z{{|{|z{{|{|{y{|{|{{{{{|{{{{{{{{z{{{{|}||{{{{|}z{{||{|z{||{}{}{|{}{{|z{}{{{{{|{{{{{z{}z{{z{|}|~z{z{|}z{z{z{~~z{z{~z}{z{~z{|z{~{{z{{~z{z{z|}}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}}~|}|}||z{{|z{z{{||zzyz{|}z{zzz{|zz{z{|z{{z{|{z{z{|{yz{{|{{zyzz{{|z{{{{||zz{z{|}z{z{z{|zz{z{zz{{z{|zz{z{|{{z{{|{{z{z{{{||{{{{||z{{{z|}z{{{|{|z{{|{|z{{|{|{z{|{|{{{{{|{{{{{{{{|z}{{{||{{{{|z}z{{||}||{||}{z{||}{{{{|}{{{{{}{{{{{{{{{{z{|{{|||{|{{|}||{||{|z{|||}|{|||}{z|z|}{|{{{|{|{|{{~}~z{~{~|}~{~{~|}z~{~|~~~{~|~~{}~|~~{~|{~~{~{~{~{~{~{yyzz{yz{|}z{|}z|}z}z}z{{zz{{z{z||{z{z{{}zzzz{zzz{{{{z{{{{{z{z{{{z{z{{{z{z{zz{{zz{{z{z||{z{z{{}z{zz{zzz{{{|z{{{{|z{z{{|z{z{{|z{z{z{{{|z{{{{{||{{{{{|}{{{{{|z{{{{|z{{{{|{{{{{|{{{{{|{{{{{z{}|z{{z{|}||z{z{|}z{z{{|zz{{{|z}{{{|z{|{{|{{z{{|{{z{z{{{||{{{{{||{{{{||}|{{||||{||{}{{||{}{{{|{}{{{{{|{{{{{{{{~{}{{{{~~~{{{~|}{{{~|}~{~|}~{{~|}~{{{|}~{{{{}~{{{{{{{{|z}{{{{||z{{{||}z{{||}{|zzzzz{||}{{{{|}{{{{{}{{{{{{{{{|z}{{{{||z{{{||}z{{||}||{z{{z{||}{{{{|}{{{{{}{{{{{{{{}|z}{{{|}||{{{||}z{{||}||{|{|z}||}|{{||}|{{{{}|{{{{{{{{|z}{{{{||z{{{||}z{{||}||{||}{{||}}{{{|}}{{{{}|{{{{{{{{~z}{{{{|~~{{{||}z{{||}|~{||}z{||}~{{{|}~{{{{}~{{{{{|}}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}}~|}|}||{{{||{{{{{||z{{{{|}z{{{|{|z{{|{|z{zz{zz{|{|{{{{{|{{{{{{{}||{{{{|}||{{{{|}z{{{|{|z{{|{|z}{{|z{||{|{{{{{|{{{{{{{{||{{{{{||z{{{{|}z{{||{|z{||{}{{{|}{z{|{}{{{{{|{{{{{{{{~|{{{{{|~~{{{{|}z{{{|{|~{{|{|z{{|{z{{|{~{{{{{~{{{{{{{{||}{{{{||{{{{||}z{{||}||{||}}{{||}}{{|}}{{{{}|{{{{{|{}~|}{|{|}~~|{|||}|{|||}~~|||}~|}||}~|||}~|{|{}~|{|{||{z{}|z{{z{|}||z{z{|}z{z{z{|zz{z{|z}{z{|{{|{|{{z{{|{{z{z{{{|z{{{{{||z{{{{|}z{{||{|z{||{}{{{|{}{z{z}{z{{{|{{{{{z{{~z{{z{{|~~z{z{|}z{z{{{|~z{{{|z{{{{|{{{{{z{z{{~{{z{z{{{|z}{{{{||z{{{||}z{{||}||{||}|z{||}|{{{|}|{{{}|{{{{{{{{||{{{{{||{{{{{|}z{{||{|z{||{}{{{|{}{{{|{}{{{{|{{{{{|{}~|}{|{|}~~|{|||}|{|||}~~|||}~|}||}~|{||}~|{{}~|{|{{z{{{{{|z{{{{{||z{{{{|}z{{||{|z{||{}{{{|{}{y{z{}{{{{z{z{z{z{{~z{{z{{|~~z{z{|}z{z{{{|~z{{{|z{{{{|{{{{{|{{z{{z{z{z{{{|z}{{{{||z{{{||}z{{||}||{||}|z{||}|{{{|}|{{{{}|{{{{{{{||{{{{{||z{{{{|}z{{{|{|z{{|{|z{{|{|{z{|{|{{{{{|{{{{{{{|z{{{{{||{{{{{|}z{{||{|z{||{}{{{|{}{{{{{}{{{{{|{{{{|{}~|}{|{|}~~|{|||}|{|||}~~|||}~|}||}~|{||}~|{|{}~|{||z{{{{||~}|}}|~}|}|~~}|}|}|}|}|}|~~}|}|}}}~}|}||}}~}||}|}}~}|z{}{{}{|}{{z~{}{{{{z}{{{{{~~}z{{{}{~}{{{{{{~}{{{z{{~}z{z}|{{{}{|{}|}{|{}z{}|{}|}{|{}|}z}}}{}z{|{}}{{z{}{}}{{|||||}|||{|||||z||||}{|||||{}|||||{}}||||||}}||||||}}||||||{||||{|||||{|{|}|{|{|||z|||{|||{||||{||{||{|{||{|||}~}|}}~}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}||}|~}|}}|}|~}|{|~}||}{}||{~|}||{|{}||{|{~~}{|{|}|~}{|{|||~}{||{||~}{{{}}|{{{}|{}|}}|{}{|}|{}|}||{}|}{}}}{}{{|{}}{{{{}{}|{{|||}||}|||||||}|||||}|||||||}||||}{}}||||||}}||||||}}||||}|{{|||||||}|{|{|}|{|{|||{|||{}||{||||{||{||{|{||{|z{|}|{{z|||{||}|{{{|}|{{{{||{z{{{}{|{{{z|{{|{z{{z{||{z{|~}|~{|~}|~}~}|~}~|}|~}~}~~~}~}~}}~~}~||~}~~||~}~}~{{{||}|{{{|}|{}|}|{}{|}||}|}||{}|}{}}}{}|{|{}}{{|{}{}}{{||||||}|||||||||||||}{||||||}||||||}}||||||}}||||||}}||||||{{||||{||||||{|}|{|{|||{|||{||}{||||{|}{||{|{|}{|z{|||{{z|||{{||||{{|}|{{{{||{z{{{|||{{{z|{{|{z{{z{||{zzz{|{{{{{|{{{{{{{{{z}{z{z{{|{{z{z{|}{{z{{{{}{{z{{z{}{z}|}|}||}|{z{{{{z}{{{z|~~|||}}~~||}~~~|~}||}|~}~}~}}~}~|}~}}~}||}~}}~|}|}~}|||}}||||}}||}}}}||}||}||}|}}|}|}|}}}|}||||}}||||}|}}||{|}}||||}}|||}}}|||||}|||||}|||||}|}|||||||}|||||||}|{{|}}|{||}}||}}}}||}|}}||}|}|}{}}|}|}|}|}||}}|}|{}|}}|{{|}}|{||}}|||}}}|||||}|||||||{|||}|}|||||||}|||{|||}|{{|}}|{||}}|||}}}|||||}|||||||{|||}|}|||||||}|||{|||}|{}}}~}}}}|~}}}}~~}}}}}|}}}}}}~~}}}}}}~}}}}}}}~}}}}}}}~}}||~|||}|~||||~~||||||}|||||~|}||||||}||||||~}||||||~}|||||||}|||||}|}|||}||}||}|}||}}|}||}}}||||}}}|||}|}}}||||}||}||}|||||}|||||}|||||||}||||}{}{|||||}}||||||}}|||||||}||||||||||||||}|||||||}||||||}{{||||}}||||||}}|||||||}||||||||||||||}|||||||}|||||{|{{z||||}|||||||}|||||~}|}}|~}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}||}~}||||}}~}|||||||}|||||}|}|||}||}||}|}||}}|}||}}}}||||}}|||}|}}}|||~||{{|~||{|~~||||{|}|||||~|{|||||{|{||||{|{||{|{|~{||||||{{||||{}|}||{}{|}||}|}||{}|}{|}}{}|||{}}||{}{}}{||{|}|{{||}|{|||}|{|{|}|{|{|||{|{|{}{|{|{||{{|{{{|{||{||{|||{{||||{|||||{|{|}|{|{|{|{|{|{||}{|{||{|}{z{|{|}{||||||~}|}}|~}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}||}}~}||}}}~}||||||{{||||{}|}|||}{|}||}|}||{}|}||}}{}|||{|}{||{}}}{|||||||}{|||||||||||||}|||||||}|||||||}|||||||}||||||}|{|~||{{|~||{|~~||||{|}|||||~|{|||||{}{||||{|}{||{|{|{{{||||{{{|||{}|}||{}{|}||}|}||{}|}{|}}{}|{|{}}{{|{}{}|{z{|}|{{{|}|{{||}|{{{|}|{{{{||{{{{{}{|{{{{|{||{{{{z{{|{{{{{{{z{|{{z{|{{z{{{{{z{zy{z{z{{{|{z{z{{{|{z{{z{{|{zzz{{|{{{{}|{{{{{{{|{{{{{|{|zz|{|{||{{|{{{{||{{{{{{|{{{zzz{z{z{{|z{z{|z{z{y|zzzzz{zyzz|}{{{zz{z{{{{zz{z{{{zzz{|z{z{|z{z{|z{z{{{zzz{y{|zzy{|{{{zzy{{z|{zzzzzz{{z{{{|{{|}|{z{{|{z|{|{{z|{|{z|{|{||{{|{|{{|{{|{{{{|{{{{{{|{{{}|{{{z|{{|{{y{{|{|z{|{|{||{{|{{{{||{{{{{{|{{{{{{{|{{{||{{{||{{|||{{{||||{|||{|||||{|{{||{|{{{|||{{z{{|{{{z{|{z{{|{z{{z|zz{zz{z{z{|}|{z{z{{{|{z{{z{{|{zzz{|{z{z{|{{{|{{{{{{{zz{z{|zzz{|{{{{zz{{{|{{zz{z{{{z{{{|{{{|}|{{{|{z|{|{{z|{|{z|{|{||{{|{|{{||{|{{{{|{{{z{{{{{{z{{{{{{{{z{{z{{z{zyzz{z{{{|{z{z{{{|{z{{z{{|{z{{{||{{{}||{{{|{|{{{|{|{|z{|{|{|}{{|{{|{||{{{{{{|{{{z{{|{{{z{|{{z{|{z{{{{{z{z{|z{z{|||{z{z{|{|{z{{z{{|{z{{{|{{{|}|{{{{|{|{|{{z|{|{z|{|{||{{|{|{{|{{|{{{{|{{{z{{{{{{z{{{{z{{{{{{z{{z{zyzz{z{{||{z{z{{{|{z{{z{{|{zzzz{{z{z{{{z{z{{z{zz{z{zzzzzzzz{|{{{zz{z{z{{zz{z{{{z|{{{{{{{z{{zzzz|}}}||||}}|||}}||||}}|}|||||}||}}}||}|||}}||}|||}}||{{|}|||{}}||{}}|||||{||||||||||}}}|||{|||||{{|{||||{{{{}|||{}}|||}}|||{{{|{|{|{{||{}}|||{{|||||{{||{|||{{{{}|||{}}||{}}|||{{{|{|{|{{{{{}}|||{{|||||{{|{{|||{{{{}|||{}}||{}}|||{{{|{|{|{{{{z}}|||{{|||||{{|{{|||{{{{|{z{|{|{{|{|{{|{|{|{|{|{||{|{|{{|{|{{|{{|{z|{|{{{}|||}|{|}}}}|||}}|}|}}}|}|}||}|}|}||}|}|||}|}|{|||}|}{{{||{{|}||{{{||{|{|{|{|{|{||{|{||||{||{||{|{{{{||{{{{{|{{{|{||{{{|{{|{|{{{|{|{||{|{|{|{{|{{||{|{{{{||{{{{{|{z{|{||{{{{{{|{|{{{|{|{||{|{||{{{|{{||{|{z{{|{{{{{{|{z{|{||{{{{{{|{|{{{|{|{||{|{|{{{zz{{|{{|{z{{|{{{zz{|{{{z{|{{z||{{z{{{{{z{z{|z{z{|{|{z{z{z|{zz{z{z{{z{|{||||{{|||||{|||||||||||||{||||||{||||||{}|||{{{|}|{{{{|{{{|}||{{{|{{|{|{{{|{|{{|{|{||{{|{|{{|{|{{{{|{{{{{{|{{{{}|{{{{|{{|{{{{{|{|z{|{|{||{{|{{{{|{{{{{{|{{{z{{{{{{z{|{{z{|{{z{{{{{z{zz{z{z{{{|{z{z{{{|{{{z{{|{zzz{{{z{z{{{z{z{{z{{{z{z{{zz{z{z{{|{{{{z{z{|{{z{{{{{z{{{|{{{|}|{{{{|{{|{|{{{|{|{{|{|{||z{|{|{z|{{|{{{|{{{{{{{{{|{{{|{|{{{||{{|{||{{|{|{{|{|{|{{{|{|{{{|{|{{{||{{{{{|{{{{}|{{{{|{{|{{{{{|{|{||{|{||{{|{{{{|{{{{{{{{{{{{{|{{{|{||{{{|{{|{|{{{|{|{{|{|{|{|{|{|{{||{|{{{{|{{{{{|{{{{}|{{{{|{{|{z{{{|{|zz|{|{||{{|{{{{|{{{{{{{|{{z{{{{{{z{|{{z{|{{z{{{{{z{zyzz{z{{{|{z{z{{{|{z{{z{{|{{{{{{z|z{{zzyz{z{{zx{z{zzzz{z{{|zz{z{{z{zz{{z{z{zzzzz{zzzz{{{{z{z{zzyz{{yzzzyzzy{{|{zz{z{z|zzz{yzz|zzzz{{z{z{{z{z{{zz{zz{zzzzzz{zz{{zzzz{{z{{zz{zzz{{zz{{{{z|z{{zzzz{z{{z{{z{zzzy{z{{|zz{z{{z{zz{{z{z{zzzzzzzzzyz{zzzz{yzzzy{yzyzzzzyz{{zzzy{{zzzzzzzzzzzzzyyz{zzz{zzzy{zzzyzzyzyzz|{yzx{{{zyz{{zz{zy{zy{yzzzz{{{{|z{{zzyz{z{{zx{z{zzzz{z{{|zz{z{{z{zzz{z{z{zzzz{{z{{z{{{z{z{{zz{zz{zzzzzz{zz{{zz{z{{z{{z{{zzz{{zzzzz{zzzz{{{z{{{zzzy{yzzzzzzzz{{|{zz{{{z|zzz{zzz|zzzzz{{zzz{zzy{{zzzzzzzyzz|{yzz{{{zzz{{zz{zz{zz{zzzzz{{{{z|z{{zzz{z{{z{{z{zzzy{z{{|zz{z{{z{zzz{z{z{zzz{{z{zz{z{{zzzzzz{z{{zzzzxz{zz{}zz{z{{z{zz{zzzz{zzzz{{{{z|z{{zzz{z{{z{{z{zzzz{z{{}zz{z{{z{zzz{z{z{zzzyzz{{zzz{{{{z{{zzzzzzzzz|{yzy{{|{yz{{{z|zy{{z{z|zzz{{{{z|z{{zzzz{{{z{{y{zzzy{z{{|zz{z{{z{zzz{z{z{zzzzzz{zzzz{z{{z{z{zyzz{yzzzzyzz{{|{zz{z{z|zzz{zzz|zz{{{zz{zzzz{{{{{}{|z{}{||{}|{|{{|{{z{{{z{{}|{{z{}{||{{}{{{||{{||{||{|{||{|{||{||{||{|{{{|{||}|{|{|||}|{||{||}|{{{{||{{|{|{||{|{|{{|{{|{|||||{||}|{||{|{||{{|{|{|{{{{{|{{|z|{{{{|{{{{{{{{{z{{z{{|||{{z|{{{|{{{{{{{|{{{{{|{{|z|{{{{|{{{{{{{{{z{{zzz|||{{z|{{{|{{{{{{{|{z{{z{{z{z{{{{z{|{|{z{{z|{z|{{zz{zz{z{{{|{z{{{|{{{z{|{{||{||||{{{||{{{{||{{{{|||{{{{||{{|||{{|{{{||{{|zz{{{{z|z{{{{z{{{{{z{{{{zz|{{z{{||{z{{{||zz{{{{{|zzz{z{{z{z{{{{z{{{z{z{{{zzz|{{zz{{|{z{{{{|zz{{z{{|zzz{z{{z{z{{zzz{{zz{z{{zzzz|{{zz{{zzz{{{{{zz{zz{{zzz{zz{zzzz{{z{zz{zzzz{{zzzzyz{zz{{zz{z{zz{z{zz{zz{zzzzz{{zzz{{{{z{{zzz{{{zz{z|{zzz|{|zzz{zz{zz{{z{z{z||zz{{{{{{z|{{{{|{{z{{{{{z{{|{{{z|{|{z{{{{|{z{{{{{|zzz{{{{z|z{{z{z{{z{{z{{z{zzzz{z{{|zz{z{{z{zz{z{z{{zzz{{{{z|z{{z{zz{z{{y{{z{zzzy{z{{|zz{z{{z{zz{z{z{{zzzzz{zzzz{z{{z{z{zzyzz{zzzzyzzz{{|{zz{z{z|zz{zzz|zz{yz{{zzz{{zzy{{zzzzz{zzzz|{{zy{{{z{z{zzz{z{zz{zzzzz{{{{z|z{{zzzz{z{{z{{z{zzzz{z{{|zz{z{{z{zzz{{z{zz|{{z{{z{{z{z{{z{z{{zz{z{{zzzzzz{zz{{zz{z{{zz{z{{zz{{zzz{{{{z|z{{z{z{{z{{z{{z{zz|{{z{{|{z{z{{{{{zz{z{{{zzz{z{zz{z{z{{z{z{z{z{z{zzzzz{zz{{|zzz{{{{|zzz{zz{zzz{{{{z|z{{zzzz{z{{y{{z{zzzy{z{{|zz{z{{z{zzz{z{z{zy{zzzyzzz{{zyz{zz{yx{zz{zyyzyzz{zzzz{z{zzz{z{z{zyyyyyzzyzy|z{zyzzzz{zyzyzzzyyzyz{{zyzzzz{zyzzyzz{zzy{zzzzzz{{zyy{zz{xzyzz{zyyzyzz{zzzz{z{zzz{z{z{zzyyzzzyyzzzzyzzyyzyxzzyyzyyyxz{{zzy{zyzzz{zyyyzzyyzy{yzz|z{zyzzzy{xzzyzzyxyzyz{{zyz{zy{zy{zyzy{zzy{zzzzzz{{zxz{zz{xx{zz{zyyzyzz{zzzz{z{zzz{z{z{zyzyzzzzzzzz{zyzzzz{zyzyzzzyyzyz{{zzzzzz{zzzzyzz{zzzyz{{{yzzz{yzzzzzyyzyyyzyyyzz{{{zy{zzz{z{zzyzz{zyyzzzzyyzzzyzzzyzyyyzxyzzyxyz{zzzyzzzzzzzzyyyzzzyxyzzzyy|zzyz{zzyyzyzyxzzyxyy{{zzyzzzyzzzzyyzyzyyzy{zyzz{z{yzzzy{yzzyzzyxyzyz{}zyz{{y{zy{zyzy{zzy{z{zzzz{{{zy{zz{yz{zz{zyyzyz{}zzz{{z{zz{{z{z{zzzyzz{{yzzzz{yzzzyzyyzyyzzzyzz{{{zyzzzz{zzzzyzz{zy{zzzzzzz{{zyz{z{zz{zz{zyyzyzz{zzzz{z{zzz{z{z{zyyyzz{zyz|z{||{{zz|{{{y|{|{{z|{{z{||zzz}|||z|{{{{||{{{{{{zz{z{{{zz|}|{yz}|z|{z|{z{zz{zz{}|z{{}{|{z{}{{z|{z{{{|{{{{||}{{{|{{|z{|z{{zz{zz|}{z{||{}{z||z{{}{{{{|||{z{|{{|{|{{{{{{{{z{|{{{|||}{z|{{{|{|{{{{{|zz{z|{{zz|{{{{{{zz{zz{z{{zzzzz|||zz|{{{{z|{z{z{{zyzyzzzzz|{{zyz{zz{zyzzzzyzzzy{{zzzz|{{zzz{zzz{zzzzy{zzzz{{{zyz|{z{zz{z|zyzz{zz{zzz{zz|{z{zz|z{z|zz{z{zz{z{{{zz{{z{{z{{z{{z{z{zz{{z{{|{{zz{{{|{{zzz{zz{{zzz{{{yz{zz{zz{zz{zzzzzz{{{zz{{|{zz{z{z{{zzzzz{{zzzz{{yzzzz{zyzzzzzzzzzz{{{zzz{{{zzzzzz{{yyyy{zyyy{zzzyzzzzzyz{yzyzxyyyy{{zyyzyzzy{zyzzzzzzyz{zzyz|zyzzzzzzyzzzzyyzzzyzz{{|zy|zyzz{zzzzyzz{zzzz{{{zz{z{{z{zz{{z{zzzz{{zzzz|{{zz{z{{z{z{z{{{zy{z{zzzz{{{zyz{zz{zz{zz{zyzzyz{{zzz{{z{z{{z{z{zzy{zzzzzzz{{zyz{zz{yz{zz{zyyzyz{{zzzz{z{zz{z{z{zyyyy{zyyy|zzzyzzzyzyzzyyyyxyyyx{{zyyzzyzzyzyyyzzzyxzzzzyy{zzzyzzzyyyzzzyyyzyyyy{{zzy{zzyzzzyyyzzzy{zzzzzzz{{zyz{zz{zz{zz{zyyzyzz{yzzz{y{zzz{{z{zz{zzyzzzzzzz{z{zy{zzz{zzzzzzzyyzyz{{zyz{{zzzzzzzz{zzy{zzzzzzz{{zyz{zz{yz{zz{zzzzyz{{zzzz{z{zzz{z{zzzzzz{{{zz{z{{yzzzz{zzzzzzzyyzzz{{{yz{zz{{z{zzzz{yyzyzyyzyzyzyxyzzyzxzzyyzyxyyzyz{yyyzzyzyzzyzyzyzyyzzzyyzzzzyxzzyzyxyzyzyzyxyyzzzzyzzzzzzzzzyzzzyxzyyyzzyzy{zzyx{zzzzxyzyyzzyyyzyzzyyy{zzzz{zyzzzzyzy{{yyzyzz{yzyzzzzxyyyz{zxyz{zz{yyzzzz{yzzzzz{yzyyyyzzyyzzyyyzzyzyyyyyyyzzyyyyzyyyyzzzyzzzzyzyzyyyzyzyzyzyzyxyzzyzxzzyyzyxyyzyzzyyyzzyzyzzyzyzyyzy{z{yzyzz{yxzzzzzxyzyz{zyyz{zz{yyzzzz{yzzzzz{yxzyyzyzzyzzzzyxzzzzzxyzyyzzyyyzyzzyyyzzzzzzzyzzzzzyyyzzzyyzzzyxzzyzyyyzxzyzxxyyzz{zyzzzzzzzzzyzzzyyyyyyyyyyzyyyyzyyyyyzyyyxyyyyyzzyyyzzyzyzzyyyyyzyyyyyzzyyzzyyz{yzyyyyyyyzzyyyyzzyyyzzzyzzzzyzyzyyyzyzyyzyzyzyyzzyzyzzyyzyyyyzyz}yyyzzyzyzzyzyzyyzy{z{yyzyzz{yzzzzzyyzyz{zxxz{zz}yyzzzz{yzzzzz{yzyyyzzzzyzzzzyyzyzyyyyyzyzzyyyz{zzyzzzzzzzzzyzzzyyxyyyyyzzzy{z{zyzz{z{zzz{zzzyzzzyzzyz{z{{zyz{zz{z{zzzz{zzzy{z{zzzz|z{zzz{zzzyzzzzzzzz{z}{zzz|zz{z|zzzz{zzzz{z{zyzz{z{zzz}zzzyzzzz{zyz{z{|zyz{{z{z{{zzz{zz{z{{|zz{{|z|z{{|{z|z{|zz{zz{{z||zzz||z|z||z{z|z{zz{{{{zzz|{{{z|{z{{zz{zz{{zz{{|{{z{|{{{{|{zz{{{yyyzyzyzzyzyzyyzzzyzyyzzyzyzyyyzzyyyzzzzyzzzzzzyyyyzyzyzzyzyzyyz{zyzyyzzyzyzyyzz{yyyzzzzyzzzzzzyy{zzyzyz{zzyzyzz|zyzyz{zyzyzy{zy{yzyzzzzyzzzzzzy{zzz{z{zzzz{{{zz{{|z{yz{yz{zzyz{zz{yz{|{{z{{z|{{zzzy{z{zzzzzz{zzzzzzzyzzyz{zzyz{zz{zzzzz{zzzzzz{zzyyyyyzyyyzzyyyzzyzyyyyyyyzxyyyyzzyyzzyyzzzyyzyzzyyyyzzyyyzzzyyzzyzzyz{yyyzyyyyyz{yyyzyzzzzyzzzzzyyyzyzzyy{zyzyzzyzyzzzyzyzzyyyzzzzyz|zzz|zzyzyzz{{yzzzz{zzz{zz{z{zzzzzzzzzzzzzyzz|zzzz{zz{{z{zzz{zzy{z{zyzyzz{yzzzzzzyzzyz{zyyz{zz{yyzzzz{zzzzz{zyyyyyyyyyyzyyyxyzyyyyzzyyyyyyyyxz{yyyzzyzyzyyyyyyyyyzyyzyy{yyyyzzyyyyzyyyyyzyyyy{zyyz{zzyy{zyzyyyzy{z{yyzyzz{yzzzzzzyyzyz{zyyz{zz{yyzzzy{yzzzz{yzzzzyyzyzzyzyzzzyyzzzzzyyzyyzzyyyzyzzyyyzzzzzzzyzzzzzy{z{zzzyzz{yzzzzzzyyzyz{zzyz{zz{yyzzzz{zzzzzzzzyyzzzzyzzzzzyxzzzzzyzzyzzzyyyzzz{zyzzzzzzzzzzzzzyyzyzzyzyyzyzyzzzzyzyyyyyzyzzyzyzzyzyzzzzyzzzyzyzyyyyyzzyzyyzzzyzyyzyzyzxzzyyzyzyyzzzzzzzzzyzzzzzyzyyzzzzzzzzzyzzzzzyzzyzzyzyzyzz{yyzzzzzzzzyzzzzzyyyzzzyzyyyzyyzyyzzyyzyzyzyyyyyzyzyzzyzzzyzzzzzyyzzzzyzyyyxyzyyyzzyzyzzzzzzy{yzyyyyzyyzzyyyzzzzzzzzzzyzzzzyzzyzzyzzzzzzyzzzzzzzzyzzyxzzyzz{zyzzzzzzzzyzzzzzyyyzzzyyyzyyzyyyzzzxyyzzyzyyzyzzyzxyzyzzzzyzzzzyyyzzzyzyyyzyyzyzzzyyzyzyzzzzyzyyyyyzyzzyzyzzyzyzzzzyzzzyzyzyyzyyyzzyzyzzzyzzyzyzxzxzzyyzyzyyzzzzzzzzzyzzzzzyzyyzzyyzzzzzzyzzzzzyzyzzyyyyzzz{zzzzzzzzzzzzzzzzzzyzzzyyzyzyzzzyzyzzzzzyzyzyyyyzyyzzzyyzzzzyzzyzzyzzyzyzzyyzyyyyzyyzyyzyyzyzyyyyzyyyyxyyyyyzzzzyzzyyyzzzyyyyyyzyzyyzyyzyzzzyyzzyzyyzyzzyzxyzyzzzzyzzzzyyyzzzyzyyyzzyzyzzyzyyzyzzzzzyzyzzyyzyzzyzyzzzzyzzzzyzzzyzyzyzzyzyzzyzzyzzzyzzzyzyzzzzyyzyzyyzzzzzzzzzyzzzzzyzyzzzyyzzzzzzyyzzzzyzyzzyzzyzzz{yzzzzz{zzzzzzzzzzzyzzzyyyyyyzyzzzzzzzzzzzzzzzzzzzzz{zzzyzzzzyzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz{zzzyzzzzyzzzzzz{zzzz{zzzzz{zzzzzzzzz{zzzzzzzzzzzzz{zzzzzzzzzzzzzzz{zzzz{zzzzz{zzzzzzz{z{zzzzz{{zzzzz{{zzzzzzzzzzzzzzzz{zzzz{zzzzz{zzzz{zz{z{{{{zz{{{{{z||z{{z{z{{z{{zz{{|{z{{{{{{z{{{z{{{yzyyzzzzyzyzzzzzzzzzzzyzyzzzzzzzyzzzzzz{zzyzzzzzzzyyzzyzzzzyzzzzzzzzzzzzzyzyzzzzzzzzzzyzzzzzzyzzzzzzzyzzyzzzzzzzyzzzzzzzzzzzzzyzzzzzzzzzzzzzzz{zzzzz{zzzzzzzz{zzzzz{z{zzzzz{zzzzzz{zzzz{zzzzzzzz{{zzzz{{z{zzzzzyzzzzzzzyzzzzzzz{{zzzzz{zz{{zzzzzzzzz{zzzzz{zzzzzyzyyyyzzyzyyzyzyzyzyyyyzyyyyyzyyyyzzyzzzyyyzzzyyyzyyzyzyyzzyzyzzyzyzzzyyyyzyzyyyzzyyyzzzzyyyyyzzzzyyzyyzyzyzzzyzyzzzzyzzzyzyyzzzzyzzyzyzzzzzzzzyyzzzzyzzyyzzzzyzzyzzzzzzyzz{zzzyzzzzzzzzzzzzzyzzz{zyzz{zzzzyzzy{zyzzzzy{zzzzzz{z{{zzyzzzyzzzzzzzz|zzzz{zz{z{z{zzyzzyyzzzzzzyzzzzzzzzyzzyzzzyzz{yyzzzzzzzzzzzzzzzzzzzyyyzyyzyyyyzzyyyzzzyyyyzyzyyyxzyyyzzzyyzzyyyyyyyyyyyzyyyzzyyzyyzzyyzxzyzyyzzyzyzyyzyzyzyzzzzzyyzzzyzyyyzyzzyzzyzyzzyzyzzzzyzyzyzyzyzzzzyzzzzyzzyzyzzzzyzyzzyyzzzzzzyzzzzzzzzzzzyzzzzzz{zzzzzzzzzzzzzzzzzzzzzzyzyzyzyzzzyzyzzzzzyzzyzyyzyzzyzzyzyzzzzyzzzzzyzzzzyzyzzyyzzzzzzyyzzzzzzzzzzyyzyyzz{zyzzzzzzzzzzzzzzzyzzzzy{y{zyzyz{zyzyzzyzyzy{z{yzz{zyzy{{yzyy{{zzyz{{yzyzyzyyyyyzyzyy{zyzyzzyzyzy{{yyzzzyyyyzzyzyyzzyzyyzzyzyzz{zy{yz{{y{zzyz{{yyzzz{{{yzz{zyzy{zz{zy{zzzz{{zzzzyzzzzz{zzz{zzzzzzz{zzzzz{z{zzz{{zzz{{{zzz{{|zzz{{{{zzzyyzzyzyyzzzzzyzyzzzyyzyz{{{yyzzzyyyzzzzzyzzzzzzzzzyzyzyzyzyyyyzzyzzyyz{yyzyyzz{yzzyzyzyzzzyzyzzzzyzyzzzzyyyzy{y{zzyz{zzzyz{yzzzy{z{yzz{zyzy{{zzzy{{zzyz{{zzzzyzzyyyyyzzyy{zyzz{zyzyzz{{yyzzzyyyyzzyzyyzzzzzyzzzzyzy{yzyzzy{zzzzzy{{yzzzy{y{yzzz{zzyz{z{zyzzzzy{zzzzzzyz{{{y{zz{{zzzz{{{{z{z{{{{{z{{{{z{{{{{{{{{|zz{{{{{zzzyyzyzy{yyz{y{zyyz{yyzzy{y{yzz{{zzy{{zzzy{zzzyz{zzzzyyy{yyyyyy{zyyzyyzzyyyyy{yyyyyzzyyyzzy{yyzzyyy{zzyyyyyy{yzyyyy{zzyzyyzzyyyyy{zyyzyzzyzyzzz{yyzzzyy{zzzyyyyy{y{y{zy{zz{zyzzzyzyzy{z{yzz{zyzy{{y{yy{{zzy{{{yzyzyz{zzyyyz{zzy{zyzzzyzyz{{{zyzzzzyyzz{{zyzzzyz{zzzyzyzz{y{y{{z{{y{zz{z{y{z{z{{{y{z{{z{y{{z{zy{zz{z{{zz{z{zyyyy{yyz{yz{{{{zzyzz{yzzzz{zzyzzzzyzzy{zyyzyzyzz{zzzyz{zzzzz{zzyzyzzzyzz{zzzzz{zzzzzzzyzzy{zyzzzzyzz{zzzzz{zzzzz{zzzzzzz{zzz{zz{{z{zzzz{zzzzzy{z{zzzzyzz{zz{zz{zzzz{{zzzzzzzz{zz{yzzz{{zzzzzzzzzzz{{{zzzzzzz{z{zzz{zzzzz{zzzzyzz{z{z{{z{z{{zz{z{{z{z{z{{{z{z{z{z{{z{zz{{{{z{{{{{z{zyzy{y{zyzzzz{zzyzzyzzzz{y{yzz{{yyyzzzzy{{zzyz{{zzzzyy{y{y{zy{{zz{zzy{zyzzzz{y{yzz{{yzyzz{zy{{zzy{{{zzzzyzzy{y{zzzzzz{zzzzzyzzzz{{{zzz{{yzzzzzzy{{zzzz{{zzzzzyzz{y{zyzzz{{yzyz{yzyzz{z{yzz{{zzy{zzzy{{zzyz{{zzzzy{{{{z{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{z{{{{{z{{{{{{{zzz{y{z{zz{zz{{zzz{{zzzzz{z{zzz{{zzz{{y{z{{zzz{{{zzzzzy{yyyyyy{{zyzzyy{zyyzzy{z{yzyzzyzyzzz{zyzzzy{yzzzzyyzzyzyyyzzzzyzzyzzzyyzzzz{{yzzzzyzyzzzyzyzzyzzzzzyzyzyzyzy{zyzzz{zyzyz{yyyzy{zyyzy{zzzy{zyyzy{yzyz{zyzyzyz{y{y{zz{zz{zzzz{zyzzzz{{{yzz{{yzy{{z{zy{{zz{{{zzzzzzz{{z{zzz{{z{zzzz{zzzzz{z{zzz{{zzz{{zzzz{{zzz{{zzzzzyzzzyyyyyzzzzz{zyzzzzyzzz{{{yzzzzyzyzzzzzyzzzzzyzzzzyzzyyzyyyzyzzyzzyzzzyyzyzz{{yyzyzyyyyzzyzyyzzyzyzzyzyzyyyzy{yyyzy{zyyyz{yyyzy{zyyzy{zzzy{zyyzy{zzzyy{yyyyyyzy{y{zyzzzzzyzyzzyzyzz{z{yzz{{yzy{{zzyy{{zzyz{{zyzyz{yzy{yz{zz{{zyz{zyyzzz{{{yzz{zyzy{zz{zy{zzyz{{zzzyzyzz{z{zyz{zzzzzyz{yzzzz{z{yzz{{zzz{{zzzz{{zzyz{{zzzyyyyyzy{y{zyzyz{zyzyzzyzyzz{z{yzz{{yzy{{yzyy{{zzyz{{yzyzz||{|zyz{||{{zy{{|zz{{y|}z{{{|z|z{{|{|z{{|{|zyz|{|z{zz{|{{|z{z{|{}{z{y{|{z{{{z}{{{{|}z|{{|}{z{{|}{z{z|}zz{z{{|zzzz{|{|z{{z{|{|~z{z{|}z{z{z{~~z{z{~|{{z{~|{|z{~|{z{{||{{z{|}}{{{z{|}||z{}{|}{{}{|{|zz{|{}|}{{{}|{|{{||{z{{|~|||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{||}~|{|{{|{||z{z{z{|z{{z{|}||z{z{|}y{z{z{|zz{z{|z}{z{|y{|z{|z{z{{|||{|zz{||{{z{|}||z{{{|}z{{{|{|z{{|{|z}{|{|z{||{|z{z{{||{{|z{{|{}{z{|}||z{{{|}{{{{|}||{{|}|z}{|}|z{||}|z{z{{|zz{zz{|}z{{z{|}||z{}{|}z{}{|{|zz{|{}z}{z{}z{|z{|z{z{{|~z{zz{|}z{{z{|}|~z{z{|}z{z{z{~~z{z{~z}{z{~z{|z{~z{z{}|~|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}|zzzzzzzzzzzz{zyzzzzzzzzz}zzzzz{|zzzz{zzyzz{zzzzz{zzzzz{z|z{zz{z{|z{{{{{|zz{z{|}z{z{z{|zz{z{{z{{z{|zzzz{|z{z{{z||{|z{z{||{{z{{|zz{{z|}z{{{|{|z{{|{|z{{|{|zzz|{|z{zz{z|{{|z{z{|{}{z{{|{z{{{z}{{{{|}||{{|}{z{{|}{z{z|}zz{z{{||zzzz{|{}z{{z{|||z{}{|}|{}{|{|zz{|{}|{{z{}|{|z{||{z{~|~{{{z~|}~{{~z~|}~z~}~|}{~}~|~~~z~|~~z}{{~~z~|{{~{~z~yyzz{yyzzzy{|}z|}z}{}zzz{z{zzz{{{zzzzz{|{zzzz{}{zyzzzzzz{{{z{z{{{zzz{{zzzzzzzz{z{{zz{{{zz{zz{|{zz{z{}{zy{z{zzz{{|z{z{{|{zz{{|{z{z{||{z{z{|{|{{{z{|{|{z{zz|}{{zz{|zz{{{||{{{{||{|{{||{z{{||{{{z{|}|{{{z{|}||z{{{|}{{{{{|{{{{{|z}{{{|z{|{{|z{z{{z||{|z{z{}|{{z{|{|{z{}{|}|{}{|||{{|{}z{{|{}zzz|{|z{zz{{~|~|{{{~~{}{{~|~~~{~}~|}{~}~|}~{~|}~z{~|}~{{z|}~{{{{{z|z{|z{z{|z}{z{{{|zz{{{|}y{{{|}z|yzz{z{{|}{z{z|}zz{z{{||z{|z{|{|z}{z{|{|zz{{{|}y{{{|}||{z{||{{|}||{||}||{z{{||z{|z{|}|z}{z{|}||z{{{|}z{{{|}||{{{|z}{|}|z{||}|z{z{{z|z{|z{z{}z}{z{|{|zz{}{|}z{}{|}||{{|}z{{|}}z{z|}zz{z{{z~{{|z{z{~{}{z{{{~~z{{{|}{{{{|}|~{{|}z{{|}~z{z|}~z{z{}|~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}|{|||{|z{|{||{{z{|{|zz{{{|}z{{{|{|z{{|{||{z{||{||{||{z{{|||{|z{|}||{{z{|}||z{{{|}z{{{|{|z{{|{|z}{{|z{||{|z{z{{z||{|z{z{}|{{z{|{|zz{}{|}z{}{|{|z{{|{}z{{|}zzz|{|z{zz{z~|{|z{z{~|{{z{{{~~z{{{|}{{{{|{|~{{|{|z{{|{zzz|{~z{zz{z||{|z{z{}|}{z{|{|{z{}{|}{{}{|}||{{|}}z{{|}}{z|}|z{z{{|~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||}~|{|{|{{||z{zz{|}|z{{z{|}||z{z{|}z{z{z{|zz{z{|z}{z{|z{|{|z{z{{z|z{zz{z{}z{{z{|{|zz{}{|}z{}{|{|zz{|{}z{{z{}zzzzzzzz{{z~{{{z{z{~{{{z{{{~~z{z{|}{{z{{{|~z{{{|z{{{{|zzz{{zzz{{z|z{|z{z{|z}{z{{{|zz{{{|}z{{{|}||{{|}|z{{|}|z{z|}|{z{{z||{|z{z{}|{{z{|{|{z{}{|}{{}{|{|z{{|{}z{{|{}zzz|{|zz{{|~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{||}~|{{z{zz{{{|~}||{|~}||}|~}|||~~}|||||}|||||~~}|||{}|~}|{||||~}|{{z{}|z{{{}|{{{{}|{{||}|{{{z}|{{{z{|{{{z{}{|{z{z|{{|{z{{zz{zz{z{{zz{z{{z{z~{{z{z{{}z{z{z~~{z{z{{{~{z{zzz{~{z{z{{|{zz{}{{{z{}{|{{{|{|{}z{{|{}z{{|{|z{z|{}zzz{{z{zzzz{{{|{|||||z{}{||z|||||z|||{}z|||||z}||||{{|}||{{{||}||{|{||~}|||~}|{}|~}|{|~~}|{|{|}|{|{|~~}|{|{}|~}|{||{|~}|{{{{|}|{|}}|{{{}}||{||}||}|{}||}|{||{||{|}|}{{|{|{||{{|{zz~{|z{z{|{{z|{|{{~|{|{{{{}|{{{z~~{{{z{{|~{z{z|{|~{z{z{{|||zz{}|{{{}{|{{{|{|{}{{}|{}{{{|{|{{{||}{z{{|{||{z{{{{|{||||||{}{||||||||||||{}|||||||}||||{||}||{|{||}||{{||{||{||{|{||{|{|{|{|{|{z}|{|{|{|{|{|{{||{|{{|{||{|{|}||~}||}|~}|}}~}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}||}|~}|}{z{~}|z{{~}|{{{}|{{~|}|{{{{}|{{{z~~{{{z{}|~{z{z|{|~{z{{{{}}|z{{}}|{{{}|{{||}|{}{{}|{}{{{|{|{{{}{}{z{{|{{|{z{{{{|}|||||}|{}{||||||}||||{}|||||||}||||}{|}||{|{||}||{{||}||{||}|{{||{||||}|{|{z}|{|{|{|{|{|{}{|{|{{|{||{|{{zz{}|z{z{}|{{z{{zz|{}|{{{z}|{{{z{|{{{z{}z|{z{z|{z|{z{{{{~}|{||~}|~{{~}|~{~}|~}~{}|~}~{~~~|~{|}{~~{|{|~{~{{|zz{|||{z{}||{{{}||{{|||{}{|}|{}{z{|{|{z{||}{{{z|{||{{{{{{|{|||||||{}{|||||||||||{}|||||||}||||{||}||{|{||}||{{||{||{||{|{{||{|{|{|{||{{}|z|{|{|{|{|{{{|{|{{|z||{|{z{{{{zzz{{{zz{z{{{zz{{{{zz{}zz{zz{|{zz{zz{{{zz{zz{{{zzzzz{zzzzz{{zz{z{{zzz{{zzzz{}zzzzz{|{zzzzz{{{zzzzz{{{zz}{}z}|{}|{zzz{zz{z{zz~||~|||~|~~||}}~~|~|~~~|~}~|}|~}~|~}|~|~||~}|~|{||~}|~|{|}|||||}||{{|}|||||}|||}||}||}||}|||||||}{||{|{||{||{{{|}|{|||}|{{{|}||{||}||{|{}{|{|{||{|{|}{|{{|{|{{|{{|{{{|||{|||||{{{||||{|||||{|{}||{|{||{{{|||}{{|{|{|}{{|{{{|||{|||||{{{||||{|||{|{|{}||{|{||{{{||||{{|{|{||{{|{{{||{{||||{{{{||{|{|||{|{|{}{|{|{|{zzzz|{|{{|{{{{|{{||}||~}||}|~}|}}|~}|}|~~}|}|}|}|}|}|~~}|}|}}~}|}||}|~}|}{{{~{||||~||{}{~||||~~|||||{}|||||~|}||||{{}||{{{|~}||{{{|{||{{}{|{}{}{|{|{|{|{}{z}|{}{|||}|{|{{{}|{{{{||}|{{{{|}||{{|}|{}{|}|{|||}|{|{{}|{|{|||}|{|{}{|{{{|{||}|{{{{|{||{{|{|{}{|{|{|{|{|{|{z}|{|{|||}|{|{{||{z{|{||}|{{{{|{||{{|{|{}{|{|{|{|{|{|{z}|{|{|||}|{|{{||{z{|{||}|{|{{||~}||{|~}||}|~}|||~~}|||||}|||||~~}|||{}|~}|{|||~}|{{{||{||||}||{}|}|||||||||}|{}||}||||}||||{{}}||{|{|}||{{|~{||||~||{{|~||||~~|||||{}|||||~|{||||{{|{||{|{{{||{{||{||{|}{|{{|}{|{|{|{|{}{{}|{}{|{|{|{|{{{}{|{{|z{{|{{{||}||{||}|{{||}|{|||}|{|{{}|{|{|{|{|{|{}{|{|{{|{{|{{{{||{||{||{|{{||{|{|{|{|{|{{}|{|{|{|{|{|{{||{|{{|{||{zyyy{{yxyy{{yzzx{{zzy{{zzy{y{zzyyyzzyyyz{{zyyy{yz{zyyyyy{z{{{{{{y{{zz{{{{zz{z{zzz{{{{zzzzz{{zz{{{z{{z{z{{z{{yyy{zyyyz{zzzy{{zzzy{zzzz{yzzzzyzzzzyz{z{zyzyzzz{zyzyyzy{zyyyz{yzzyz{yzzz{zzyyy{yyyzy{zyyy{{zzzyy{yzzzzyzyzz{yzzz|zzzzz{zzzz{yzzz{{zzzzy{{zzyzz{{zyzyzzz{zyzzyzz{zzzz{zzzy{{zzzz{zzzz{{{zzzyzzzzyz{z{zzzyzzz{zzzzyz{{z{zzzz|{{{{z|{{{z|{{{{{z{{{{{{{{{{z{{{{{z{z{{{{{z{zz{{{{{{{{zz{{{{zz{{{zzz{{{{zzzzz{{zz{{{z{{z{z{{z{{yyzy{{zyyy{yzzyz{zzzz{zzyyy{zzyzy{zyyy{{{zzyy{yz{zzyzyzz{zyzzz|zzzz{zzzz{zzzz{{zzzzy{{zzyzz{{zyzyzzz{zyz{{{{{z{{{{{{{{{{{z{{{{z{z{{{z{z{zz{{{z{{{{{{{zz{{{{{{zz{{z{{{{{zz{{{zzzy{zzzz{y{{zzzz{{{zz{{{z{{zzz{{z{{zz{{{{{zz{{|{{{{|{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{yzzz{{zyzz{{zzz{{zzz{{zzz{y{zzzzz{zzzz{{{zzzz{zz{zzzzyzz{zyzzz|{zzzz{zzz{zzzz{{zzzzy{{zzyzz{{zyzyzzz{zyz{{{{{z{{{{{{z{{{{{{{{{z{z{{{z{z{zz{{{z{{{{{{{zz{{{{{zzzz{zzzzz{zzz{{{zzy{zzzz{{zzzzzzzzzzz{z{zzzzzzz{zzz{{{{{{{{{{{{zz{{{{z{{{z{z{{{{{z{z{{{{z{|{z{{{{z{{z{{zyz{{{yzz{|{zzz{|{{zz{{z{{{{zz{y{{zzy{{{{zzzy{zz{zzz{{{{{{{{{{{{z{{{{{{{{{{{z{{{y{z{zz{{{z{{{{{{{{z{{{{{zzzz{{zzzz{{zz{{{{zzy{zzzz{{zyzzzzzzzz{{{zzzz{zz{zzzyyyyz{yyyy{{yzzy{{zzyzzyzyy{yzyyyzzyyyz{zzzyy{yzzzzy{{{{zz{zyz{yyzy{{|{|{{{|{|{{{|}|{{|{|{{|{{{{{|{{{|{{{||{{{{{{{|{{{{{zz{{{{{{{|{{{{{|{{z{|{{z{{{{{z{z{{{z{{{|{{{z{{{|{{{{zz{{{{{{{|{z{{{{{z{{{{z{z{{{{{zzzz{zz{{{{{{z{z{{{{{{zz{{z{{{{|{z{{{{{zz{{{zzzz{{{zzzzzzzz{{{{{{zzz{{{{{{zz{{z{{{{|{z{{{{{zz{{{zzzz{{{zzzzzyzy{{{{{{zzz{{{{{z{{z{{{z{z{{z{{{{{{{z{{{{z{{|{{z{{{{z{z{z{{z{{zz{{{z{{{|{{{{{|{|{{{}{|{{|{|{{|{|{{{|{|{{|{|{{{{|{{{{|{{{{{{{{{z{{{{{{z{{{{{{{{{{{{z{{{{{z{{{{{{z{{{{{{zz{{{{{z{{z{zzz{z{{z{{{{{{{z{{{{z{{{{{z{{{{z{z{z{zz{zzz{{{zz{{z{{zz{z{{z{{{{{{{z{{{{z{{{{{z{{{{z{z{{{zy{{zz{{{zz{{z{zzz{z{{z{{{{{{{z{{{{z{{{{{z{{{{z{z{z{zyyzzz{{{zzzzz{zzzzz|{zz{z{{zzz{{zzz{{{zzzz{{zzzz{z{zzzzzz{zzz{{z{{{{z{z{{|{z{{{|{{{{|{{{{{{{{{{{{{{{{z{{{{{z{zz{{{z{{{{{{{{{{{{z{{{{{{{{{{{{z{{{{{z{z{{{{z{{{{{{{{z{{{{{zz{{z{{{{{zzz{{{zzz{{zzzzz{{{zzzzz{{zz{{{z{{zzz{{{{zzzz{zzzzz{zzz{{{zzzz{zzzz{{zzzzzzzzzzz{z{zzzzzzz{zzzzzz{{zzzz{{zz{z{{zzyz{zzz{{{zzzzyzzzzzz{{zzzz{yz{zyyyyzzzxyyzzzzxyzzzzyzyzyyzyyzyyzzyyyyz{zzyyzzzyzzyxxyyzzyxyyzyzyxzzyyyzzyyyyxzyyxyzyyxyyzzzyxzyyyyzyyyzzzzzzy{zzzzyzzzzzzzzzzzyzzzy{zzzyzzzzzzyzzzzzzyzyyyzyzyzyzzyzyzzyzyyzyzzzzyyzyyzyzyzz{zyzyzzz{zyzxyyyzzyyyzzzzyyzzzzyzyzyyzyyyyyzzyyyyz{zzyyzzzyzzxyxxyxzyxyyyzzyxyzyyzyzyyyyyzyyxyzzyxyzzzzyxzzyzyzyzyyzyzzyzyzzyzyzzyzyzzyzzyyzyzyyzzzyzz{zyzyzzz{zyzxyyyzzzyyzzyzxyzyzzyzyzyyzyzzyyzzyyyyzzzzyyzyzyzzyyyyyzzzzzzz{zzzzyzzzzzzzzzzzyzzzy{zzzyzzzzzzyzzzzzzyzyyzyzyzyzzzyzyzzyzyzzyzzzzyyzyyzyzyzz{zyzyzzz{zyzyxxyyzzyxyxzzyxyzyyzyzyyyyyzyyxyzzyxyzzzzyxzzyzyzyxyyyyzzyyyyzzxyzyyzyzyyyyzyyyyyyz{yyyzzzzyyzzzyzzxzyyzyzyzyzyzzzyzzyzyzzyzzyyzyzyyzzzyzz{zyzyzzz{zyzyyyzzzzzzzy{zzzzzzzzzzzzzzzzzzzz{zzzzzz{zzzzzzzzzzyyyyyzzzyyyzzzzyyzzzzzzzyzyyzyyyzzzyyyzzzzyyzzzzzzyxyyyyzzyyyyzzzyyzyzyzyyyyzyyyyyyz{yyyzzzzyyzzzyzzyzyzzzzzzzz{zzzz{zzzyzzyzzzzzyzy{zyzyzz{zzzyzzz{zzzyyzzzzzzzy{zzzz{zzyyzzyzzyyzzzy{xzzyzz{zzzyzzzzzzyzyyzyzzzyzyzzzzyzzyzzzyzzzzzyzyyzzzyzz{zzzyzzz{zzzxyzyzzzyyyzzzzyyzzzzyzzyyzzyzyzzz{yyyzzzzyyzzzyzzyzyzzzzzzzz{zzzz{zzyzyzzzzzzzyzy{zyzyzz{zzzyzzz{zzzyyyyzzzyyyzzyzyyzzzzyzyzyyyyzyyzzyyyyzzzzyyzyzyzzyyzzzyyzyyyyzzyzz{z{zzz{{zzyz{zzzz{z{{zz{zzyz{{zz{{zz{z{{z{zzzzzz{z{zzz{{{{z|{{{zz{z{z{{zz{z{z{z{z{{|zz{z{{z{zz{zzzzz{zzzzz{z{zz{{{{z{z{zzzzz{zzzzzzz{{|zzz{z{{|zzzzzzzzzzzzzzzzzy{{zzzz{zzzzzzzzyzzzzz{{zzzzzzz{zzzzzzzzzzzzzzzzzzy{{zzzzzzzzzzzzzzzzzyz{{zzzzzzz{zzzzyzzzzzzzy{z{zz{z{yzzz{yzzzy{zzy{z{zyz{zzzyz{zzzzz|z{{{{zzz{{{{z{{{{{zz{{{{{{{zz{{{{z{z{{{{zz{{z{{zzzzyzzzzzzzz{zzzz{zzzzzzzzzzzzzzzy{z{zyzz{zzyzzz{zzzyyzzzzzzzy{zzzz{zzzzyzzzzzzyzzzy{z{zyzzzzzyzzzzzzyyyzzzzzzzy{zzzz{zzyzyzzyzzzyzzzy{z{zyzzzzzyzzzzzzyyyyyyzyyyyyzzzyyzzyzzzzyyyyyzyyyyyzyyyz{zyyyzyzzyyyyyyzzyyyyy{zyyyzzzzyzzyyyzzzzyyzz{yyyzzzyyyzzyzyyz{zzzzzzzzzz{{zzz{{zz{zzzzzzzzzzzz{z{zzz{zzzzzzzz{zzzyzzzzzzzz{zzzz{zzyzyzzyzzzzzzzy{zzzyzz{zzzyzzz{zzzyyzyzzzyzyzzzzyzzyzzzzyzzyzzyzyyzyzyzz{zzzyzzz{zzyyyyzzzyyyzzyzyyzyzzyzyzyyzyyzyyzzyyyyzzzzyyzyzyzzyyyyyxyyyyyzxyyzzzyxyzyyyxxzxyyyyyyxyz{zyyyzyzzyyxyyzyxyyzyzyyyzzyyxzyyyyyyyyxyzyxyyzzyzyxyyzyzyxxxxyyyyyyyyyyzxyyyyzyyyyyyzyyyyyyyyyyyyzzyyyyzyzzxyyyyyyyyyyyzyyyzzzyxyzyyyyyyyyyyyxyxyz{zyyyzyzzyyxxyyyyyyzyzyyyyzyyxzyyyyyxyxxyzyxyyzzyzyxyyzyzyyyyyyyyyyyyzxyyzzzyxyzyyyxxzxyyyyyyxyz{zyyyzyzzyyxxyyzyyyzzzyxyzyyyxzyyyyyyyyxyzyxxyzzyzyxzyzyzyxxxyyyyyyyyyyzxyyyyzyyyyyyzyyyyyyyyyyyyzzyyyyzyzzxyyyyyyyyyyyzyyyzzzyxyzyyyyyyyyyyyxyxyz{zyyyzyzzyyyyxyxyyxyxyyxxyyyyyyyxxyyyyxyyxyyyxxyzyyyyyyyyyxyyxyyxyxyyyxyyyyzxxyyyyzyyyyyyxyxyxyyzyxyyzyzyxyyyyyyyyyyyzzyyzzzyxyzyyyyyzyyyyyyyyyz{zyyzzyzzyxyyyyyyyyxyyyzyyyzzyyyyyyzyyyyyyyyyyyyzzyyyyzyzzyyyyyyzyyyyzyzyxyyyyyzyyyyyyyyyyzyyyyzzzzyyyyzzzyyxyyyyyyxyyzyyxxyyyyyyyxyyyyyxyxyyxxyzyzyxzyyyyyyxxxxxyxxxxyzyxxyyyyyyyyyxyyxxxyyyxyxzyyyxyyyyzyxyyxyyxyxyyyyyyyyzzxyyyyzxyyxyyxyxyxyyzyxyyzyzyyyyyyyyyyyyyyzyyyzzzyyzyyyyyyyyyyyyyxyz{zyyyzyzzyyxxyyzyyyyzzzyxyzyyyyzyyyyyyxxyzyyxyzzyzyxzyzyzyyyyyyyyyyyyyzyyyzzzyxyzyzyyzxyyyyxyxyz{zyyyzyzzyxxyyyzyyyyyyyyzyyyyz|zyyy|zzyxzzzyyyyzyyyyzyyz|{zyy|zzzzyy{zyzzy{yzzzzyzyz{zyxzzzyzzy{yzyyy{yzz{zy{zzzzzyyzzz{zzzy{zzzzzzz{{zyz{zz{zz{yz{zzzzz{{zzzz{z{zyyyyzyzzyzyzz|{yzzzz{zzzzzzzzzzyyzzzzz{{|zyzzzz|zyyyyyzzyyyzzzyyyzzzzyzzzyzyyzyyyzyyyzz{zzyzzzzzyyyyxyyyyxyyyyyyyyzzyyyyyyzyyyyyyxyyyxyyyyyyzyzyyyzyxyyyzyyyzyyzyy{zyyyzyyzyy{yyyxyyyyyzyyzzzyzyy|yzzyzzyzyzzzzyzzzz{yyzzyy{zyzyzzyyyzyyz{yzzzy{zyyyyyyzyyyyzyzyyyzzzyyzzyyzyyzyyyzyyyyzz{zyyzzzzyyyyyyzyyyyzyzyyyzyzyyzyyyzyyyyyyzyyyyzzzzyyzzzzyxxxxyxyxyyxzzxyyyzyyyyzyyyxyyyyxyyyyyxzzyyxyyyzxyxxyxzyxyxy{zyxyzyyyyzyyyyyzyyyxyzyxyzzyzyx{yyzyy{yyyyyzzyyyzz{yyyzyzzyzyyzzzzyyyyzzyyzz{zzzyzzz{yyyyyyyyyyyyzzyyyzzzyxyzyyzyyzyyyyyyyyyz{zyyzzyzyyyyyyyyyyyyzzyyyzzzyyyzxyyxyzxyyyyxyyyz{zyyzzyzzxyxyyyyyyyyyyyyyyyyyxyyyyyxyyxxyyyyyyyzyyyyyyyyyxxxxxyxxxxxyyxxxyxyyyyxxxyxyyyxxyyxxxxxyyxxyyxyyxxxxyyxyyxyyyyyyxxyyyyyyzyyyyxyyyyxyyxxxyyyxxyzzyyyyxyyyyyyyyyyyyyyyyyyyyyyyyxyxxxyyyyyyyzyyyyyyyyyyxxxyyyyxyyyyxxyyyyyxyyyyyxxxyxyyyyyyyyyyyyyyyyyxxxxxyxxxxyyyxxyyyyyyyyyxyxyyxxxyyxxxxzyyxyzzyyyyxyxyyyyxyyyyxyyyyyyyyyyyyxyyyxyyyyyyyzyyyyyyyyyxxxxyyyxxyyyyxxyyyyyyyxxyyxyyyxyyyxxyyyyyxyyyyyyxxyyxyxyyyxyyyyyxyyyyyyzyyyyxyyyyxyyyxxyyyyyyzzyyyyxyxyyyyyxyyyxyyyyyyyyyyyyxyxyxyyyyyyyzyyyyyyyyyyyxyxxyyyyxyyyyyyyyyyyyxyxxyyyyxyyyxxyzyyyxyxyyyyxxyxyyyyyxyyyxyyyyyyyyyxyyyyxxxyyyxxxzyyyyzzyyyxxyyyyyxyxyyyyyyyyyyyyyyyyxyzyxyyyyyyyzyyyyyyyyyxyyyyyyyyyxyyyyxxyyyyyzyyyyyyyyyyyyyyyyyyyyyzzyyyxxxxyyyxyxyyyyxxyyyyyyyxyyyyyxxyyyxxyyzyyxyzyyyyyxxxyxyyyxxxyyxxyyyyyyyyxyxxxyxyxyyyyxyyyyxyyyyxyyxyxxyyxyxyyyyyyyyyyyyxyxxyxyyxyyyxxyzyyyxyyyyyyxyxyyyyyxxyyyxxyyyyyyyyxyyyyyxyyyyyyxzyyyyzzyyyxxyxyyyxyxyyyyxyyyyyyyyyyyyyyxxyyyxyyyz{yxyzyyyyyyxyyyyyxyyyyyyyyyyyyyzxyxxyxyyyyyyxyyzyyyyzyyyyyxyyyyzyyyyyyyyyyyyyzyyyyyzzyyyzzyzyyyyyyyyyyyyzzyyyzyzzyyyyzyyyyyzyzyyzyz|zyyyyzyyyyyyyyyyzyyy{zzyyzyyzyyyyyyyyyyyzzzyyyyzyzyyyzzyzyyyyyzyyzyyzzzyyzzyzyyyzz{zzzzz{z{zyzzzz{yzz{zz{yz{yz{zzz{zz{zyzz{z{zyzyzyz{zyzyzz{yyzzzzyyzyyyyyyyyzyzyyyzzz{yzzyzz{yyxyxyyyyyxyyyyyyyyyyyyyyyyxyyyyxyyyxxyyyyyyzyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyzyyyyyyyyyyyyyyyyyyyyyyyyyyzyyyyzyyyyyyyyyyzyyyzzyyy{yyzyzyyyyyzy{yyyyyy{yyzzzz{yyzyyzyyyyzyz{yyzzy{yyyyyyyyyyyyyzyyyyyyyyyyyyyyxyyyyyyyyyyyzyyyyzyzyyxxxyxyyyxxxyyxxyyxyyyyyyxyxyyyxyxyyyyxyyyyyyyyyyxxxyxyyyxxxyyxyyyxyyyyyyxyyyyyxyxyyyyxyzyyxyyyyyyxyxxyyyyxyyyyyyzyyyyyyxyyyyyyyxyyyyxyzyyyxzyyyyyyyyyyyzyxyyyyyyyyzzyyyzyyzyyyyyyyzyyxyyzyyyyzzyzxxyxyyyxyxyyyyxyyyyyyyyyyyyyyyyxyyxxyyyzzyxyzzyyxxyxyyyxyxyyyyyxyyyyyxzyxyyyyxyyxyzyxxyyzzyyyyzyyyyyyyyyyyzyyyyyyyzyyyyyyyyyyyyyzyyyyyyyyyyzyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyzyyyyyyyyyyyzyyyyyzyyyyyyyyyyxyyyxyxyyyyxyyyyyxyyyyyyyyxyyyxyyyxxyxyxxyyzyxyyyyyyyyyyyyyyyyyzyyyyyyyyyyyyyyyyyyyyyyyyyyyzyyyyzyyyyyzyyyyxzyyyyzyxzyxyyyyyyyyyyyyyyyyyzyyyxzyyyxzyyyyzyxxyxyyxyxyyyyyxyyyyyxzyxyyyyxyyxyzyyxyyzzyyyyzyyyyzyyyyyyzyyyyyyyzyyyyyyyyyyyyyzyyyyxyyyyyzyyyyyyyyzyyyyyyzyyyyyyzyyyyyyyzyyyyyyyyyyyzyyyyyzyyyyyyyyzyyyyyyyxyyyyyzyyyyxyyyyyyyyyyyyyyyyyyyyyxzyyyxzyyyyyyzyyxyyyyzyyyyyyzyyyyyyyxyyyyxzyxyzyyxyyyyyyyyyyyyyzyyxyyyyzyyyyxyzyyyyyyyxyyyyyzyxyyxyxyyyyyyyyyyyyzyyyyxyzyyyyzyzyyyyyyyyyyyyyyyyyyyzyyyxzyyyxzyyyyzzyxyxyyzyyyyzyyxyyyyyyzyyyyyyyyyyyzyyxyzzzyyzyzyyzyyyyxyyyyyyyyyyyyyyyyyzyyyyyyyyyyyzyyyyyzzyyyyyyyyyyzyyxyyyyzyyyyyyyzyyyyyyxyyyyyzyxyzyyxyyyyyyyyyyyyzxxxxxyzyxyyzyyzyyyyyyyyyyyyyxyxyxyyyxxzyzyxzyyyyzzzyyxyyzyzyyyyyzyzyyyxyyxyyyyxzyxyyxyxyyyzxyyyyyyzzyzyyxyzzyyyzzyzyyyyzzyyzyyyzyyyyyzzyyxzzzzxzyyyyzzzyyyyzzyzyyyyzzyzyyyzzyyyyzyyzyyyzyyyyyzzyyyyzyzzzyxyxyyzyyyyyyzzyyyyyyxyxyyyyxyyxyyxyxyyzzyyyyyyyzyyyyyyyyyzyzzyyyyyzyzyyzyyzyzzyyyyyzyyyyyyzyyyzyyyzzyyyzyzyyzyzyyyyyyyzyyzyyyyzzyyyyyzyyyyyyzyyyyyyyzzzyyzyyyyyzzyyzyyzzzyyzzyzyzzyzyyzzzyzyzyzyzzzzzyzzzyyzzyzyzzzyzyzzzyzyzzyzzyzzzyzzzzyzyzzyzzyzzyyzzz{zzzyzzzzyzyyzzzyyzz{{zzyyzzzzzyzzyzzzyyzyzz{yzz{zzyz{yzzzyyyyyyyyyyyyyzyyyyyyyyyyyyyyyyyyyyyyzyyxyyzyyzyyyyyyyyyyyyyyyyyzyyyyyyyyyyyyyyyyyyyyyyzyyyzyyyyzzyyyyzzyyyyyzyzyyzyyzyzyyyyyzyyyyyyyzyyyzyyyyyyyyzyyyyzyzyzyyyyzzyzzyyyzzzzyyyzzyzyyzzzzyzzzzyzzyyyzzzzyyzyyyyyy{yyyyzzy{yyzyzy{yzyyzy{yyzyyzzyyyzzz{yzyzy{yyyyyyxyyyyyyzyyyyyyyyyyyyyyyyyyyyyxyyyyxzyyyzyyyyyyzyyxyyyyzyyyxyyyzyyxyyzyxyxyyyzyxyyyyxyyyyyyyyyyyyzyyyyyyyzyyyyyyyzyyyyyyyyyyyyyzyyyyyyyyyyzyyyyyyyyyyyyyyyyyyyzyyyyyyyyyyzzyyyyzyyyyyzyyyyzzyzyzzyyyyyzyyyyxyzyyyxzyyzyxyyyyyyzyyzyyyyyyyzyyyxzzyyxzzyyzyyxyxyyyyyxyyyyyyyyyyyyzyxyyyyxyyxyzxyxyyzzyyyyzyyzzyzyzyyzzyzyyyyzzyzyyzyzyyzyzy{{zyzz{yyzyzyyzzyzyyyy{yyyyxy{yyyxyyy{yyyzyyy{yzyyyy{yyyyxy{yyxyzy{yxyzyyy{z{yyyyyz{yyyyzyz{yyyyzzz{yyyzzzy{yyyzzyyyyzyyyyyyzzyz{zzzyzy{zyyz{yy{zz{zyzz{zyyzzz{{{zyz{zyyz{zy{yz{zzyy{z{zzzzzz{zzzz{zz{zzzz{zz{zzz{zzz{yzz{{zzzz{zzzzz{z{zzyyy{{yyyyy{{yyxyzy{{xyyyzz{{yyyzz{y{yyyzyyyyyyy{yyyyzzy{yzzzzyzyyzzz{yyzzz{zyzyzzyyyzz{z{yyz{yyyz{{yyyz{{zyyyyzzyzyzyzzyzyyyzzzyzyzzzzyyzzzz{{zyzz{yyzyzyyzzyzzyyy{zyyyyxy{yyxyyy{zyyzyzy{zzyyzz{yyyyyz{yyyyzy{yxyzzyy{{{zyzyzy{{yz{zy{{z{zyzz{{yyzzz{{{zyz{zyyz{zy{yz{zzzy{z{zzzyzzz{zzz{zz{zzzz{zz{zzz{zzz{zzz{{zzzz{{zzzz{{{zzyyyzzyzyzyyzzyzyyzzzyzyzzzzyyzzzz{{zyzzzyyzyzyyyzyzzyyyz{yyyyyyz{zyyyyyyzyzyzzz{yyyzzzy{yyyzzyyyzzyyyyzzzzyzz{zzzyzyz{zzz{zyyz{zyzzz{yyyzz{z{yyz{yyyz{{yyyz{{zzyzz{zyzyzyz{zyzyzyzzyzyzzz{yyzzzz{{zyzz{yyzyzyyzzyzzzyz{{yyyyyy{{yyyyzy{yyzyzz{{zyyzz{y{yyyz{yyyyzy{yyyzzzy{{{{{{{z{{{{{yz{{{{zz{{{{{{{{{{{{{{{{{{{{{z{{{{{z{{{z{yz{yyzyyyz{zyz{zyz{y{yzzz{yyyzz{y{yyy{{yyy{zyyyy{zzzyz{zyyyyxy{zyyxyyy{zyyyyyyyyyyyy{yyyyxzzyyxyzy{yxyyyyy{{zyyyyyy{zzyyyyy{zzyzyyyzyyyyz{yyyyyzzyyyzzy{yyzzyyy{{zzzzyzy{zzzz{yy{zz{zyyyzyyyyz{z{yyz{zyyz{{y{yz{{zyy{{zzyzyzz{zzyzyyz{zzyzzzzzzyzzz{{{zyzz{zyzyz{{zzyzzzz{{{z{z{zy{{z{z{{y{{z{zy{z{z{z{z{{{z{z{{y{z{zy{yz{zz{y{yyyy{yzz{zz{{{{yyyyzyyyyyzyz{yyzyy{zzyyzzzyzyz{zyyzzzyyy{zyyyy{zzyyyyzyyzyyyyzzyz{yyzzz{zyzyzzyyyyz{zyyyzzyyy{zzyyy{zzyyy{{yyzyyy{{zzz{zy{{y{zyzz{zyzyzy{z{yzzyyyy{zz{yy{zzzy{zz{zzyzzzz{zz{yzzz{{zzyzzzzyzyz{{{zyzzzyz{z{zzz{zzzzz{zz{z{zz{zz{z{{z{{{{zz{z{{z{z{z{{{z{z{z{z{{z{zz{{z{z{yzzzzyzyyzzzyzyyzzzyzyzyyzyyyyzzy{yyzz{yyyzyyzzz{zyyy{{zzzyzy{{zzyzzy{{zyzyzz{zyyyzz{y{yyzz{yyyzy{zzz{zzy{yzzzzyzyyzzzzzyyyzzyzyyzyzyyzyzz{{zyzz{yyzzyyzzz{zyyyyzzzzyzyyzzzz{yyz{z{zyyyz{zyyyz{z{yyz{{yyz{yyzz{{yzyyz{{zzzz{z{{{z{z{z{{{{{z{z{{z{z{{{{{z{{{{z{{{zzz{{{zzzz{zzzzyzy{zzzyzzy{{zzzyzy{{zzyzz{y{yyzz{yyzz{y{zz{yzy{{{yyyyyy{{zyyyzy{{zyzyzz{zyyyzz{y{yyyzzyyyzzy{yyyzzy{yyzyzyzyyyzyzyyyyzzyzyyzyzyyzyzz{{zyzzzyyzzzyyyzzyyyyyzyyzyyyyzzyz{yyy{z{zyyyy{zyyyz{zyyyy{zyyy{zyyyy{yyyy{yzzzyzy{yzzz{yy{zz{zyyz{zyyzyz{{{zyz{{yyz{{y{yz{{yy{z{{zzzzzz{{zzzzzz{{zzzzzz{zzzzzzz{zzzz{zzzz{zzzzz{zzzyyyzzyzyzyyzzyzyyyzzzyzyyzzzyyzyzz{{zyzz{yyzzzyyzzzzyyy{z{z{{z{|z{|z{z{|z}{z{y{|zz{z{z}z{z{|}y|z{|}{y{{|}zz{zzzzzzzzy}zzzzz|y}zzz}{|z|zzz}{|zzzzz|{|zzzzz}z{zzzzzzz|}{z{{|}|z{z{{|}|z{{{{|}||z{{{|}z{z{{{|zz{z{|z}{z{|z{||{zz{{|{}zzz{{|{}z{{}{|{|{z{}{|}{{z{|{|{z{z{}|{{z{||{||}|{{{|}~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{|z{z|{|{z{z{||{|{{|{||{{{{|{|zz{{{|}z{z{|{|zz{|{||{{|{||{||{z{z{{{|z{|{{|{|z}{{{|{|zz{{{|}z{z{|}||z{|}||{{|}||{||{z{zz{|}zzz{{|{}z{{}{|{|zz{}{|}z{z{|{|zz{z{}|{{z{||{||{z{zz{|{zzz{{|{|z{{{{|{|~z{{{|}{{z{{{~~z{z{~|{{z{~|{||}z{z{{|}}{z{{|}}z{{}{|}||z{}{|}{{z{|{|{z{z{}|}{z{||{||}|{|{{|}~|||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{|{||}z{z{{|}{z{zyzz{y{{{{|}z|z{{{|}y{z{{{|zz{z{|y}{z{|z{||}|{z{{|}||{|{z{||{{{{|}||z{{{|}y{z{|{|zz{|{|z}{|{|z{||}z{z{{|}|z{|{{{|z}{{{|}||z{{{|}z{z{|}||z{|}|y}{|}|z{||}z{z{{|}}z{z{{|}z{{}{|}||z{}{|}z{z{|{|zz{z{}z}{z{|z{||}z{z{{|}~z{z{{|}z{{{{|}|~z{{{|}{{z{{{~~z{z{~{}{z{~{{||}|}|}}|}~|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||zzzzzzzzz{zzzzzzz{z{zyzzzzzzzzz}{zzzz{|{zzz{{{yzz{z{zzzz{z{zzzz{{zzzz{z{z{zy{z{zzz{zz}{z{zz{|{{zz{{{zzz{z{zzz{|{z{{z{||{|z{z{||{{zz{|zz{zz|}{{z{|{|{z{|{|{{{|{|{zzz{z{z{{z{|z{|{{z{|z}{{{{|{z{{{|}{{z{|}||z{|}|{{{|}|{{z|{z{zz{|{}zzz{{|{}z{{}{|||z{}{|}|{z{|{|{z{z{}|{{z{||{||}{{{{~|}~{{z{~|}~z{~}~|}~{~}~|}{{{~|~~~{{z~~{}{z{~{~|yyzz{yyzzzz{|}z|}z}{}z{zzzzzz{zzzzzzz{zzzzzzz{|zzzzzz}zzyzzzzzzz{{z{zz{zzzzz{z{z{{z{|zzzz{z{{z{{z{z{|zz{z{|}z{{{{|zz{z{|z{{z{|z{z|{z{zz{|{|zzz{{|{|z{{{{|{|zz{{z|}z{z{{|zz{z{||{{z{||{||}z{z{{|}{z{z{{|}{z{{{{|}||z{{{z}{{z{{|{z{z{|{}{z{|{{|z{|{z{{z{}|{|z{|{}|{{}{|{|zz{}{|}|{z{|||z{|{}z{{|{|zzzz{z~z~{z~~{~|z~|~~z}~}~|~~~z~}~|}{~z~|}~z~|}~{{~|}~{{zz{z{z{{z{|z{|z{z{|y}{z{z{|zz{z{|}y{z{|}||{z{|z{{|}|z{z|{z{z{{|{|z{|{{|{|z}{{{|{|zz{{{|}y{z{|}||zz{||{{|}||{||}z{z{{|}|z{|{{|}|y}{{{|}||z{{{|}{{z{|}||z{{|{}{|}|{{|z{z{z{{z{}z{|z{|{}z}{}{|{|zz{}{|}z{z{|}||z{|}z{{|}zz{zz{z{z{{z{~z{|z{z{~z}{z{z{~~z{z{|}z{z{|}|~z{|}z{{|}~z{z|}|}|}}|}~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}|||{|{z{{|{||{|{{|{||{{{{|{|zz{{{|}z{z{|{|zz{|{||{z{||{||}|{z{{|}||{|{{|}||{{{{|}||z{{{|}{{z{|{|{z{|{|{}{{|{{|z{|{z{{z{}|{|z{|{}|{{}{|{|zz{}{|}z{z{|{|zz{|{}z{{|zzzzz{|{z{{z{~|{|z{z{~|{{z{z{~~z{z{|}z{z{|{|~z{|{|z{{|{zzzz{|{z{{z{}|{|z{|{}|}{}{|{|zz{}{|}{{z{|}||z{|}}{{{|}|{z|}|{|{{|}~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||{{{{z|{|~}{|{|~}||{|~}||}|~}|||~~}|||{|}|||{|~~}|{|{}|~}|{|{{{|{{{{{|{|{{{|{|{{z|{|{{z|{|{{{z}|{{{{z||{{{{{||{{{{{{{z}{{{y{}|{{yz}||{z{}||{|z}||{{z}||{{{z||{{{{}z|{{{{z{{z{{z{z{{zz{zz{{{{zz{{{z~z{{{z{z{z{z{z~~{z{z{{z~{z{z{{{{{{{{{}z{{|{}z|{{{}z||{z|z||{{{{|{{{{{||{{{{{{{{{{{{{z{{{|~}{{|~}||{|~}||}|~}|||~~}|||{|}|||{|~~}|{|{}|~}|{|{{{{|{{{{}{|{|{}{|{{{}{||{{|{||{{z}|{{{{z||{{{{{||{{{{{{{{|}{{{|}|{{{|}||{z|}||{||}||{{z}||{{{z||{{{{}z|{{{{z{{{~{{z{z{z{{{|{{{{z|{{{z~|{{{z{z}|{z{z~~|{{z{{z~{{{z{{{{|{{{{{}{{|{}{|{{{}{||{z|{||{{{}|{{{{{||{{{{{{|{{{{z{{{|{{z{z|{||{|{z{}z|{z{{{|{z{{{z}|{{{z||}|{z{{z|}|{z{||{{|~}{|{|~}|||~}||}|~}|||~~}|||{|}|||{|~~}|{|{}|~}|{|{{{{|}{{{{}}|{|}}||{{}}||{||}||{{z}||{{{z||{{{{}||{{{{{{{{~{{{{{~{|{{z{|{{z|{|{{~|{|{{{z}|{{{{~~|{{{{{|~{{{{{{{{|{{{{{}{|{|{}|{{{}{||{z|{||{{{}|{{{{{||{{{{{||{{{{{{{{|{{{{{|{|||z|{{}z|{|{{{|{|{{{z}|{{{{||}|{{{{||}|{{{{{{|{{{{{|{|{zz{zz{z|{|{{z|{|{{{z}|{{{{z||{{{{{||{{{{||}}|~}}|}|~}||}|~}|}}~}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}|{{{{~}{{{{~}|{{{~}||{z}||{~|}||{{z}||{{{~~|{{{{}z~{{{{{{{{|}{{{{}}|{|{}}||{{}||{||}||{{{}||{{{{||{{{{}{|{{{{{{{{|}{{{{|}|||{|}||}z|{|{||}||{{z}||{{{||}|{{{}z|}|{{{{{{z}{{{{{}|{{{{}||{z{zz{||}||{{z}||{{{z||{{{{}z|{{{{{{{{z}{{{{{}|{{{{}||{zzzzz|z}||{{z}||{{{z||{{{{}z|{{{{{{{{~}{{{{~}|{|{~}|~{{~}|~{~}|~{{z}|~{{{~~~{{{{}{~{{{{{{{{|{{{{{}{|{|{}{|{{{}{||{||||{{|}|{{{{z||{{{{{||{{{{z{{{|{{z{{|{{||z|{{{}z|{{{{{|{{{{z}|{{{z||}|{z{{z|}|{z{{{{|{{{{{|{{{{{|{{{{z|z{{{z|{{{{{}|{{{{{||{{{{{{|{{{{z{{zzz{z{z{zzz{z{z{{{z{z{{zzzzzz{z}z{z{zz||z{z{zzz{z{zz{{zzz{z{z{zzz{z{z{{{z{z{{zzzzzzzz}z{z{zz||z{z{zzz{z{z}{}{}|z}|{z}|{{z{z{zz{~~{~{~{~{~~{|~|~~|~}{~~|~{~~~|~{~{}|~{~{~}|~{~{{~}|~{{{{{|{{{{{}{{||{}{|{{|}{||{{|{||{{|}|{{{{|||{{{{{{{|{{{{{{{}{{{{{}|{|{{}||{z{}||{||}||{{z}z|{{{{||{{{}z|{{{{{{{{|{{{{{|{|{|{|{|{{z|{|{{{|{|{{{z}|{{{{{||{{{{||{{{{z{{{|{{z{{|{z{|z|{z{{z{{z{z{|{z{z{z}|{z{z{||{{{{z|{{{zzz{{|{{z{{|{{{|{|{{{{z|{{{{{|{{{{{z}|{{{z{||{{z{{|{{{z||}}|~}}|}|~}||}|~}|}}|~}|}|~~}|}|}|}|}|}|~~}|}|}}~}|}|z{{z~{{z{z~{{||z~{{{}z~{{{{~~{{{{{z}|{{{z~|}|{z{{z}|{z{{{{|{{{{{}{{||{}{|{}{}{||{z|{||{{{}|{{{{||}|{{{{{{|{{{{{{|}{{{{|}||{{|}||}z|}||{||}||{{z}||{{{||}|{{{}z|{{{{{{{|{{{{{|{||{{|{|{}z|{|{{z|{|{{{z}|{{{{||}|{{{{||{{{z{{{|{{z{{|{{|{z|{{{}z|{{{{z|{{{{{z}|{{{z||}|{z{{z|{{{zzyzzyyzyzzzyzyzzzzzyyzzzyyzzzyzyzzzyzyz{yyyzzyzzyyyyzyzzzz{zzz{y{z{{{zzz{{z{{z{{zzz{{zz|{{{zzzz{{zzzz{{z{zzyzzzzyyzyzzzyzyzzzzzyzzzzyzzzzyzzzzzyzyy{yyyzzyzzyyyyzzy{yyzyy{zyzyy{{zzyy{{zyz{{zyz|zzzyzyz{yyyz{zzzyyyzyyzzyzyzzy{zyzzz{z{zzy{zz{y{zzyzz{zzyz{|zyzyz{{{zyzzzzzz{zzzz{{zzzz{{zzzy{{zzz{{zzz|z{zzzzz{zyzz{{{zzyzzyzzzzz{{zzz|{zzzz|{{{{zz{{{z{{{{zz|{z{zzz{|zzzz{z{{zzzzz{z{zzz{{z{{{zzz{{z{{z{{zzz{{zz|{{{zzzz{{zzzz{{z{zzyzzyz{yyzy{zyzyz{{zzyz{{zyz{{zyz|zzzyzyz{yyyz{zzzyyyzyzzz{yzyzz{zzzzz{z{zzz{zz{z{zzzzz{zzzz{|zyzzz{{{zyzzz{z{zzz{z{zz{z{zz{zz{zz{zyzz{zz|{z{zzzy{yzzzzz{zyzzzz{z{zzz{z{zz{z{zz{zy{zz{zzzz{zz|{z{zzzz{zzzzzy{zzzzzzyzzz{{zyzz|{zzz|{{{{zz{{{z{{{{zz|{z{zzz{|zzzz{z{{zzzzz{z{{zz{z{{{{{z{{{z{{{{{zz{{{zz|{{{zzzz{{zzz{{{z{zzzzzzz{yzzzz{{zzzz{z{zzz{zz{z{zzzzz{zzzz{|zyzzz{{{zyzzz{z{zzz{z{zzz{z{z{zz{zz{zyzz{zz|{z{zzzy{yzzzzz{zyzzyzzz{zzyzz|zz{zz|zz{{{zzzzzzzzzz{z{zzzzz{{zyzzyz{{zyyzzzz{yyzzz{z{zzz{{z{z{{zzz{{zzz|z{zyzz{|{yyz{zz{{yyz{{{{{{z{{{|{{zz{|{{{{z{{{{|{{{{{|{{{{{{||z{{{{{|{z{{zzzzz{yzzzz{{zzzz{{z{zz{zz{{{zzz|z{zzzz{|zyzz{{{{zyzzz{z{{zz{z{{zz{z{{{{zz{z{zz{{{zz|{z{zzzy{yzzz{z{zyzzyzzz{{zyzz|{z{zz|{{z{{{zzzz{{zzz|z{zzzzz{{zyz{zz{{zyyzzyz{yyzyz{zyzyz{{zzyyzyzz{{zyz|zzzyzyy{yyyz{zzzyyy{z{{{{z{{{{{{{{{{{{{{{{{{{{{{{{z|{{{{z{{|{z{z{{{{{z{zz{z{zzz{z{{{z{z{{{{{z{{{{z{z{zz|{{{zzzz{zzzzz{{{zzzzzzz{zzzzz|z{{zz|z{z{{{z{zzzzzzz{z{zzzzz{{zzzz{{{{zzzyyzzzyzyzzz{zyzzz{zzzzz{zzzzyzyzz{zzyzz{zyzyz{{zzyzzyyzzzyzyzzz{zyzzz{zzzzz{zzzyyyyzz{zzyzz{zyzyz{{zzyz{{{{zz{zzz{zyzy{z{{{{{{{{|{{{{{|{{{{{{{{{{{{{{{z|{{{{z{{{{{z{{{{{{{zz{z{{zz{z{{z{{z{{z{z{{{z{zz{z{zz|{{{zzzz{zzz{z{z{zzzzzzz{yzzzz{{{zzz{{zz{z{{zzzz{zzz|z{zzzzz{zzz{{{z{yzyzzzzzyyzzzzz{zzzzzzz{zzzzzzzzzzzzz{zyzzz{yyzzzzz{yyyzzzzzyyzzzzz{zzzzzzz{zzzzzzzzzzzzz{zyzzz{yyyzzzz{yyzzzz{{zzzz|{{zzz|{{z{z{{{zz{{{zzz{y{zzzzz|zzzz{{{zzz{{||{|{{{|{|{{{|{||{{{{||{|{|{{|{||{{{{|{{|{{{|{z{{{{zzzz{{zzzz|{z{zz|{zz{{{{zzz{{zzzz{z{zzzz{{{zzzzzz{zzzz{z{zzz{z|zzz{z|zz{{z{zz{zzzz{zz|{z{zzzz{zzzzzy{zzzzzzz{{zzzz|{{zzz|{{z{z{{{zzzz{zzz|z{zzzzz{zzzz{{{zzzyzzz{zzyzz|zzzzz|zzz{z{zzzzyzzzzz{zzzzzyz{zzyzzyzzyyyyyzzyxyyzzzyzxzzzzyzxzzyzzzzyyzyzzyyyzyyyyyyzzyyyxyyyzyyxyyzzzyyxzzyyyyzyyyzyyyyzxzzyxyzyyyyxzyyyyxyyzzzyyyzzzzzyyzzzzzzzzzzzzzzzyzzzzyyzzzyyyyzzzyyyyyyzzyyyyyzzyzyzzzzyzzzzyzzyzyyzyzzyyyzyyyyyyzzyyyxyyyzyyyxyzzzyyyzzzyyxyzyyzyyyyzyzzyyyzzyyyyzzzzyxyyyyzyyyyzzzyyyzzyzyzyzzyzzzzyyzyzzyyyzyyyyyyzzyyyyyyyyzyyyzzzzyyzzzyyyzyyyzyyyyyzyyzyyyzzyyyyyyzzyyyyyyzzyyyzzzzzyzzzzyzxzzyzzzzyyzyzzyyyzyyyyyyzzyyyyyzyyyzzzyyyzzzzyyzzzzzzzzzzzzzzzyzzzzyyzzzyyyyzzzyyyyyyyzzyyyyzzyzyzzzzyzzzzyzzyzyyzyzzyyyzyyyyyyzzyyyyyyyzzyyyyzzzyyzzzzyzxyzyzzzzyyzyzzyyyzzyyyyzzzzyyyyyyzzzyyyzxzzyzzyzzzyyzyyzyzyyzxzzyyyzzyzyyyzzyzyxyyyyzzyyxyzzzxyzzzyzyzzyyxzzyyzxzzyyyzzyzyyyzyyzxyyyyyzyzyyzzyzyzzyyzyzyyyzzyyyyzyzzyyyzzzyyyyyzzyyzzyyyzzzyyyzzzzzyyzzzzzzzzzzzzzzyzzzzyyzzzzyyyzzzzyyyyyyzzyyyyzzzzzyzzzyzzzzyzzzzyyzyzzyyyzyyyyyyzzyyyyyyyzzzyyyzzzzzyzyzzzyzzyyzyzyyzxzzyyyzzyzyyyzzyzyyyyyyzyyyyzzzzyyzzzyzzzyyzzyyyyzyzzyyyzyyyyyzzzyyyyyyyzzzyyyzzzzzyzzzzzyzzyzzzzyyzyzzyyyzzyzyyyzzyzyzyzzzzzzyzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzyyyyzzzyyyzzzzzyzzzzzzyzyzzzzyyzyzzyyyzzyzyyzzzzzyyyyyzzyyyyzzzyyyzzzzyzzzyzzzzyyzyzzyyyzyyyyyzzzyyyyyyyzzyyyyzzzyzyzzzzyzzzzzzzzyyzyzzyyyzyyyyyyzzyyyyyyyzzyyyyzzzyzyzzzzyzzzzyyyzyyzxzzyyyzyyyyyzzzyyyyzzzzzzyzzzzzzzyzzzzzzzzzzzzzzzzzzzzzzzzzzyzz{zzzyyyyzzzyyyzzzzzzyzzzzzzzzzzzzzzyzzzzyyzzzzyyyzzzzyyyyyzzzyyyzzzzyzyzzzzyzzzzzyzzzyzyzzyyyzzyyyyzzzyyyyyyyzzyyyyzzzzzyzzzzyzyzzyyzyyyzyzzyyyzzyyyyzzzzyyyzzzzzyyzyyyyyyzzyyyyzzzzzyzzzzyzyyzyzyzzyyzxzzyyyyyyyyy{zzyyyzzyzzzyzyzzzzzyzzzzzzzzzyzzzzyzzyzzyzyzzzyzz{zzzyyyyyyzyzyyzzzzzyzzzzzzzzzzzzzzzyzzzzzyzzzzzyzzzzyyyyyyzzyyyyzzzzzyzzzzzzyzzyzzyzyyzyzzyyyzzyyyyzzzyyxyyyyzyyyyyzzzzyyzzyzzyzzyyzyzyyzyzzyyyzzyyyzzzzyxyyyyzzzyyyzzzzzyzzzzzzzzzyyzzzyyzyyzyyyzyyzyyzzyzyzzzzzz{zzzzz{zzzzz{zzzz{zzzzzzzzzzzzzzzzzzzzzzzzzzzyyyyyzzyyyzzzzzyzzzzzzzzzyyzzzyyzyyzyyyzzyzyyzzzzyyyyyyzyyyyzzzzyyzzzyyzzzyyzyyyyyzyyzyyyzzyyyyyyzzyyyyyzzyyyyzzzyzyzzzzyzzzzyzzyzyyzyzzyyyzyyyyyyzzyyyyyyyzzxyxyyzzxyyzzzyyzzyyyyzxyyyyyyyyyyyyxyzzyzyyyxyyyyyyxyyyyyyyyyzyyyxyyyyyyyxyyyyyxyyyyyyxyyzyxyxxyyyxyyyzzyyyyyzzyyxzyyzyyyyyyyyyyyyyyyyyyyyyyxzyzyyyyyyyyzyyyyyyzyyyyyzzyyzzyyyyyyyyyyyyyyyyyyyyzzyzyyxxxxyzyxxxyyzyyyyzzyyyyyyxyyyxxxxyyxyxxyyyxxzyyyyyyxxyxyyyxyxyyyyxyyxyzyxyyxyyyyxxyyzyxyyyyxyxyyzyxyyxxxxyyyxxxyyyyxyyyyyyyyyyyxyyxxyyzyxxyyyyyxyyyyyyyyyyyyzzyxyyzzyyyzzzyyzzyyyyzxyyyyyyyyyyyyxyzzyzyyyxxyyyyzyyyyyzyxyyyyyyxyyyyyyyyyyyyyxyyyyyyxyyzyxyxyyyxyyyyzyyyyyzyyyxzyyzyyyyyyyyyyyyyyyyyyyyyyxzyzyyyxyyyyyzyyyyyzyyyyzzzyyzzyyyyyyyyyyyxyyyyyyyyzzyzyyyxxyxyyyyxyxyyyxyyyyzyyyyxyyyyxxyyzyxyyyyyyxyyzyxyyxxxyyzzyxxyyzyyyzzyyyyyyyyxyyxxyyzyxxyyyyyxzyyyyyyzzyyyzzyzxyyzzyyzzzzyzzyyyzzyyyyyzyyyyyyzyyzzyzzyyyyxzyzyzzyyyzyzzyyzzyzyzzyyzzyyzyyzyyyyyzyyyxzyzyyyyyyyyyzzyyyyyzzyyyzzzyzzyyyyyyyyyyzyyyyyyyyyzzzzyyxxxyyyzzyxyyyzzxyyyyzyyyyyyyyyxyyyyxxyyyyyxxzyyyyxyxxyxyyyyxyxyyyyxyyyyyyyyyyyyyxxyyyyyyyyyyyxyyzyyyyxxyxyyzyxyxyyzyxyyyyyyyzyyyyyyyyyzzyyyyyyyxyyzyyyyyxyyyyzyyyyyyzyyyyzyyzyyzzyyyzyyzyzzyyyzyyyxzzzyyyyxxyyyyyyxyyyyyyyyyyyzyyyyyyyyxyyyyyyyyyyyyxyyzyyyyyyyyyzyyyyyyzyyyyzzzyyzzyyyzyyyyyyyyyyyyyyyzzzzyyyyyyyyyzyyyyyyzyyyyzyzyyyyyyyyyyyyzyyyyyyyxyyyyyyyyyyyyyyyyyyyyyyyyyyzyzyyyyyyyyyyyyzyyyyyyyyyyyyyyyyyyyyyzyyyyyyzyyyyzzzzyzzyyyyyyyyyzyyyyyyyyyzzzzyyyyyyyyzyyyyyyzyyyyzzzzyzzyyyyzyyyyzyyyyyyyxyzzyzyyyxyyyyyyyxyyyyyyyyyyyzyyyyyyyyyyyyzyxyyyyyyxyyyyyyyyyzyyyxyxxxxyyzyyxxyyzyyyxzzyyyxyyyyyyyyxyxyyyxxyyyxzyyyyyyxxyyyyyyxyyyyyyyyyzyzyyyzyyxyyyxyyzyyyyyyyxyy{zxyyyyyyyzyyyyyyzyyyyzzzzyzzzzyyzzyyyyyzyyyyyyyzz{zyyxyyyyyzzyyyyyzzyyyzzzyyzzyyyyzyyyyyyyyyyzyyyzzyzyyyxxyyyyyyxyyyyyyyyyyyyyyyyyyyyyxyyyyyxyyyyyyyyzyyyyxxyxyyyyxyxyyyyxyyyyzyyyyyyxyyxxyyzyxyyyyxyxyzyyyyxxyyzyzyxyyyyzyyyyyyzyyyyyyyyyyyyyyyxyzyyyyxyyyyyzyyyyyyzyzyyyyzyyyyzyzzyzyyzzyyyyyzzyyyzyyyyzyzzzyyyxxyxyyyyxyxyyyyxyyyyzyyyyyyyyyxxyyyyxyyyyyyxyyyyyyyyyyyzzyyxyyzzyyyzzzyyzzyyyyzxyyyyyxyyyyyyxyzzyzyyyxyxyxyxyxyyxxyxyyyyxyzyxyxxxyyxyzyyxxyyyyyyxyyyyzxyxyyzxyxyyyzzyyyyyzyyyyxyyyyxxyyyxxyxyyyyxyyyyyzzyxxxxzyxyxxzyzxxyzxyxyyxxxyyyxxxyyxyxxxyyxyxyyyyzxxyyzxyyxyzxxyyyzyzxxyzyyxyyyyyxyyyxxyyyxxxyyyxxyyyyyzyyyyyyyyyyyxyzyyyyyyzyyyyxyyxyxyxyyxyyxyyyyyyyyyyyyxxxxxyxxxxyzyyxxyzyyxyyyyxyyyxxyyyyxyxyyyxxxyyyyyyyyxyxyyxyxyyyxyxyyyxxyzyxyxxxyyxyzyyxxyyyyyyxyyyyzyyyyyyzyyyyyzzyyyyyzyyyyyyyyyxyyyyyyyxyyyyyyyyyyzzyyxxxyzyyxyyyzxxyyyyxyyyxxyyyxxxyyxyxxyyyxyyyyyyzxyyyyyxyxyyyyyyzyyyxyzyyxyyyyyxyyyyxyyxyyxyyyyyyyyyyyyxxyxyyyxyxyzzyxyyzyzyyyyyyyyyxxyyyyxyxyyyyxyyyyyyyyxxxxyyyxxxyyyyxyyyyyyyxxxyxxxxxyzyxxxyyyyyyyyyyyzyyxyxxzyyyxxzyyyxzyyyyyyxyxyyxyxyyyyyxxyyyyxyyyyzzyyxyxyzyyyxyzyyyyzyyyyzyyyxxyyyyyzyyyxyyyyyyyyyyzzyyzxyyzyzyyyzzzyyzyzzyyyzyyzzxxyyyzyyxyyyzyyyyyzzyyzxxzxzyzxxxzyzyzxxzyyxyzzyyyzyyyyyzyxyxyzyxxyzyyyzzyxyxyyzyyxyyzzzyyyyzyyyyxyyxyxxxyzyxyxyyyyyyyyyyzyyyxxxyyyxyxyyyyyxyyyxyyyyxyyyxxyyyyyyxyyyyyyyyyyyyyyxyxyyyyyxyyyyyyyyyyyyyxyyyyxyyyyxyyxyyyyyyyyyyyzyyyyxyzyyyxyyyzyyyyyyyzyyyyyyzyyyzyzyxyyyyyyyyzzzyyyyyyxyyyxyyyzyyyxyzzyyyyyzyyyyyyzzyyyxyyyyyyyyzyyyyyxyxyyyxyxyyyyyxyyyyxyyxyyyyyyyyyxyxxyyyxyyyyyyyyyyyyxyyyyyxyyyyyyyyyyyyzyyyyyxyxyzyyyxxyyyyyyyyyyzyyyyxyzyyyxyyyzyyyyyyyyzyyyyyxyyyzyyyxxyyyyyyyyzzyyyyyyyyyyyyyyyyyyyyyyyyzyyyyyyyyyzyyyxyyyyyyyyyyyyyyyyyyyyyyyyyzyyyyyyzyyzyyzyyyyyyzyyyyyyyyyyyyyyyyyyyyyyyyyyyyzzyyyyzyzyyzyyyyyyyyyzyyyyyyyyyyyzyyyyyyxyyyxyyyyxyxxyyyyxyyyyyyyyyyyyyyxyyxyyyxxyyyyxyyyyxyyyyyyyxyyxxyyxxyyzyyyxyzyyyyyzyyyyyyxyyyyxyxyyyyxyzyzyyyyxyxyyyyyxyyyyyyyyyyyyzzyyyyyzyyyyyyyxyyyyyyzzyyyyyyyyyyyyyyyyzyyyyyzzyyzyyzyyyyyyyzyyyxyyyyyyz{zyzyxyxyyzyyxyyyzzyyyyyzyyyyyyyyyxxyyyyxyxyyyyyyzyzzyxxxxxxyxxxxxzyyxxyzyyxyyyyyyyyxxyyyyxyxxyyyxyyyyyyyxxyxyyyxxxyyyyyxyyyyyyzyxyxyxyxxyxyxxxyyyyyyyyyyzyyxyxyzyxyxyyyzyxyyyyyyyyxyyyyzyxyyyyyxyyyyyyyyyzyyyyyyyyyyyyyyzyyyyyzyyyyyyyyyyyyyxyyyyyxyyyyyyyyyyyyyxyxyyyxyxyyyyyxyyyyyyzyxyyyxyyxyzxyxxyyyyyyxyyyyyyyyzxzyyyyzxyzyyyxzzxzyyyzyzzyyyzzxzyyyyyxyyyyzxzyyyyzzxyyyyzzzzyyyyzzyzyyyzyzyyyyzzyzyyyyxyyyyzzyzyyyyyzzyyyyzyzyyyzyzyyzyyyzyzzyyyzzyzyyyyyzyyyyzyyyyyzxxxxzzxxxxyxzzxxyzyxzyyyxyxyzxxxyzzxxxxyyyzxyyyxzzyyyyzzzyyyyzzzzyyyyzzxzyyyzyzzyyyzzxzyyyyxxyyyzzxzxyyyyxzyyyyzyzzyyyyzyyzyyyzxzxyyyzzxzyyyyyxyyyzzxzyyyyyzzyyyyzzzzyyyxzyxzyyyzyzzyyyzzxzyyyyyxyyzyzzzyyyyyzzyyyyzzzzyyyyzzyzyyyzyzyyyyzzyzyyyyyzyyyzzyzzyyyyzzzyyyzzzyyyyzzzzzyyzzyzzzyyzzzzyyyyyzyyyyzyyyzzyyyyyzzzyyyzzzzxyzyzzyzyyyzyzzyyyzzxzyyyyyxyyyzzxzyxyxyyzxyxyyyzxyyzyyyyyyxyyyyyyxyzyyxxyyyyyyyzyyyzyxyxyzzxyxyyzyxyyzyxzyyyxyxyzyyxyyzyxxyyyxzyyyyyzzxyyyyzzzyyyyzyzyyzyzzyzyyyzxzxyyyzzxzyyyyyzyyyzzxzyyyyyzzzyyyyzzzyyzyzzyzyyyzyzzyyyzzyzyyyyyzyyyzzyzzyzyyzzzzyyyzzzyyzzzzzzzyzzzzzzyyzzzzyyyzzzyyzyzzzzzyxzxyyzxyxzyyyzxyzyyyyyzxyyyzyyxyzzyxxyyzyzyyzyyyzyyxyxyzyyyyyyyzyyyyyyyzyyxyyxxxyyzzxyyyyyyzxyyyyxzyyyyyzzzyyyyzzzzyyyyzyzyyyzyzzyyyzzxzyyyyyxyyyyzyzyyyyyzzzyyyyzzzzyyyyzyzyyyzyzzyyyzzyzyyyyyyyyyyzzzyyyyyzzzyyyyzzzzyyyyzyzyyyzyzzyyyzzxzyyyyyxyyzzzzzzzzzyzzzzzyzzzzzzzzzzzzzzzzzzzzzyzzzzzyzzzzyzzzzzzzyyyyyyzzyyyzzyzzyzzyzyyzyyzyzzyyyzzxzyyzyyxyzyyzyyyyyyyzyzyyyyzzyzyyyyzzyzyyyyzyyyyzzyzyyyyyyyyzzzzzzyzyyzzzzyyyzzzzyyyzzzyzyyyzzyyyyzzyzyyyyzyyyyzzzzzyzyyzzzzyyyzzzzyyzzzzzzzyzzzyzyyzzzzyyyzzzyyzzzzzzzzzyzzzzzyzzzzzyzzzzzzzzzzzzzzzzzzzzzyzzzzyzzz{zzyyyyyzzzyyyyzzzzyyyyzzyzyyyzyyyyyzzxzyyyyyxyyyzzzyyyyyyzzzzyzxxxxxzzxxxxyyzzxxyzyyzxzyyyyyzyxyxyzxxxyyyzxyzyyzzyyyyyzzzyyyyzzzzyyzyzzyzyyyzxzzyyyzzxzyyyyxyyzzzxzyyyxyzzyyyyyyzzyyyzyyzyzzyyyyzzzyyyzyyxzzzzyyzzyzyyyyyyzyzyyyzzzyzyzyyzzyzyyyzyzzyyyzzyzyyzyyyzzzzyzyyyyyyzzyyyyzyzzyyyyzyyzyyyzyyzyyyzzxzyyyyyyyzzzyzyyyyyzzzyyyyzzzzyyyyzzyzyyyzxzzyyxzzxzyxyyxxyyzzyyyxyxyzyyyxyyxzyyyyzyxzyzyxyxyyyyxyyyyyxyyyyyyzyyyxxyxyxzxyxyxyyzyyxyyxyzyzyyxyyzyxyxzyxyyxyyyxxyyyzzyyyyyzzzyyyyzzzzyyzyzzzzzyyzyzzyyyzzzzyyyzzzyyzzyzxxyyyyzyzyyyyzzyzyyzyzzyzyyyzyzxyyyzyxzyyyyyxyyyzzzyzyz{yzzyzyz{yzzyzzz{yzz{yzz{yzzyzz{zyyzyz|zzyz{{{zzzyzyzzzyzyyzzzzyyyyzzzyyzzyzzzzyzyzzzxzyyy{yyyyzzyzzzzyz{z{yzzzz{zzzz{zz{z{{zyzz{yzzyzz{{{yzz{{zzz{z{{z{zzzyz{|zzyz{{{|yzzy{{{zz{zy{{{{yzy{z{|zyzz|zyzz{{z{yyyzzyzyzzzzyzyyzzzzxyyyzzzyyzzyzzzyyzyzzzyzyyy{xyyyzzyzzyzyyyz{yzyzzyz{zzyyzyz{yzyyzyzyyyyzz{{yyzy{yyzyzzyzzzyzyz{zzyzyz{yzzyzzz{yzz{yzz{yzzyzz{zyyzyz|zzyz{{{z{yzyzyz{yzyyz{{zyyyyz{{yyzzyz{{zyzyzzz|zyyy{xyyyzzz{zzzzzz{z{zzzz{zzzz{zz{z{{zzzz{zzzzzz{{{zzz{{zzz{z{{z{zzyzyz{|zyz{{{|yzzz{{{zz{zz{{{{yzz{z{|zyzz|zyzz{{z{yyz{zzzzz{{zzzzz{{zzyzzz{{yzzzzz{{zzzzz{z|zzyz{zzyzz{{{zzzyzyzz|zzyyyz|zy{yzzz{{zzyzzzyyzyz{z{zyy{{yyy{{zyzzyzyzyzz{yzyzzz{zzyyzzz{yzzyzzzyyzyzz{{zyzy{yyzyzzyzzzzzzz{zzzzzyz{zzyzzz{zzz{zzz{zzzzzz{zyzzyz|zzyz{{{z{zzzzz{{{zzzzz{{zz{zz{{{{zzzz{{zzzzz{{|zzz{{zzz{z{{{{zzzzyz{|zzyz{{{|zzz{{{zz{zz{{{{zzz{z{|zzzz|zzzz{{z{zzzyzyzyzz{yzyzzzz{zzyzzz{yzzyzzzzyzyzz{{zyzz{yyzzzzyz{yzyzyz{zyzyyz{{zyyyyyyyyzzyz{{zyzyzzz|zyyy{yyyyzzz{{zzyzyz{|zzyyz{{|zy{yyy{{zzyz{{zyzyz{z|zyy{{yyy{{zz{{yzyzyz{{yzyzz{{{zzyyzz{yzzyz{{zyzyzz{|zyzy{yyzyzzz{{zzzzz{{zzzzyz{{zzyzzz{zz{zzz{{zzzzz{z|zzyz|zzyz{{{{{{{{{{{{|{{{z{{{|{zz{{{{z{{{{{{|{{{{{{|{{{z||{{z{|{{z{yzyzyz{zyzyyz{{zyy{yz{{y{zyz{{zyzyz{z|zyy{|zyy{{zz{zzyzyz{zzzyzyz{zzzyzzz{zzzzyyyyzzyzz{zzyzyz{zzyzz{{zzzyzyz{zzzyzyz{zzzyzzz{zzzzyzyzzzyzz{zzyzyz{zzyzz{{zzzzzyz{z|zyzyz{z|zy{zz{z{{zzzyzzzyzz{z{yzy{{zzy{{{{zzzzzzz{z{zzzz{{z{zzzz{{z{z{zz{z{zzz{{{{zzzz{zzzz{{{z{{z{z{{{{{z{z{{{{{z{{{{{{{{z{{{z{z{{{{|z{z{|{{z{{{{{yyzz{yzz{zz{{{{zyyyxyyzzyxyyzzzyyy{yzzyy{zyyyzzyyxyz{zxyyy{yyy{zzyzzyzyzyzzzyzyyzzzzyy{yzzzy{zzyzzzyyzyz{zyzyy{yyy{zzyz{zzzzz{{zzzzyz{{zzy{zz{{z{zzzz{zzzzzy{z|zzz{zzy{z{{{zyzyyyyz{yzyzzzz{zz{yzzz{{zyyzzzzyyyz{{{yyz{zyz{zzyzz{z{yz{z|{z{zz{{|{z{{z{{{{{y{z{{z{y{z{{{y{z{zzz{{{{zzzzyzyzz|zzyyzzz|zyyyzzz{yzzyzyzyyzyzzz{zyyz{yyyzzyz{zzzzz{{|zzzyz{{|zyzzz{{{zzzzz{yzzzzy{z|zzyz{zzzz{{{zzzyyyyz|zzyzyyz|zzyyzyz{yyyyzyzzyyyzz{{yyzz{yyzzyyzzzyzyzzz|zyzyyz{|zy{zyz{{{{yzyz{zzyzy{y{yzy{{zzy{zzz{z|z|zz{|{|z{{{||{{{z|{||{{|z|{{|z|z{{{||z{{|{z{{{z{yzzyzyz{z|zyzyz{{|zyzzz{{{z{yzz{{zzyzz{y{yzyz|yzyz{{{z{y{y{zy}{z{{z|z}{y{{||z}{{y{||z|z{y{{|{zy{{{||z{{{{{z{{z{z{zz{zz{z{{{{zz{zz{{{zz{{z{{{z~z{z{z{z{z{z{~~z{z{~z{}|{{{{|}|{{{{||}|{{{{||}|y{{{||}||{{{||}z{{{{||y{{{{|z}{|{{{{|{|{{{{{|{|{z{{{|{|z{{{{|{|z{{{{|}z{{{{||z{{{{||{{|{{{{z{}{{{{{|{}{{{{||{}{{{{||{|z{{{{|}z{{{{||y{{{{|z{}~|{|||}~|{|{||}~|{||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{{{z{|{{z{z{|z{z{{z{|{{|z{z{|z}{z{z{|zz{z{|}z{z{|}||z{|}|z{{|{{{{{z}{z{{{|{}{y{{||{}{{{{||{|z{{{{|}z{{{{||z{{{{|z{{~{{z{zz{z{z{{{{|{{{z{{{|z{{z{{{|~z{z{|}z{z{{|~~z{{{~z{}|{{{{{|}|{{{||}|{{{{||}|z{{{||}||{{{||}z{{{{||z{{{{|z}{|{{{{{|{}{{{{|{}{{{{||{}{{{{||{|z{{{{|}z{{{{||z{{{{||{}~|{|{{|}~|{{||}~|{||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{{z{|{{{{{|{|{{{{zz{zy{{{|{|z{{{{|{|z{{{{|}z{{{{||z{{{{||{{|{{{{{|{|{{{{{{|z{|{{|{|z}{{{|{|z{{{{|}z{{{|}||{{|}||{{|{{{{{|{}{{{{{|}{z{{||{}{{{{||{|z{{{{|}z{{{{||z{{{{||{{~{{{{{|{~{{{{{|{z{{{{|{|z{{{{|{|~{{{{|}z{{{{|~~{{{{~|{}|{{{{{|}}{{{{||}}{{{||}}{{{{||}||{{{||}z{{{{||y{{{{||}}~|{|{||}~|{|{||}~|||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{|}z{{{{{|}{{{{{||}{{{{zzzzy{{{||}z|{{{||}z{{{{||z{{{{|z}}z{{{{{|}{{{{{||}{{{{{zz{z{{{||}||{{{||}z{{{{||z{{{{|z}}|{{{{{|}|{{{{||}|{{|{|{|z}{{||}||{{{||}z{{{|}||{{|}|z}}|{{{{{|}}{{{{||}}{{{{||}{{{{||}||{{{||}z{{{{||z{{{{|z}}~{{{{{|}~{{{{||}~{{{{||}z{{{||}|~{{{||}z{{{{|~~{{{{~z}}~|}|}||}~|}|}}|}~|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}|zzz{z{zzz{z{z{{{z{z{zz{{z{z{zzzzzzz{z{z}z{z{z||zz{z{zzzzzz{z{zzz{z{z{{{z{z{zz{{z{z{{zzzzzz{z{z}z{z{z||zz{z{zzz{|{{{{{z{|{{{{{{{|{{{{{{z|z{{{{{|z{{{{|}{{{{{||{{{{{|z{{|{{z{zz{|{{z{{{{|z{|z{{{|z}{z{{|zz{z{|}z{z{|}||z{|}|z{{|{{{{{|{}{{{{{|{}{{{{||{}{{{{||||{{{{|}|{{{{||z{{{{||{}~{{{{{|}~{{{{~|}~{{{{~|}~{{{{~|}~{{{~|}z{{{{~~~{{{{~{}yyzz{yz{|}z{|}z|}z}z}{|{{zyzz{|{zz{{z{|{z{z{z{|z{{zzz{|zzyz{|}zz{{||zz{{{|z{{|{{z{zz{|{{z{{z{|zz{z{z{zz{{z{z{|zz{z{|}z{{{||zz{{{|z{{|{{{{{|{|{{{{{|{|{z{{{|{|z{{{{|{|z{{{z|}z{{{||z{{{{||{}z{{{{{|}z{{{{||}z{{{{||}zz{{{||}||{{{|z}z{{{||z{{{{|z}{|{{{{{z{}{{{{z|{}{z|{||{}|{{{||{|z{{{{|}|{{{|||{{|{{z{{~{~{~{z{~{~{~{|~~{~|{~|~~{}~{~|~~~{~{~|}z~{~|}~{~|}~z{{|{{z{zz{|{{z{{z{|z{|z{z{|y}{z{z{|zz{z{|}z{z{|}||{{{|z{{|{{{{{|{|{{{{{|{|{{|{{|{|z}{{{|{|z{{{{|}z{{{|}||{{{||{}|{{{{{|}|{{{{||}|{{|{||}|y}{{||}||{{{||}z{{{|}||{{{|z}{|{{{{{z{}{{{{{|{}{{|{||{}{}{{||{|z{{{{|}z{{{|}||{{|{z{{~z{z{zz{~z{z{{z{~z{|z{z{~z}{z{z{~~z{z{|}z{z{|}|~z{|}z{}~|}|}||}~|}|}}|}~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}|z{|{|||||~|{|||~}||||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{{{||{{{{||{{{{||{{|z||{{{{{|{{{{||{{{{{z}|{{{{z}{|{{{{|||||{|y||{{|y||{||y||{|{{{|{|{|||{|{|{z}|{|{|{}{|{|{|||||||||{|}|||{z}|z|{|}||{{|}|||}{}||||{}|||||z}{||||{||{||{|{||{{|{||{|{{||{|{{||{|{|~{{|{|{|{|{|{|~~{{{|{{|{||||||~||||~}||||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{}}{}}}{{}}{{}{}}{}|{|}{}{{}}{}{}}|{}{}{|}|{}{}}}{|{}{{||{|||{|||{{|{||{||z||{|{{{|{|{|||{|{|{z}|{|{|{}{|{|{|||||||||||}|||||}|||||}||{{|}|||}|}||||{}|||||z}{||||{||{|~|{|{|{{|{||{||{||{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{z}}{}|}z}z}}{}{}}{}|z}}{}{{}}{}{}||{}{}{z}|{}{}z}{|{}{|{||||||~|||||~}|||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{}}{}}}{}{}}{{}}}{}|{|}{}{{}}{}{}}|{}{}{|}|{}{}}}{|{}{||||||||||||}||||}|||||}||{{|}|||}|}||||{}|||||z}{||||{||{|~|{|{|~{{|{|{||{||{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{{}}{}|}{}{}}{{}{}}}|z}}{}{{}}{}{}||{}{}{z}|{}{}z}{|{}{{{{{||z{{{||{{{{{|{|z||{{{{{|{{{{||{{{{{z}|{z{{z}{|{z{{}|||||~|||||~}||||~}}||~}}|}|~}}||~~}}|||}}}||||~~}|||||}}|}}}|}|}}}|}|}}}}||}}}|{}}}}|}}|}}|}||}||}|}}}{||}|{||{|~|{|{|~{{|{|~{||{|{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{{}}{}|}{}{}}{{}{}}{}|z}}}{{}}{}{}||{}{}{z}|{}{}z}{|{}{{||{|||{|{||{{|{||{||z{|z{{{|{|{|||{|{|{z}|{|{|z}{|{|{{||{|||{|{||{{|{||{||y{|zz{{|{|{|||{|{|{z}|{|{|z}{|{|{}}||}|~|}|}|~}}|}|~}}|}|~}}}}~}}}|~~}}}|}}}}}|}|~~}|}|}|||||~|||||~}||||~}||||~}||{|}|||~|}|||||}|||||~~{|||||}}|}|}|}|}}}|}|}}}}||}}}}|{}}}|}}|}}|}|{}||}|}{}{||}|||||||||||||}|||||}|||||}||{{|{||}|}||||{}|||||{}{||||||||||||||||}|||||}|{|||}||{{|zz|}|}||||{}|||||{}{||||||||||||||||}|||||}|{|||}||{{|zzz}{}||||{}|||||{}{|||||}}|}~}|}|}~}|}|}~}}||}~}}||}~}}|}~}}|}|}}}|}|}~~|||}|{}}{}}}{}{}}{{}{}}{}|{}}{}{{}}{}{}}|}{}{|}|{}{}}}{|{}{{||{|}|{|{|}{{|{|}{||{|}{|{{|}{|{|}|{{|{|}|{|{|}}{|{|{{||{|}|{|{|}{{|{|}{||{|}{|{{|}z|{|}|{||{|}|{|{|}}{|{|{{||{|}|{|{|}{{|{|}{||{|}{|{{|}{|{|}|{|{{|}|{|{|}}{|{|{{||{|}|{|{|}z{|{|}z|{{|}z|{{|}z|{|}|z|z||}|{|{|}}{{{|{}|}z}|z}|{z}|{zz}|{z{~}}~}~}~}~}~~~}~}~~}|~}~~}~{}~~}~}~~~}~}~|}|~}~}~{|~}~{}}{}|}{}{}}{{}{}}{}|z}}{}{{}}{}{}||{}{}{|}|{}{}|}|{}{|||||}|||||}}||||}}|{||}}||{|}}|||}|}|||||}{||||}}{|||{||{|||{|{||{{|{||{||z||{|{{{|{|{|||{|{|{z}|z|{|z}{||{{{{{||z{{{||{{{{||{{|z{|{{{{{|{{{{||{z{{{z}|{z{{z}{|{{z{{{||zz{{||{{{z||{{|z||{{{{{|{{{{||{{z{{z}|{zz{z}{|{zyyyzzyyyy{zzyyy{zzzzzzyz{yz{zz{yyyzzyyyyy|zyyyyz{zyyyyy{{zzz{{zzzy{|zzzz{|z{{z{zz{zz|{z{zzzz{zzz{{{zzzzyz{zzzzzzzzzzzz{zzzzz{zzz{zzzz{zz{zz{zzzzzzzzyy|yyzzyz{zyzzzzzzyzzzzz{zyzzz|zzzzz|{zz{z|{zz{{zzzzyy{zzzz{zzzzzzzzz{zzzz{z{z{z{z{{zz{z{{z{{z{{zzy{{zzzyy{zzzzy{zzzzzzzzzzzzz{zzzyz{zzzzzzzz{zz{zz{zzzzzzzzyy|zzzzyz{zzzyy{{zz{z{zzzz{z{z{z{z{{{z{z{{z{|z{{z{z{{z{zzz|zzz{z{{zzzzzzz{{zzz{|zzzz{|z{{z{zz{zz|{z{zzzz{zzz{{|zzzzyz{zzzzzzzzzzzzzz{zzz{z|zzzzz|{zz{z|{zz{{zzzzyy{zzzz{zzzzzzzzz{zzzzz{{z{z{z{{zz{z{{z{{z{{zzy{{zzzyy{zzzzy{zzzzzzzz{{zzzz{{zzz{{z{zz{{z{z{{{z{zzzz{zzzyy{zzzzz{zzzzzzzz{{zzzz{{{{z{{{{zz{{{{zz{z{{zzz{{zzzyy|zzzzyz{zzzz{{z{{z{zzz{z{z{z{{z{{{z{z{{z{|z{{z{z{{z{zzz|zzz{z{{zzzzzzz{{zzzz{|{zzz||{{z{z|{zz|{|{zz{{{zzz{{{zzzz{z{zzzzzzz{zzzzz{{{z{z{{{zz{z{{z{{z{{zzz{{zzzyy{zzzzy{zzzzzzzz{{zzzz{{zzzz{{{zz{{z{z{{{z{zzzz{zzzyy{zzzzz{zzzzzzzzz{zzzz{|zzzz{|zzzz|z{zz{{z{zzzzzzzz{{{zzzzyzzzzzzzzzz{zzzz{|{zzz{||zzz||{zz{{|{zz{{zzzz{{|zzzz{z{zzz{{z{{z{zzz{z{z{z{z{z|{{zz|{z{|z|{z{{{{z{zzz|zzz{{{{zzzzzzz{{zzzz{|{z{z{|{{{z{{{z{|{{{zzz{{zzz{{{zzzzy{{zzzzzzz{{zzzz{{zzzz{{{{zz{{{z{{{z{zzzz{zzzyy{zzzzz{zzzzzzzzz{zzzz{|zzzz{|zzzzz|zzz{{z{zzzzzzzz{{{zzzzyzzzzzzzzzzzyzzz{zzzyz{zzz{yzzz{z|zz{zzyzzzzzyy{zzzzyz{zzzzz{z{zzz{z{{{z{z{{|||z{{||z|{||z{{{|z{zyy|z{zz{{|zzz{{||{|{|{|{|{{z|{|{||{z|{||{{|||{|{{|{|{y{|{|{|{{{{|{zzzz{{zzzz{{{z{z{{|{{z{{|{z{{{{zz{{{zzzyy|zzzz{{{zzzzzzz{{zzzz{|{z{z{||{{z{||{zz{{zzz{{{zzz{{|zzzz{z{zzzzzzz{zzzzz{z{z{z{z|{{z{z|{zz|zz{z{{{zzzyy|zzzz{z{zzzzzzz{zzzzz{z{z{z{z|{{z{z|{zz{zz{y{{{zzzyy|zzzz{z{zzz{||{|{|{|{||{{|{||{|{{||{|{{|{{|{|{|{|{{{|z|{|z{{z|{z{{z{{zz{z{|zzzz{|z{{z{|z{z{|{z{z{zzz{z{{|zzz{z{{zzzz{{z{{zz{z{{zzzz{{z{{z{{z{z{|{z{z{zz{{zzz|zzz{z{{zzzz{{z{{zz{z{{zzzz{{z{{z{{z{z{|{z{z{zz{zzzz|zzzzz{{zzzz{{z{{zz{z{{zzzz{{z{{z{{z{z{|{z{z{zz{z{zz|zzz{y{{zzz{{{{{z{{yy{{yyyzz{z|{zz{z||zz{z||{{|z||{{z{|{{{z{z{{z{z{{|z{zzz|zzzzzzzz{zzzz{|{zzz{||z{zz||{zz|{|{zz{{zzzz{{{zzzz{zzzzzzzz{{zzzz{{{z{z{{{{{z{{{{zz|{{{zzzz{zzzyy{zzzzyzzzzzzzzzzzzzz{zzzzz{zzz{zzzz{zz|zz{zzzzzzzzyy{zyzzyzzzzyyyyzzyyyy{zzzyy{zzz{zzzz{yz|zz{yyyzzyyyyy{zyyyyzzyyzzyzzzyyzyzzzyyyzzz{zzzyz|y{zz|yzzz{yzyyyyyyyzz{zyyyyyyyyzyyxyyzz{yyxzzzzyyzyzy{{zyyyyzyyxyyyy{yyxzyz{yyzyzz{zyzzyz{zzzzy{zzzzzyzzz{{yzzy{zzzyz{zzzyzyzzzzyzyzzzz{yyzyy{{yyyzy{zzyz{yzy{z{zyzzzyyzyzyzyyyz{|zyyyyzzyzzyyzyzyz{yyzzz{{{zzz|y{{z|yzzz{yzyyyy{yyzz{z{yxyyyyyzzyyyzyzyzyzyz{zyzyz{y{zz{yzy{{yzyyyyyzyyz{zyzyzyzzz{yzzzz{yzzzz{yz{zz{yzz|{yzzy{zzzyz{zzzyzyzy{zyzzzzzz{{zzzz{{zyzz{{{zzy{{|z{{y|zz{z{zzz{zzzyzz{|zzyzyzzyzzzyzyzzz{yxzzzzzyzzzzy{{zzyzzzyyzyyyy{yyzzyz{yyyyz{zyzzz{zyzzz{zzzzy{zzzzzyzzz{{zzzy{zzzyz{zzzyzyzzzzyzyzzyzz{yyzy{{{yyzy{{{{z{y|y{{{|yzzz{yzyzyz{yyz{|z{yyyzzyzzzzyzyzzyzyzzz{zyzzz{y{zz{yzz{{yzyyyyyzyzz{zyzyzyzzz{zyzzzz{zzzz{yz{zz{yzz|{yzzy{zzzyz{zzzyzyzy{zyzyyyyyyzzyyyzyzzyzyz{zzzyz|y{zz|yzy{{yzyyyzyzyyz{yyzyzzzzz{{yzzzz{{{zz{{zzzy{{zz{{zzzz{zzzzz{zz{yzz{|z{yzzz{zyzzz{zyzzzz{z{zz{z{{{zyz|z{{z|zz{z{zyz{zz{yzyz{z{yzyzzyzz{zyzyz{{yzyz{{zyz{z{y{z{{yzz{{yzyzyzyzyz{|zyzyzzzzz{zyzzzz{zzzzz{z{zz{zzz|{zzzz{zzzzz{zzzyzzzy{zyzyzzyzz{yyzyz{{yyyz{{zyz{{zy{z{zyzzzyyzyzyzyyyz{|zyyyzyyzyzzyzyzyzz{yzyz{{{yz{|z{{{|zyyx{zyzzzz{yzyz{{{yzyyyyyyzzyyyzzz{zyzzz{zzzz{y{{z{yzy{{yzyyzz{zyyz{z{zy{{zzzz{{zzzzz{{zzzz{{z{{z{z{z{{z{zz{{{zzz{z{zzzzz{{zzzzzzzz{{yzzzz{{zzzz{{z{zz{zz|{{zzz{zzzzz{zzzyzz{|{zyzyzzyzz{yyzyz{{yyyz{{zzyz{{y{z{zyzzzyyzyzyzyyyz{|zyyyyzzyzzzyyzyzzzyyyzzzzzyzzzz{zzzyzzzyyzyyyzyyyzzyzyyyzyz{z{zz{z{z{z{z{z{{{{{z{{|{{{|{z{{{{z{{zz{z{yz{{{zz{{zz{{{{z{z{{{{{z{{{{{{{{{{{{|{{{z{{{{z{{{z{z{z{|{{z{zzzzz{{zzzzz{{{zzz{{{z{z{{{z{{{zz{{{zzz{zz{zzz{|z{zzzzzzz{zzzzzz{z{zzz{z{z{z{z{z{{zzz{{{zzz{zz{zzzz{z{zzzyzzz{zzzzzz{z{zzz{z{z{z{z{z{{yzy{{{zzz{zz{zzyz{z{zzz||z{z{{z|z|{{{{z|{||{{{{||z|{{|z|{|z|zz{|{{z|{|{{{z{{{{{{{{{{{{{{z{{{{{{{z{{{|{|{{|{{|{{{{{||zz{{{|{zz{zzzz{z{zzzz{{{zzz{{{{{z{{{|z|z{|zz{{zzzzz{zzyz{|{zzyyzzy{z{yyzy{{{zzy{{{{{z{{{|y|z{|yz{{zyyzz{zzyz{|{zyyyzzy{z{yyzy{{{zzy{{{{{z{{{|y|z{|yz{{zyzzz{zyyz{|{zyyyzzzzyyzyyyzyzzz{zyzzzz{zzzzz{{{{zz{{|z|{{|zy{y{zyz{yzzyzy{{zyzyzzyzz{yyzyz{{{yyz{{z{{z{{zy|{{zyzzzzyzyzzz{yyz{|{yyyzzyzzzzyzyzzzzzyzzz{zzzzz{y{zz{yzz{{yzyyyzyzyzz{zzyzzzzz{{yzzzz{{zzzz{{zzzz{{zz{{{zzz{zyzzz{zzzyzz{|zzzyzzyzzzyyzyzzzyyyzzzzzyzzzzy{zzzyzzzyyzyyyyyyyzzzzyyyyyzy{yyyyzy{{yzyzz{{zzy{{yyz{yyyzyyyyyy{yyyyy{y{zyyyyyzyyzyyyzyzz{yyyyzzyzyyzzy{zzzyyyyzxyyyyyyyxyy{zyyxyxy{xyyyy{yxyyyy{zyyxyy{zyzyyzyyz{yyyyyyyyyy{yyyxy{yyyyxyyyyyzzyyyzyz{zzyzzy{zzzzyyyzz{yyzyyyyyyyyyyyyzy{zyyyyyyzy{yyyzyyz{{yzyzy{{yzzzyy{zzyyyyzyyyyyx{yxyy{z{yzyyyyyyzyzyyyzzyzyzyzzzzyzzyzzzzxyy{zxzyyyyyzyyy{zyzzxxyyyyzxzyyyyzzzyzyyzzzyzzyzzzzxyy{zxzyyyyyzxyy{zyzyyyyzy{zyyzy{{{yyzz{{yzy{{zy{{yzyzyyzyyy{yyyyy{y{zyyxyyyzyy{yyzyzzy{yxyzzzzyzzyyz{zyyyyyyxxyyxy{xxyyyy{xyyz{yyyyyy{zyyyy{zzzyyy{zzzyyzyyz{zyyyyyyyyy{yyyyy{yyzyyyyyyzyz{yyyzz{{{yzzy{{{zzyzyy{{zyzyyzyyyyyy{yyzy{z{yzyyyzyyyzyzzyzzyzzzzzzzzzzzyzzzzyyy{zxzyyyyyzxyy{zyzxyyyyy{yxyyyy{zyxyy{yzzy{yyy{{yyyyyyyyyy{yzyxy{yyzyxyyyyyyy{yyyyyyy{yyyyyz{yy{yxz{{yyyxyyyyyyyz{yyyyyz{yzyyyyyyzzyzyyyy{zyzyyzzzyzzy{zzzxyy{zxzyyyyyzxyy{zyzyyyyzy{{yyyzy{{y{zz{{zzx{{yyy{zyyzyyyyyy{yy{xy{y{y{yyz{yyyyyy{{yyyyy{z{{yy{z{{yyzzyz{yzyyyyzyyy{yy{yy{y{z{yzyyyzyzyzyzzyz{zyzzz{zzzzzzyzz{zyzy{zyzyyyyyzyzy{zyzxyyyzy{yyyyzy{zzyyzy{zzy{zyy{{zyyyyyyyyy{yzyxy{yyzyxyyyyyyy{yyyyyyz{{yyyyz{yy{zy{{{zyyyyzyyxyyz{yyyy{z{yzyyzyyy{zyzyyyzz{zyzzzzzzzzzz{zzyyy{zyzyyzz{zxyz{z{z{{zyyzzz{yzyzzz{zzyzzz{zzzzzzyz{zzyyz{zyzz{zzyzy{z{zyzyyyyzy{yyyyzy{{zyyzz{{zzz{yy{{{yyzyyyyyy{yzyxy{y{zyyyyyyzyzyyyyzyz{yyyzzz{zzzz{yzz{yyzyyyyyyyxyyxyzy{yyyzyyyyy{{zyzyy{y{{zyz{y{{z{zz{{zzyyy{zyzy{yy{zy{y{z{zz{{y{y{{z{z{y{y{{z{z{y{{z{{zy{{z{{y{z{zy{yz{z{{y{z{z{z{{y{y{{z{z{y{{z{z{z{{z{z{{zy{{z{{y{z{zy{yz{z{{y{z{zzyyyzy{{zyzzy{{z{zzz{{z{z{{zyz{{yzy{zyzy{yy{zy{y{z{zzyyyzy{{zyzzy{zz{zzz{zz{z{zzyz{zyyy{zyzy{yy{zy{y{z{zyzzzzzzzzzzzzz{{zzzzz{{zzz{zz{z{zzzzzzzzzyzzzzzy{zzyzzz{z{z{{z{z{z{{{{z{z{{{{z{{{{{{{zz{{zzyz{{{zzzy{{{z{{{{{{{z{{{{{{{{z{{{{{{{{{{{{{{{{{{{{{{z{{{zy{{{{zzyzzzzzzzzzzzzzz{{zzzzz{{zzz{zy{z{zzzyzzzyzzzzzyzz{zzzyzzyzyzzyzyzyz{{zyzzz{{zzz{zy{z{zzzyyyzyzyzzyzzy{zzyyyyyyyyyyzxxyyyyzzxzyyyzzzzyzzzzzzzzzyzzzzxyy{zxzyxxyyzxy{zyzyyyyyy{zyyyyy{y{zyyy{y{zy{{zy{{{zyyyyzyyy{yzyyy{{zyyyyyyzyz{yyyzyz{z{yzzz{z{zz{yy{{{yyzyyyyyyyyy{xyzy{{xzyyyzyyyzyzzyzzzyzzzzzzzzzzzyzzzzyyy{zxzyyyyyzxyy{zzyyyyzy{yyyyzy{{yyyzz{{yzz{{yyy{{yyzyyxyyy{yyyxy{y{yyyyyzyzzyyyzyzyzyzyzyzzzyzzzxzzzzyzxz{yyyzyyyyyzyz{yyyyyyyyzyyzyyy{yzyzy{{zzzy{{yzz{yyyyzyyyxy{xyyyy{z{yy{yyyyxz{yyyyxyz{yyxyyyzyyzyyyy{zyyyyyyyyxyyy{yxyyyy{xyxy{yyyyyyyyyyyyy{yzxyy{yyyzyzzyyz{yyxxyyyyyx{yxyyy{yyxyyyyyyyzzyzyyyzzzyyyy{zzyyzyyzzz{yyxzyyyxyyyyyyyyz{yy{yyyyy{{yzyyyy{{zzyzyy{{yzzyyy{zyyyyyyzyyyyy{yyyz{y{{yyyyyx{yyyyxyy{yyxyzyy{yzzyyy{{yyyyyyyyxyzy{yxyzyy{yyyyzyzzyzzyzyzzzzzyzzzzzzzyzzzzyzxz{yyxzyyyyyzyz{yyzyyyyyy{zzyyy{{yzzy{{zyzz{{yz{{yyyyzyyzyy{yyyyy{z{yz{yyyyyyz{yyyyzz{yyyzzyzyyzzyyz{zyyyyyyyyyyyy{yyyzyy{yyz{yyyyyyyzzyzyy{zzyxy{yyzzyzzyyz{zyyxyyyyxy{yxyyy{yyyy{yyyyyy{{yzyyz{{zzyy{z{{yzyyzy{{yyyzyyzyyyyy{yyyz{y{yyyxzxzyyyyzxzyyzyzzzzzyzzzxzzzzyzxz{yyxzyyyyyzyz{yy{yyyyyxz{yzyyyy{yzxyzyz{yzzyyz{{yyyyyyyyxyzy{yxyzyy{zyyyzyz{zyzzyzy{zzzyzzzzzzzyz{zzyzyz{yzyzyyyyyzyz{yz{yyyyyyz{yyyyy{z{yy{{zzyy{{yzy{zyyyzyyyyy{yy{yy{z{y{yz{{yyyyyy{{yzyyy{{{zz{yy{{yzzyyz{yyyyyyyzyy{yy{yy{z{y{yyyyzyzyyyyzyzzyyzyz{zzyzzzxzzz{yzxz{yyxzyyyyyzyz{yyyyyxyxyyyyyyxy{yyyyy{y{yy{zxy{{zxyxyyxyxy{zyyyy{zyyyzyyyyyy{zyzyyyy{zzzyyy{zzzzyy{zzyyyyyyzyxyyxyyxyy{yz{yyyyyy{{yzyyyy{{zzyyzy{zzzyy{{{yyyyyyzyxyzy{yxyz{y{{zzyzyzz{zzzyzyz{zzzyzzzzzzyzz{zyzyz{zyyzyzz{zzyz{z{{{yyzyzyzzyyyzyz{zzzyz{zzzzzzyzz{zzzyz{yyxz{zzyyz{z{zyyyyyyyyzyyyyyy{zyyyy{{z{yy{yz{{{yyyzyyyyy{zyyxy{z{yy{yyyzyzz{yzzyz{z{zzz{zzz{z{zyz{zyzyz{yyyz{yy{yz{z{y{{yyyzyz{{yzzyz{{{zzz{zz{{z{zy{{zyzyz{yzyz{yy{yz{z{y{{yy{z{z{{y{z{z{{{z{z{zz{{z{z{z{{yz{z{y{{z{zy{yz{z{y{{{yy{z{zy{y{z{z{y{z{z{{z{{z{{{z{{yz{z{y{{z{zy{yz{z{y{{yyyzyzy{yyzyz{y{zyz{{zz{z{{yzz{{zyz{yyyz{yy{yz{z{y{zyyzyzy{zyzyzyz{zzzyz{z{zzz{zz{z{yzyyyzzyzzyzyyzz{yzzzzzzzz{zzzzzzz{zzzzz{z{zzz{zz{z{yzzzyzyzzzzzyzzz{zz{{{{{{{{{{{{{{z{{{{{z{{{{{{{{{{{{{{{{{{{yz{{{zyzz{{{z{{z{zz{z{z{z{{{z{z{{{{{z{{{z{{{{{zz{{zzz{{{zyz{{{yzzzzzzzy{zzzzzzz{zzzzz{z{zzz{zz{z{zzzzzzzzzzyzzyzz{yzxyyyyyyyy{yyyyyy{{yzyyyy{{zzyyyy{{zzyyy{{yyyyxyyzyxyyy{yyy{y{yyyyzyzzzyzzyzyzzzzzyzzzzzzzyzzzzyzxz{yyxzyyyyyzz{yyzyyyyyy{zyzyyy{{zzzy{zy{zz{zyy{{{yyyxyyzyx{yyyyy{{yz{yyyyyyy{yyyyyzy{yyyz{z{{yz{yz{{{yyyzyyyyyyzy{yyyz{{yyyxzxzzyyyzxzzzzzyzzzzzzzzzxzzzzyzxz{yyxzyyxxyzyz{y{zyzyzy{zzyzyzy{zzyzzzy{zz{yzzy{|zyzzz{yzyzzz{zyz{yzzyyyyyzyzyyyz{zyzyzyy{zyzyzzy{zz{yzy{{yyyzyyyyyzyz{z{zzyzy{{yyzyyz{yzyyyyzy{zyzzyz{z{yzyyzzzyyyzyzyyyz|{z{zzyzz{zyyzyzz{yzyzzzzyzzzyzzy{{zyzzz{yzyzzz{zyzzzzyyyz{zyyyyyzzyyxyyzzzxyy{yzyzyyzyyyz{{yxxyzyxyy{yxyyy{zyzzzyzyzzzzyzyy{zzzyyyy|zyzzzzy|zz{yzy{zzzyyyyyyxyyz{zz{zyzyz{zzyzyzy{zzyzzzy{zz{yzzy{|zyzzz{yzyzzz{zyz{yzzzyzyzyzzyzyz{zzzyzyy{zzzyzzy{zz{yzy{{zzyzyyyyyzyz{z{zyzyzy{{yzyy{{yzyy{y|y{z{{zy|{{{yzy{zzzyy{zyzyy{z|{z{zyzyzz{zyzyzz{yzyzzzzyzzzyzzz{{zyzzz{yzyzzz{zyzzzzyyz{zzyzyzyzzzyzyzzzzxy{yzzzzyzzyzz{{yzyyzzzxy{yxyxy{zyz{{zzzzz{{zzzz{{{zzyzz|{{yzzzz|y{{zzz{z{zzyzzz{zyzz|{{zyzyzy{{zyzyy{{zyyyyz{{zyzzyz{z{yzyyzzzyyyzyzyyyz|{z{zzzzzz{zzzzyz{zzyzzzz{zz{zzzz{|zzzzz{zzyzzz{zyz{yz{zyzyzy{{zyzyz{{zyzyy{z{zyzzy{{z{yzy{{zzyzyzyzyzyz|{z{zzzyzz{zzyzy{z{zy{z|zyz{{zz|z{{zyz{z{yzy{zz{zy{z{zzz{{{zzzzz{{zzzzyz{{zz{zz{{yzzzzzz{{zzzzz{zzy{zz{zy{z|{zyyyyyyzyzyyyz{zyzyzy|zyzzzzy|zz{yzy{{yyyzyzyyyzyy{zzzyzyzyzzzyzyyzzzzyyyzzzzyzzyzzz{yzyyzzzxyyzyyxyyzxz{zyzyzy{{zyzyyz{{zyyyy{{zyzzyz{z{yzyyzzzyyyzxzyyyz|{{{zzzzz{{zzzzyz{{zzyzzz{zz{zzz{{|zzzzz{zzyzzz{zyz{|{z{zzzzzz{{zzzz{z{{zzzz{z{z{zz{z{{zzz{{{zzzz{z{zzz{{z{{zyyyyyyzzzyyyz{zzzyz{y{zzzzzy{z{{yzy{{yyyz{zzyyz{z{zzzzyzyzzzyzyzy{{zyzy{z|{zy{yz|{{{zyz{xyyzy{zzzzy{{{zz{zyzyzz{zzyzz{z{zzz{z{z{z{zyzy{{zzz{{{yzz{zz{zz{z{zz{zzzzzz{zzzzz{z{zzz{z{z{z{zzzz{{zzz{{{zzz{zz{zz{z{z{{zzzzz{{zzzzz{{{zzz{z{{{z{zzz{{{zzz{{{zzz{zz{zz{z|{{{{z{z{{{{{z{z{{{{{z{{{{{{{{z{{{|{z{{{{z{z{z{{{z{{|{{z{{y{yzz{z{y{z{{{z{z{{|{{z{{z{|{{{z{{{{y{z{zz{zz{{{z{zyzyzy{{{yzyy{{{{yzzy|{{{z{zy|{z|zyz{{zyyz{zzyyz{|{{zyzyzy{{{yzyy{{{{yzzy|{{{z{zy|{z|yyz{{zyzz{zzyyz{|{{zzzzzz{{{zzzz{{{{zzzz|{{{z{zz|{z|zzz{{zyzz{zzyzz{|{{{{{{{{{{{{{{{{{{{{{z{|{{{z{{{|{{|{{{{|{{zz||{{zz{|{{zz|z|z{{|z|z{||{|z{{z||{{{{|z|{{|z|z|{|z{{|{zz{{{|{yyyzyyzzzzyzzyzyzyzzzyzyyzzzzyyyyzzzzyzzyzzz{yzxyzzzxyyyxyyyzyz{{zzzzz{{zzzzyz{{zzyzzz{{zzzzzz{{{zzzyz{zzyzzz{zzz|{zzyzyzyzzzyzyz{zzzyzzy{zzzzzzy{zz{yzy{{zzyzyzyyyzz{z{zyzyzy{{zyzyyz{{zyy{yz{{z{{zyz{{|yzyyzzzyy{zzzyy{|{z{zyzyzz{zzyzy{{{zzyzz|{{zz{yz|{{|zyz{x{yzyzzy{zyz{{zzzzz{z{zzzz{{z{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{yzzzzzzz{zzzzzzz{zzzz{zzzz{zz{zz{zzzzzzyzzyy|yyzyz{zy{zzzzz|{yzzz{z|{zzzz{zz{z{zz{z{|zzzz{zyzzzz{{{zzz{zyzz{{z{z{z{zz{{z{zzzz{{z{z{{z{{y|{z{z{{z{zzz|zyzzz{{zyyy{{zyyyyzz{yyxyzzz{yyyy{zyzzzyy{zz{zyyyzzyyyyz|yyyyz{zy{zzzzz{{zzzz{z{{zzzz{z{{zzzz{z{{{zzz{zyzzzz{yyzzzz{yzzzzzz{{zzzz{{z{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{yzzzzzz{zzzzzz|z{zzzz{|zzzzzz{|z{zzzzz{{zzzz{yyzzzzz{{zzzzzz|{zzz{z|{zzzz{zz{z{zz{z{|zzzz{zyzzzz|{{zzz{zyzz{zzz{z{zzz{{z{zzzz{{z{z{{z{{z|{z{z{{z{zzz|zzzzz{{zyy{{zzzzzzzz{zzzzzz{zyzz{zzzzzzz{zz{zzzzzzyzzzz|yyzzz{zy{zzzzzz|{zzzzz|{zzzz{z|zzzzz{z{{zzzzzzyzzyz{{{zyzzzy{zzzzzz{{zzzz{{{zzzz{z{{zzzz{z{{{zzz{zyzzzz{yyzzzz{yzzzzzz{{{zzzz{{{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{y{zzzzz{|{zzzz{||zzzz{|z{z{zz{|{|zzzz{{{zzzz{{{zzz{z{zz{z{z{z{z{zz{{z{zzz{{z{z{{z{{z|{z{z{{z{zzz|zzzzz{{zz{{{zzzzz{{{zzzz{{{{zzz{{{{zzzz{{z{zzzz{{yzzzz|yyzzz{zyzzzzzzzz{zzzyzzz{zyz{zzzy{zz{zz|zzzzzzyzzzz{yyzzz{zy{zzzzzz|{zzzzzz|{zzzzz|zzzzz{z{{zzzzzzyzzzz{{{zzzzzy{zzzzzz{{zzzz{{{{zzzz{{{zzzz{z{{{zzz{zyzzzz{yyzzzz{y{zzzzz{|{zzzz{{|{zzzz{{{z{zz{{{|{zzz{{yzzzz{{{zzz{{yzz{z{z{z{z{zz{|z{zzzz{|zz{{z{|z|{z{z{{{{zzz|zzzzz{{{{{{zzzzz{|{zzzzz||{zzzz{||zzzz{|{{zzzzz{{zzzz|{{zzz{z{zzzzzz{z{zzzz{|z{zzzz{|z{z{y{zz{zzzz{{{zzzz|yyzzz{z{zzzzzz{z{zzzz{|z{zzzz{|z{z{z{zz|zzzz{{{zzzz|yyzzz{z{{zzzzz{|{zzzz{||{zzzz{||{z{zzz{{zzzz{{{zzzz|{{zzz{z{{zzzzz{{{zzzz{|{{zzzz{|{{z{zz{{{{zzz{{{zzzz|yyzzz{{{{{|{|{{{|{|{|||{|{|z{||{|z{|{|||{{|{|{{|{|{|{y{|{{{{{zz{zzz{{{z{zz||{{z{zz||{{z|{z||{|z{z|{{zz{z|yyzzz|{{{z{z{zz{{z{zz{z{{zzzz{z{{z{{z{z{|{{z{zz{zzz|zzzzz{{y{z{z{zz{{z{zz{z{{zzzz{z{{z{{z{z{|{zz{zzzzzz|zzzzz{{z{z{z{zz{{z{zz{z{{zzzz{z{{z{{z{z{|{z{{zz{zzz|zzzzz{{z{z{z{zz|{z{zz{z|{zzzz{z|{z{{z{z{|{z{zzz{zzz|{{zzz{{z{{|{|{{||{|{||{||{|{{|{||{{|{|{{|{{|{|{|{|z|{{{|z{{yyyy{{yy{{z{{{{{zyyyyyzz{yyyyzzz{yyzy{zzzz{yy{zz|zyyyzzyyyyz{yyyyzzyzzzzzzzz{zzzzzzz{zzzz{zzzz{zz{zz|zzzzzzyzzyz{yyzzzzy{zzzzz{{{zzzz{{{{zzzz{{{{z{zz{{{|zzzz{zyzzzz{yyzzzzy{zzzzz{|{zzzzz||{zzzz{||zz{zz{|{|zzzzz{{zzzz{{{zzzz{{z{zzzz||z{zz{{||z{zz{{||z|{z{{{|{z{z{{yzz{z|{{zzz|y{|{|{{||{|{||{||{|{{|{||{{|{|{||{{|{|{{~|{|{|{|{|{{{~~||{|{{||{|{||{||{|{{|{||y||{|{|{{{|{|{|||{|{|}y{|{|{}{|{{{{{||{{{{{{||{{{{{{||z|{{{{|{{{{{{{||{{{{|}z{{{|{}z}{}}{{}}{z{}|{}}{}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}~||||}~|||{|}}~|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~z{|{||{}{}z|}z}z}{{}}{}{{}{}}z|}{}{}}{{}{}{||}{}{|}z{}{|{}z~{|{|{{|{|{||{||{|{{|{||{||{|{||{{|{|{|~|{|{|}|{|{|{~~||||||}||||||}|||||||}|||||||}|{{||||}|}|||||}{||||{}z|{|{|{{|||{||{||{|{{|{||z||{|{|{{{|{|{|||{|{|}z{|{|{}{}{}{}{{}}{{}|{}}{}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}~|||||}~||||}}~|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~{|{||{{{{{{||{{{z{|{{z{{{{||z|{{{{|{{{{{{{||{{z{|}z{z{|{}z|{}{}{{|}{}{}{}}z}{{}{}}z|}{}{}}{{}{}{||}{}{|}z{}{|{}z~{|{|{{~|{|{||{|{|{{|{||{||{|{||{{|{|{|~|{|{|}|{|{|{~~||||||}|||||||}||||||}|||||||}|{{||||}|}|||||}{||||{}z}{}{}{{}}{}{}|{}}}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}~|||||}~|||||}}~||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~|{||{|{|{{||{|{||{||{|{zz|{y||{|{|{{{|{|{|||{|{|}z{|{|{}z|{|{|{{||{|{||{||{|{{z|{z||{|{|{{{|{|{|||{|{|}z{|{|{}z|{}{}{{|}{}{}|{}}{}{{}}}z|}{}{}}{{}{}{||}{}{|}z{}{|{}z~{|{|{{~|{|{||{~|{|{{|{|{||{|{||{{|{|{|~|{|{|}|{|{|{~~}|}|}|}}}|}|}|}}}|}||}}}||}|}}}}{|}|}}|}}|}||}||}||{}}~|||||}~|||||}}~|||||}}~||||}}~|}|||}}~~||||}}}||||}~~{}||||||}|||||||}|||||||}|||{zzz|{{||||}{}|||||}{||||{}{||||||}|||||||}|||||||}|||{|zz|{{||||}|}|||||}{||||{}{||||||}|||||||}|||||||}||||||{|{{||||}|}|||||}{||||{}{||}|}|}|}|}|}|}}}|}||}}}}||}|}}}{|}|}}|}}|}||}{|}||{}{~|||||}~||||||}~||||||}~||||||}|{||||}|~|||||}|||||{~~~}|}|}}~|}|}|}}~|}|}}}}~|}||}}}~}}|}}}~~|}|}}}}}|}|}~~}}{|{|{z}|{|{||z}|{|{{|z}|{{|{|z}|{|z|z|}|{|{|}|{|{{{}}}{|{|{{}|{|{||{}|{|{{|{}|{||{|{}|{{{|{|}|{|{|}|{|{|{}}}{|{|{{}|{|{||{}|{|{{|{}|{||{|z}|{{||{|}|{|{|}|{|{|{}}}{|{|{{}|{|{||{}|{|{{|{}|{||{|{}|{{|{{|}|{|{|}|{|{|{}}}{}{}{{}}{}{}|{}}{}{{}{}}{|}{}{}}{{}{}|}}{}{|}|{}{|{}}~|}|}|}~}|}|}}}~}|}||}}~}||}|}}~}||}|}}~}|}|}}}|}|||~~{z{|}yz{|}y{|}z|}z}|}|{{{{z{||{{yz{{||zz{{{{||z|{{{{|{{{{y{{||{yz{|}zz{|{}z|{{{{{{||{{{z{{||{z{{{{|{z|{{{{|{{{{{z{||{{z{|}z{{|{}z|{|{|{{||{|{||{||{|{{|{||z||{|{|{{{|{|{|||{|z|}z{||{}z}|||||}}||||||}}||||||}}||{|||}}|{||||}|}||||{}||||{}}|{}{}{{|}{}{}|{}}{}{{}{}}z|}{}{}}{{}{}{||}{}{|}|{}{|}|~~}~}~~~}~}~}|~~}~}~~}~~}~|}~}~~}{~}~}~~~}~}~|}|~}~|{~{{{|}z|}|}|}|}|}|~|}|}|~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}||{|||{|{{||||{|{|||{||{|||||||||{}||||{|{|||{|{z}|{|{|{{{||{{{{{||{{{|{||{{||||{|||||{{}|||{{{y||{{{{z}|{{{{}||}}|}|}|}~}|}|}~|{}|}~|}||}~|}|}|~|}|}z~|}|}|{}|{}|}{||{||{|{||z{|{||{|{{||{|{|||{|z|}|z|{|{z|{z|z|~}|{{|{{{|}z|}}|}|}}|}|~|}|}|~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}||}|~|}}|~}}|{|~}|{}|~}|}|||}|}|}~}|}|}z||}|}|z}|{}|}|{{|||{|{||||{|{|||{||{|||||||||{}||||{|{|||{|{z}|{|{|}||}|}|}|}}~}|}|}~|{}|}~|}||}~|}|}|~|}|}z~|}|}|{}|{}|}{||{|~|{|{||{|{||||{{||||{|||||{|}|||{|{z||{|{|~}|{{|{{||{|||{|{||{|{||||{{||||{|||||{|}|||{|{~||{|{|z}|{{|{{|}z|}}|}|{|}|}|~||}|~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}||}|~|}|}|~}}||~}|{}|~}|}|||}|}|}~}|}|}z||}|}|z}|{}|}}||}|}|}|}|}~}|}}~|{}|}~|}||}~|}|}|~|}|}{~|}|}|{}|{}|}{||{|~|{|{|~|{|{|||{{||||{|||||{|}|||{|{z||{|{|~}|{{|{{||{|||{|{||~{|{|||{{||||{|||||{|}|||{|{~||{|{|z}|{{|{}||}|~|}|}|~}}|}|~}{}|~}|}||~}|}|}~}|}|}{||}|}|z}|{}|}|}{|}}|}|}|}|}|~|}|}|~}}}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}||}|~|}|}|~~}|}|~~|{}~~|}||}~|}|}~~|}|}z~|}|}|{}|{}|}|||||~|||||~|||||~||{||||||||||||}||||||z||||||~}|{|||{||{|||{|{||~{|{||~|{{|||{|||||{|}|||{|{~||{|{|z}|{{|{}||}|~|}|}|~}}|}|~}|{}|~}}||~}|}|}~}|}|}{||}|}|z}|{}|}{{{{||{{{{|||{{{||||{{||{{|||||{{}|||{{{z||{{{{y}|{{{{}z}}}}}}}}}}}}~}}}}}~}{}}}~}}|}~}}}~|~}}}}~~}}}}}|~|}}}}}||}|~|}|}|~}}|}|~}|{}|~}|}||}|}|}~}|}|}z||}|}|~}|{}|}||||||||||||~|||||~|{|||~||||||||}||||||~||||||z}|{|||}||}|~|}|}|~}}|}|~}|{}|~}|}||~}}|}~}|}|}{||}|}|{}|{}|}|{{|||{|{|||||{|||||{|||||||||{{{}||||{|z|||{|{{}|{|{||{{|||{|{|||||{|||||{|||||||||{{{}||||{|z|||{|{{}|{|{|}}~~}~~~}~}~~~}~}~~~~~}~~~~}|~~~~}~~~~}~}~~~}~}~~~|~}~}}||}|}|}|}|}~}|}|}~|{}|}~|}||}~|}|}||}|}~~|}|}|z}|{}|}}||}|~|}|}|~~}|}|~~|{}|~~|}||~~|}|}~}}|}{~|}|}|z}|{}|}}||}|}|}|}|}~}|}|}~|{}|}~|}||}~|}|}||||}z~|}|}|z}|{}|}}||}|}|}|}|}~}|}|}~|{}|}~|}||}~|}|}|||{}z~|}|}|z}|{}|}}||}|}|}|}|}~}|}|}~|{}|}~|}||}~|}|}|z|{|z~|}|}|y}|{}|}}~~}~~~}~}~~~}~}~~~~~}~~~~}|~~~~}~~~~~}~}~~}~}~~~|~}~}}}}}}~}}}}}~}}}}}~}}}}}~}}}|}~}}}}~~}}}}}||}}}}~~|{}}}|}}|}~}|}|}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}}|}~~|}|}||}}|}~}|}|}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}||}~~|}|{||}}|}~}|}|}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}|}}~~|}|}||}}|}~}|}|}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}|}|~~|}|}|}z}{}|z}|{z}|{{z}|{{{{{{{{|zy{{{{|{zy{{|||{{{||{{|{||{{}}||y{{z{zzy{z|{|{zz{z{|}y||||}||||z|}||||z}|||||z|||{|}||||}}{||||{{||||{}{{|||{|||{||{|{z{|{|{|z|||{|{||{{|{||{|}}|{{|{z{y|{|z|{|{|{{{{{{|z{{{{{|{z{{{|||{{{||{{|{|{{{}}||{{{z{zz{{z|{|{z{{}}{}|}{}{}{}{}{}{}}|{}{}}{{|{}}z}}}|}{}{z}z}z}z|{|{}z{||{|{|{|{|{|{|{|{|||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{{{{{{{|{{{{{|{z{{{|||{z{||{{|{||{{}}|{{{{z{zz{{z|{|{z{z{|}y{||{|{}|{{|{}{|{|{}||{|{}|{{|{}|{|}}||{|{||{|{|}}{|{|{|||||}|||||}||||z}|||||z|||{|}||||}}|||||{{||||{}{{|||{||{|{||{|{{|{|{|z|||{|{||{{|{||{|}}|{{|{z{z|{|z|{|{|{{}}{}{|}{}{}}{}{}{}}|{}{}}{{|{}}{}}}|}z}{z}z}{}z|{|{}{{||{|{~|{|{|{{|{|{|||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{{||{|{||{|{|{||{|{|||z|{||{{|{||{|}}||{|{z{z|{|z|{|{|{{|}z{||{|{}|{|{|{}{||{}||{|z}|{{|{}|{|}}||{|{||{|{|}}{|{|{|||||}||||||}||||}|||||{|||{|}||||}}|||||{{||||{}{||||{}}{}{|}{}{}{}{}{}}}|{}{}}{{|{}}{}}}|}{}{z}z}{}z|{|{}{{||{|{~|{|{|{~{|{|{||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{|||||}||||||}|||||}||||}|||{|}||||}}|||||{{||||z}{|||||||||}}|||||}}||||}}|||}}||{{}}|||}}|||||||||||}}{{||||}z{||{|{}|{|{|{}{|{|{}||{{}|{{|{}|{|}}||{|{||{|{|}}{|{|{|}}|}}|}|}|}}}|}|}}}}||}}}|{|}}}|}}}|}|}|{}|}|}{}{||}|{||{|{~|{|{|{~{|{|{~||{|{|{{|{||{|~}||{|{||{|{|~~{|{|{|||||}||||||}|||||}|||||}||{|}||||}}|||||{{||||z}{||||{||{|{||{|{|{|{|{|{|||{|{||{|{||{|}}||{|{y{y|{|{|{|{|{{}}{}{|}{}{}{}{}{}{}}|{}{}}{|{}}{}}}|}{}{|}z}{}||{|{}{}|{}}{}{}}{}{}{}{}{}{}}|{}{}}{{|}}{}}}|}{}{|}{}{}}}{|{}{|||||}~|||||}~||||}~||||}~||{|}|||~}|||||||||||~~{|||||||||}||||||}|||||}|||||}|||{|}|||}}|||||{{||||z}{||||{||{|{||{|{|{|{|{|{|||{|{||{{|{|||}}||{|{z{z|{|{|{|{|{{{{{{{|{{{{{{|{{{{{|||{{{||{{|{||{}}||{{{z{z{{{z|{|{{{~}}~}~~}~}~}~~~}~}~~}|~}~~}~{|~~}~}}~}~}~|}~}~}~~{|~}~}|}}|}}~}|}|}}~|}|}}~}||}}~}||}}~}|}~}}|}|}}|}|}~~|||}||}}|}}}}|}|}}}|}|}}}}||}}}}|{|}}}|}}}||}||}|}|}}}{||}|{}}{}{}}{}{}{}{}{}{}}|{}{}}{{|{}}{}}}||}{|}{}{}}}{|{}{{}}{}{}}{}{}{}{}{}{}}|{}{}}{{|{}}{}}}||{{|}{}{}}}{|{}{{}}{}{}}{}{}{}{}{}{}}|{}{}}{{|{}}{}}}||{z|}{}{}}}{|{}{}||}}}~|}|}}}~}|}}}~||}}}~|}}}}~|}|~}~|}|}}}|}|~~}|}|}||||}}~||||}}~|||}}~|||}}~||}}}~|||~}~||||}||||~~}||||||||}}~||||}}~|||}}~|||}}~||}}}~|||~}~||||}|{||~~}||||||||}}~||||}}~|||}}~|||}}~||}}}~|||~}~||||}|{||~~}||||||||}}~||||}}~|||}}~|||}}~||}}}~|||~}~||||}|{|{~~}||||}}{|{||{|{|{|{z{{z{z{{z{z{z{|{{z{z{|{|{z{|{|}|{|{{|}|y{zzzy{z{{|z}|{zz{z{z{{zyz{z{|{{zzz{|{{{z{|{|||{|{{|}|{yzzzzzzy{zz{{{zz{z{zz{z{z{{zzz{zz{z{{z{zz{zz|zz{z{|}zz{zzzz{z{zzz{z{z{{{||}{{{{z|}z{{{|z}{{{||z{{|||}z{{|}z{{{zzy{{{}z|{{{{{{{{|{{{{{{z{|{{{{|z|{{{|{{{|||{|{{|}|z{{|zzy{{{zz{{{{z{{z{{{z{z{z{||{z{z{|}|{z{|{|}|{|z{|}|{{zzzz{z{{|z}|{z{{{{{z{{{{||{z{{{||{}{{{|{}{|||{}{y|}|{{{zz{y{y{zz{{{{{{{{{|{{{{{|{|{{{{|{|{|{|{|{|}|{|{{|}|{{{|zz{{{{|z}|{{z{{z{z{{{z{z{|{{z{z{|{{{z{|{|||{z{{|}|z{zzzzzz{{zz{{{zz{|}zz{{z{zz{z{{{zzz{zz{z{{z{zz{zz|zz{z{|}zz{zzzz{z{zzz{z{z{{{{||}{{{{|}z{{{|z}{{{||z{{|||}{{{|}|{{{zzz{{{}z|{{{{{{{{{|{{{{{{{||{{{|{|}|{|{|{|}|{|{{|}|z{{|zz{{{{|z}|{{{{{{{z{{{{{|||{{{||{}{{{|{}{|||{}{{|}|{y{zz{y{{{zz{{{{z{{z{z{{z{z{{{{{z{{{|{{{{{|z~||{|{{~}|{{zzzz{z{{~~{{{z{{{{||}{{{{||}|{{||}|{|||}|{|}|}|{{|}|{{{zzy{{{}||}|{{{{{{{|{{{{{{|{|{{{|{|{{z|{|{|||{|{{|}|{{{|zzz{{{zz{{{{{|}z{{{{{z{{{{{{{{|{{{{{|{{{{z|{|||{|{{|}|{{{z{z{{{{{z{{{{{{{{||}{{{{||}||{{|}|}|||{|{|}|}|{{|}|{{{zzz{{{}||}|{{{{{{{|{{{{{||{|{{{||}{{{|{}{|||{}{{|}|{{{|z{z{{{zz{{{{z{{z{z{{z{z{{{~{{z{{{{{{{{|{~||{|z{~}|{{zzzz{z{{~~{{{z{{{{{z{{{{{||{||{{||{}|{|{}{{}|{}{{|}|{{{zz{{{{{|z}|{{{{{{||}{{{{||}z{{{||}z{||}z{||z}z{{|}|{{{zzz{{{}z|{{{{|}zz{{z{z{{z{z{{{||{z{{{|}|{{|{|}|{|{{|}|z{zzzz{z{{|z}|{z{{{{||}{{{{||}|{{{||}}{{||}{|||}}{{|}|{{{zz{{{{}z|{{{{{{{{{|{{{{{{|{~{{{{|{~{{{|{{~||{|{{~}|z{{|zz{{{{~~{{{{{{{{||}{{{{||}|{{{||}|{{||}||||}|{{|}|{{{zzy{{{}y|{{{{z{{z{z{{z{z{z{~|{z{z{~}|{z{~z}|{~z{|}~z{zzzz{z{{~~}|{z{{{{zz{{{{{||{||{{||{}{|{|{}{{|{}{{|}|{{{z||z{{{|z{|{{}z{{{{{|{{{{{||{|{{{||{}{{{|{}{|||}{{|}|{{{||{{{{{z|{{{{{{{{||}{{{{||}~{{{||}~{{||}~{~||}{{~}|{{{zzz{{{}~~{{{{{{{{||}{{{{||}|{{{||}|{{||}|{|||}|{|}|{{{zzz{{{}z|{{{{{{{{{|{{{{{{|{|{{{{|{|{{{|{|{|||{|{|}|{{{|zzz{{{zz{{{{{~~{~z{~{~{~|~~|~{~|~~}|~|~~{~}|~~{~}~{~{zz{~{~{~~}|~{}{{{{~|}{{{{~|}~{{{~|}~{{~|}~{~~|}~{{~}{{{{z{{{{}~~{{{{{{{{||}{{{{||}|{{{||}}{{||}}{|||}}{{|}|{{|z{{{{}y|{{{{{{{{{|{{{{{||{|{{{||{}{{{|{}{|||{}{{|}|{{|z{{{{{zz{{{{{{{{{z{{{{{||{|{{{||{}{{{|{}{|||{}{{|}|{{zz{{{{{yz{{{{|}}|}|}}|}|}|}~|}|}|}~}|}|}~|~}|}~|}~}~|}|||}|}}~~}|}||}}|}|}}|}|}|}~|}|}|}~}|}|}~|~}|}~|}~}~|}|||}|}}~~}|}||{{|||}{|{|||}~|{|||}~}|||}~|~}|}~|{~}~|{|||||{}~~}|{||{{|||}{|{|||}~|{|||}~}|||}~|~}|}~|{~}~|{||||{{}~~}|{{|{{|||}{|{|||}~|{|||}~}|||}~|~}|}~|{~}~|{||||{|}~~}|{||||{z{{z{{{zz{{{|z{z{{{|{{|{{{|{||{|{|{||{|{||||}||{{|z|{z|{zz{|{{z{z{z|{z{z{z{}z{z{z{||{|{z{||}|{|zz|}|x{{zyy{zz{|z}|{yyyz{yzzzzzzzzzzzzzz{zzzyzzzz{zzzz{{{zz{z{|}zzzz{{zzzzy{z{zz{zz{{|z{z{{y|}{z{{{z}z|{{{|z{|{|}{zz|}zz{{yyy{z|}z|{z{{zz{{||{z{{{z{{|{{{|{||{|{|{||{|{||||}||{{|z|{z|{zz{|{{zz{z{|{z{z{z{}|{z{z{||}|{z{||}|{|zz|}|z{{zzz{zz{|z}|{{zz{{{|{z{{{|}{|{{{|}||{|{|}||{|}||{|}||{{{{|{z|}{|{|{{zz{{{||z{{{|{}z{{{|{||{|{|{||}|{|z||}|z{{|yz{z|{|z}|{{zz{z{zz{{z{z{{z{z{z{||{{{z{||{|{{zz|}|z{{zzzzzz{zz{z{yyzzyz{zzzzzzz{zzzz{zz{y{z{z{zz{z{{{zz{{{|}{{zz{{zz{zz{z{zz{zz{{{||{z{{|}{|{{{z}||{|{|{||{|}||z|}||{{zy|{z|}z|{|{{zz{{{||{z{{{{}|{{{|{||}|{|{||}|{|z||}|z{{|zz{z|{|z}|{{zz{z{zz{z{}{z{z{}{|{z|{|{|{}}{|{}zz|}|zz{zzzzzz{zz{z{{zz{z{z|{z{}{z{|{}{|{|z{|{|{}}{|{}|z|}||{zzz|{zz{zz{|{{zz{{{||{z{{{|}}{{{|}||{|{|}||}|}|z{|}|z{{{{y{z|}||}|{{zz{{{|z{z{{{|{{z{{|{||{{z|{||{|{|z||}|z{{|zzzz|{zz{zz{|}z{zz{z{z|{z{z{z{{|{zz{||{|zz{||{|{||{|}||{z{{|{zz{{z{|{{zz{{{||{z{{{|}}|{{{}||}|{|{||}|}|zz|}|z{{yzz{z|}||}|{{zz{{{|z{z{}{|{{z{}{|||{|{|{}}{|{}z||}|z{{|zzzz|{zz{zz{zz{z{zz{z{z{z{{z{z{z{~{{{z{|~{|{|z{~}|zz{{{zzzz{~~{z{{zz{z{z|{z{z{z{{|{z{z{~{|{z{~|{|{~|z|}~|{zzz|{zz{~~{|{{zz{z{z|{z{}{z{}|{}{|{|z|{|{}}}|{}zz|}|z{{zzz{zz{|z}|{{zz{{{|z{z{{{|}{z{{{|}z|{{|}{|{z}{z{|}|z{{{{z{z|}{|{z{|}z{zz{{{z|{z{{{z{}|{{{z{||}|{{||}|{|z{|}|z{{{{z{zz{|{}|{{zz{{{|z{z{}{|}{z{}{|}z|{|{|}}{|}}zz|}|z{{zzz{z|}z|{z{{zz{{{|z{z{{{|{{z{{{|{~~{{{|{~{|{|z|~}|z{{|{zzz|{~~{zz{zz{z{z|{z{z{z{}|{z{z{~~}|{z{~}|{~zz|}~z{{zzz{zz{~~}|{{zz{z{z|{z{}{z{{|{}{|{||{|{|{}}|{}|z|}||{zz||{zz{|z{|{}{{zz{{{|z{z{}{|{{z{}{|{||{|{|{}}{|}z||}|z{{||zzz|{{|{zz{zz{{{|z{z{{{|}{z{{{|}~~{{{|}~~{|}z{~}|z{{{{z{z|}~~{z{{zz{{{|z{z{{{|}{z{{{|}||{{{|}||{|}|z|}|z{{zzz{z|}z|{z{{zz{z{z|{z{}{z{}|{}{|{||}|{|{}}}|{}||}||{{{{|{zz{|z}|{~zz~z{z|~z~}~z{}|~}~|~~~}|~|~~~}|~~z{}~z~{{{z~zz{~~}|~}{{{~{~|z{{~}~|}{z~}~|}~~~|~|}~~~|}~{{~}{{~{{z{{|}~~{z{{zz{{{|z{z{}{|}{z{}{|}||{|{|}}}{|}}z||}|{{|{z{z|}{|{z{{zz{{{|z{z{}{|{{z{}{|{||{|{|{}}{|{}z||}|z{|{zzz|{{z{z{{||{|{||{|{|{|}}|{|{|}~~}|{|}~~}|}~||~}~|{|||{||}~~}|{}||}|}||}|}|}|}}|}|}|}~~}|}|}~~}|}~||~}~|}}||}||}~~}|}}||}|}||}|}|}|}}|}|}|}~~}|}|}~~}|}~||~}~|}}||}||}~~}|}{||{|{||{|{|{|}}|{|{|}~~}|{|}~~}|}~||~}~|{{|||||}~~}|{{||{|{||{|{|{|}}|{|{|}~~}|{|}~~}|}~||~}~|{{|||{|}~~}|{{||||{z{z{{z{z{{z{z{z{||{z{z{|}|{z{|}|z|{|}|{z|}|zz{zzz{{|}z|{z|{z{z{{z{{{z{||{|{{{|{|{|{|{|||{|{|{||}||z{|z|{{|{zz{|zzzzzzzzzzzzzzzzzyzzz{{zzzz{zz{zz{{zzz}|{zzz{{zzz{z{yzyyyz{yzzzzzz{zzzzzzzz{zzzyzzz{zzzzzzz{zzzzz|}zzzzzzzzzzyzz{zz{{z{{{z{z{z{||{z{z{z}|{z{|{|z|{|}|{x|}|zz{yyz{{|}z|{z|{{z{z{|{{{z{z|{|{{{|{|{|{|{|||{|{|{||}||z{|z|{{|{zz{|z{{z{z{z{}{z{zz{|{}{z{}{|{|{|z}{|{}zz|}|zzzzzz{{z{zz{z|{{z{z{{{{{z{||{|{{{|}|{|{|}|z|{|}|{z|}||z{zz|{{|}z|{||{{z{z{}|{{z{||}z{{{|{|{|{|{|||}|{|{||}|zz{|yz{{|{|z}|zzzzz{zzzzz{zz{z{y{zz{{z{zz{z{{zz{{z{{}|{{zz{{zzz{z{zzyyzzyz{{z{z{{z{z{{z|{z{z{z{|{z{{{|z{{|{|{z|}|zzzzzz{{z{zz{z|{{z{z{{|{{{z||{|{{{z}|{|{|{|z|{|}|{z|}||z{zy|{{|}z|{||{{z{z{}|{{{z{|}|{{{|{|}|{|{|||}|{|{||}|{z{|{{{{|{|{}|z{{z{z{{z{z{z{z{z{z{z{|{z{{{~z|{|{~zz|}~{zzz{{{{z{~~{z|{{z{z{{|{}{z{z||{}{z{}{|{|{|z}{|{}{z|}||zzzz|{zz{zz{||{{z{z{}|{{{z{||}{{{|}|{|{|}|z|}|}|{z|}|zz{zzy{{|}||}|z{{z{z{{z{z{z{||{zz{|{|{zz|{|||{|{|{||}|{z{|{{z{|{z{{z{|}z|{{z{z{{|{{{z{z|{|{{z{|{|z{{|z|{|{|{z|}||zzzz|{zz{zz{||{{z{z{}|{{{z{||}|{{{}|}|{|{|z|}|}|{z|}|{z{y{{{{|}||}|z{{z{z{{z{}{z{||{|{}{|}{|{|{z|}{|{}{||}|zz{|zzz{|{zz{z|{{z{z{{|{{{z{z~{|{{{z{{|{{{~z|{|{~{z|}~|zzz{|{zz{~~{||{{z{z{}|{}{z{zz}|{}{z{}|{|{|z}}|{}{z|}|zz{zzz{{z{|z}|z{{z{z{{z{{{z{||{z{{{|}|{{|}|z|{|}|{z|}|{z{z{{{{|}{|{z|}z|{{z{z{}|{{{z{zz}|{{{z{{}|{{|z{}z{|{z|}|{z{z{{{{z{|{}|z{{z{z{{z{}{z{||{|{}{|}}{|{|zz}{|}}{z|}|zz{zzz{{|}z|{zz{{z{z{{z{z{z{|~{z{z{|{~{z{|{|~{|{|{|~}|zz{|zzz{|{~~{z|{{z{z{}|{{{z{z|}|{{{z{|}|{{{||}|{|{z|}|zz{zzz{{z{|z}||{{z{z{}|{{{z{z~}|{{{z{~}|{{{~z}|{~{z|}~{z{z{{{{z{~~}||{{z{z{{|{}{z{z|{|{}{z{}{|{|{|z}|{}{z|}||zzz||{zz{|{{|}{z{{z{z{{z{}{z{||{|{}{|{}{|{|{||}{|}{||}|zz{||zz{|{z|{zz{{z{z{{z{z{z{|~{z{z{|}~{z{|}~z~{|}{z~}|zz{zzz{{|}~~{z|{{z{z{{|{}{z{z|{|{}{z{}{|{|{|z}{|{}z|}||zzz{|{{z{z{{||{{z{z{}|{}{z{z|}|{}{z{}}|{|{|z}}|{}{|}||z{z{|{{z{|{}||~~{{{{}|~}~{{z~}|~}~z{~}|~|~~{~}|~~{{}~{{{z{{~{z{~~}|}z{~z~z~{z~}~z~|~~|~}~|}~~|~|}~z~~|}~~z~}{z~z{{{~|}~~{zz{{z{z{{z{}{z{||{|{}{|}}{|{|}||}{|}}{||}|z{|{{{{|}z|{z|{{|{|{}|{|{|{|~}|{|{|}~}|{|}~|~}|}~{|~}~|{|||{{|}~~}||{{|{|{}|{|{|{|~}|{|{|}~}|{|}~|~}|}~{|~}~|||||{{|}~~}||}}|}|}}|}|}|}|~}|}|}|}~}|}|}~|~}|}~}|~}~||}||}}|}~~}||}}|}|}}|}|}|}|~}|}|}|}~}|}|}~|~}|}~}|~}~||}||}}|}~~}||{{|{|{}|{|{|{|~}|{|{|}~}|{|}~|~}|}~{|~}~||{|||{|}~~}|z{z{||||{z{{{{{z{||{{{{}{||{{{{}{|{{{y{}{|||{{{|}|y{y{zz{{{{zz{{z{z{z|{z{z{z{|{z{z{|{|{z{|}{z|{|}|z{{|}|{z{zzzz{|}z|{}|{{{{z}|z{{{{{}z|{{{{{z||{{{{z}|||{{{z}|{{{yzz{{{{|z}zzzz{zzz{{z{z{{z{zz{zz{zz{z{{z{zz|zz{zz}|{z{zzzz{z{zzzyyzz{y{zz{zz|{z{zyz{|{zzz{{{|{z{{{{{|{|||zy{|}|yzzzzzz{{{zz{{zz{z{|{z{z{z{|{z{z{{{|{z{|{{{|{|}|z{y|}|{z{yzzz{|}z|{{zz{z{z{{{z{z{|{{{z{{z|{{{{{{{|{||~z{{|}~{z{zzzz{{{~~{{z{{{{{|||{{{{}{||{{{{}{|{{{{{}{|||{y{|}|{{y{zz{{{{zz{{|{{{{{|{{{{{{|{|{{{|{|{|{|}{{|{|}|{{z|}|{{{zz|{{|}z|{}|{{{{{z}|{{{{{}z|{{{{{z||{{{{{}|||{{{|}|{{{zzz{{{{|z}zzz{z{zzz{{{z{{z{zz{zz{zz{z{{z{zz|zz{zz}|{z{zzzz{z{zzzz{|}z{zz{z{z|{z{z{{|{z{z{{{|{z{{{{{z{|||z{z|}|{zzzzzz{{{zz{{|{{{{{|{|{{{{|{|{{{{{|{|{|{{{|{|}|{{{|}|{{{zz|{{|}z|{{zz{z{z~{{{z{z{{{{z{{{|{{{{{{z|{||~z{{|}~{z{zzzz{{{~~{{|{{{{{|{||{{{{}||{{{{}{|{{{{{}{|||{{{|}|{{z{z|{{{{zz{}|{{{{{|}||{{{{|}|{{|{|{|||}{{|}|}|{{{|}|{{{zzz{{|}||}{z{{{{{|{{{{{{{|{{{{{{|z{{{{{{|{|||{{{|}|{{{z{z{{{{z{{{|}z{|{{{{{|{|{{{{{|{|{{{{|{|z{{{{|{|||{{{|}|{{zzz|{{{{zz{}|{{{{{|}||{{{{|}||{{{|}|||{{{|}|}|{{{|}|{{{yzz{{|}||}}|{{{{{|}||{{{{|}||{{{|}||{{{{|}|||{{{|}|{{{yzz{{{{|y}{|{{{{{~{|{{{{{~{|{{{{{{|{{{{{|{||~{{z|}~{{{zz|{{{{~~{}|{{{{{|}||{{{{}}||{{{{}||{{{{}}|||{{{|}|{{{{zz{{{{|z}{zz{z{z|{{{z{z{|{{{z{|{|{{|}{{|{|}|z{z|}|{z{zzzz{|}z|{|}z}|{{{{{z}||{{{{z}||{{{{z}||{{{z}z||{{{|}|{{{zzz{{{{|z}{z{{{{{|{||{{{{}{||{{|{}{|{|{{}{|}{{{{|}|{{{{zz{{|}z|{{|{{{{{|{|{{{{{|{|{{{{{|{|{{{{|{|||{{{|}|{{zzz|{{{{zz{}|{{{{{|}||{{{{|}||{{{{|}||{{{|}|||{{{|}|{{{zzz{{{{|z}}|{{{{{~}||{{{{~}||{{{{~}||{{{{}||~{{{|}~{{{zzz{{{{~~}{|{{{{{|{||{{{{}{||{{{{}{|{{{{{}|||{{{|}|{{{{||{{{{|z{}z{z{{{{{|{||{{{{}{||{{|{}{|{|{{{}{|{{{{|}|{{z||z{{|{z|{{zz{z{z~{z{z{z{~{z{z{|z~{z{|}{z~{|}z{z~}|{z{zzzz{|}~~{{z{{{{{|{||{{{{}{||{{{{}{|{{{{{}{|||{{|}|{{{{zz{{{{zy{{|{{{{{|{||{{{{}{||{{{{}{|{{{{{}{|||{{|}|{{{{z|{{{{zz{}|{{{{{|}||{{{{}}||{{{{}}||{{{{}}|||{{|}|{{{{z|{{{{|y}}|{{{{{~}|~{{{{~}|~{{{{~}|~{{{{~}|~~{{{}~{{{{z{{{{{~~}}{z{~{~{~~|~{~{~~~|~{~|{~~|~|}~{~~|}~{~{~}~{~{zz{~|}~~{}||{|{|~}|||{|{~}|||{||~}|||}{|~}|}~|{|~}~|{||||{|}~~}}||{|{|~}|||{|{~}|||{||~}|||}{|~}|}~|{|~}~{{|||{{|}~~}}||{|{|~}|||{|{~}|||{||~}|||}{|~}|}~|{|~}~{|||||{|}~~}}||}|}|~}|}|}|}~}|}|}||~}|}|}}|~}|}~|}|~}~}|}|||}|}~~}}||}|}|~}|}|}|}~}|}|}||~}|}|}}|~}|}~|}|~}~}|}|||}|}~~}{{{z{{z{|||{{|{|{|{|{|{|||{|{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|{}{}{}{}{}{}}}{}{}{{}}{}{|}z}}{|{{}{}|}}}z}z}zz}{|{|z|{|{|{|{z{|{|||z|{|{{||{|{||{||{|{{|{{|}}|{|y{z{|{|{|z|}|||||}|z|||||}z||||||z|||||||}|{||||{}}||||{{|||{{}{}z{||{}z|{|{||}z|z|{{|}z|{{|{|}z|{{|{||}}|{|{||{|{{{}}{z{|}y|{{{{{|{{{{yz||{{yz{{||{{{|{{||{|{{{y||}}{yzz{zzz{|{|z~{{|{|{{|{|{|||{|{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|{{}{}{}}{}{}}}{}{}{{}}{}{|}{}}{|{{}z}|}}}{}z}z{}{|{|z|{{|{|{|{{|{|||z|{|{{||{|{||{||{|{{|{{|}}|{|z{z{|{|{|z|}||||||}||||||}z||||||z|||||||}|{|||||}}||||{{|||{{}{}{{|{|{}{|{{||}{|{|{{|}{|{||{|}{|{{|{||}}|{|{||{|{|{}}z{|}y|{{{{{{|{{{{{||{{{z{{||{z{|{{||{|{{{{{|}}{{zz{z{z{|{|z|}||||||}||||||}|||||||}|||||||}|{|||||}}||||{{||||{}z~{{|{|{~{|{|{||{|{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|{{}{}{}{}{}{}}}}{}{{}}{}{|}{}}{|{{}{}|}}}{}z}z{}{|{|z|}||||||}|||||||}||||||{|||||||}|{|||||}}||||{{||||{}{}{{|{|{}{|{|{||}{||{{|}z|{||{|}{|{{|{||}}|{|{||{|{|{}}{|}z|{{|{|{|{|{|{|||{|{|{||{|z||{||{|{{|{||}}|{|z{z{|{|{|z|{{|{|{|{|{|{|||{|{|{||{|{||{||{|{{|{||}}|{|y{y{|{|{|{|}||||||}|||||||}||||||}|||||||}|{|||||}}||||{{||||{}z~{{|{|{~{|{|{||~{|{|{{|{|{||{||{|{{|{||}~|{|{||{|{|{~~|}|}|}|}}}|}|}}}}}|}||}}}||}|}}}|{|}|}|}}}|}|}{|}||{}{}{{|{|{}{|{|{||}{|{|{{|}{{||{|}{|{{|{||}}|{|{||{|{|{}}|}z}}|||||}}||||||}}||||||}}|||||}}{{|||||}}|||||||||{{}}|{{{{{{|{{{{{{||{{{{{{||{{{|{||{|{{{{||}}{{{z{z{{{|{|z|{{|{|{|{|{|{|||{|{|{{||{|{||||{|{{|{||}}|{|z{z{|{|{|{|}||||||}|||||||}|||||||}||||||}|{|||||}}||||{{||||{}z~}|||||~}||||||~}||||||~}||||||}|{|||||}~||||||||||{~~}{{}{}{}{}{}{}}}{}{}{{}}{}{|}{}}|{{}{}|}}}{}{}|{}{|{}}}||{{}{}{}{}{}{}}}{}{}{{}}{}{|}{}}{|{}{}|}}}{}z}|{}{|{||}{{}{}{}{}{}{}}}{}{}{{}}{}{|}{}}{|{z{||}}}{}{}|{}{|{}}}{{}{}{}{}{}{}}}{}{}{{}}{}{|}{}}{|{{{||}}}{}{}|{}{|{}}}{{}{}{}{}{}{}}}{}{}{{}}{}{|}{}}{|{{}||}}}{}{}|{}{|{}}}}|}|}|}}}|}|}}}}}|}||}}}}||}|}}}|{|}||}}}|}|}||}||{}}~}|}|}|~}}|}|}}~}}|}||}~}}||}|}~}}||}|}}~}|}|}}|}|||~~}~~~}~}~~~}~}~}}~~}~}~~}~~}~|}~}~~|{~}~}~}}~}~}|~}~|{~~~}|||||~}}|||||~}}|||||~}}|||||~}}}||||~}~{|{|}||||}~~~}|||||~}}|||||~}}|||||~}}|||||~}}}||||~}~||{|}||||}~~~}|||||~}}|||||~}}|||||~}}|||||~}}}||||~}~||{|}||||}~~~}|||||~}}|||||~}}|||||~}}|||||~}}}||||~}~||||}||||}~~~}}|}|}~}}}|}||~}}}|}}|~}}}||}|~}}}}|}|~}~|}|}}}|}|}~~z{|{|{|{||{|{}}{|{|{z||{|{||{||{|{{|{||{{|z|{|||{|{|z|}|z|z{|z{|{{|}~|{{{{||{{{{{||{|{{{{||||{{{{|||||{{{|||}{{{{||y{{{{|}z|||{||||{{|{|||{|{||||{||{{|||||||{||||}{|{|||{|{|{|}z~}||}}~|}|}||}~|{|}}|}~|}{|}|}z||}|}|}~}|}|}||y}|}{|}z||}||~|}|}|}}~|}|}||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{{{|}z|{|{|{||{|{|||||{|{{||||{{|{|||||{|{|||}|{|{||~{|{{|}z~{|{|{||{|{|||||{|{{||||{{|{|||||{|{|||}|{|{||z{|{{|}~}}|}|}~}}|}||~}|}|}}|~}|}{|}|~}||}|}|~|}|}|}|~z}|}{|}{||{|{||||{|{|||{|{||||{||{{|||||||{||||}{|{|||{|{|{|}z~}|}|}}~|}}||}~|{|}}|}~|}{|}|}|||}|}|}~}|}|}||z}|}{|}z||}|}|~|}|}}}~|}|}||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{{|}z~}|}|}}~|}|}|}~|}|}}|}~|}{|}|}~||}|}|}~}|}|}||{}|}{|}z|{|{|{~||{|{||||{|{{||||{{|{|||||{|{|||}|{|{||~{|{{|}z~{|{|{|~|{|{||||{|{{||||{{|{|||||{|{|||}|{|{||z{|{{|}~}}|}|}~}|}|}||~}}|}}|~}|}{|}|~}||}|}|~|}|}|}|~{}|}{|}{~}|}|}}~|}|}||}~||}}|}~|}{|}|}|||}|}|}~}|}|}||z}|}{|}z||}|}|~|}|}|{}~|}|||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{|}z|{{{{{|||{{{{||||{{{{{||{{{{|||||{{{|||}{{{{||z{{{{|}y~}|}|}}~|}|}||}~|}|}}}~|}{|}|}~||}|}|}~}|}|}||{}|}{|}z|{|{|{~||{|{||~||{|{{|||{{|{|||||{|{|||}|{|{||~{|{{|}z~||||||~|||||||~|||||||||{|||||||||||||}||||||z|||{|}~~}|}|}~~|}|}||~~|}|}}|~~}{|}|~}||}|}|~~}|}|}|~z}|}{|}{||}|}|~|}|}|}}~|}|}||}~|}}}|}~|}||}|}~|~}|}|}~~|}|}|~||}{||{|{|||||{|{|||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{||{|{|||||{|{|||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{~}|}|}}~|}|}||}~|}|}}|}~|}{|}}~||}|}|}~}|}|}||{}|}{|}{||||||~|||||||~|||||||~|||{||||||||||||}||||||~|||{|}z~}|}|}}~|}|}||}~|}|}}|}~|}{|}|}||}|}|}~}|}|}||z}|}{|}~}}}}}}~}}}}}}}~}}}}}}}~}}}{}}}~}|}}}}~|~}}}}}~~}}}}|~|}z}}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}|||{|z|}|}|}|~z}|}{|}y}}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}{|||}|}|}|~z}|}{|}z}}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}||||}|}|}|~z}|}{|}z~}|}|}~~|}|}||~~|}|}}|~~|}{|}|~~||}|}}~}|}|}|~{}|}{|}z}}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}|}||}|}|}|~~}|}{|}z~}~}~}~~~}~}~~~~~}~}}~~~~}~~}~~~~|}~}~~~~}~}~~~}~}~|~~}~|}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~|}|}|||}|}|~~~|}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}}|}|||}|}|~~~|}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}||}|||{|}|~~~|}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}|}}|||}|}|~~~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}|}}}}}~~}}}}||}}}{|~~~}~}~}~~~}~}~~~~~}~}}~~~~}~~}~~~~|}~}~~~~~}~}~~}~}~|~~{{{|}z{{|}z{|}z|}{}z}}{}}}}}}|}}}}}~}}}}}|}~}}}}|}}~}}}}}}}~}}}}}}}~}}}}}}}~{}}}}}}}|}}}}~|}}}}|}~}}}}||}~}}}|}}}~}}}}}}}~}}}}}}}~{}}}}}}}}|}}}~}|}}}|}~}}}}|}}~}}}||}}~}}|}}}}~}}}}}}}~{}}}}}}}}}|}}~}}|}}|}~|}}}|}}~}}}|}|}~}}||}}}~}|}}}}}~~~~}~}~~}~}~~~~~}~}|~~~~}~~}~~~~}}~}~~~~~}~}~~~}~}~}~~~~}}}}}}}}}}~~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~~~}}}}}}}}}}~~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~~~}}}}}}}}}}~~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~~~}}}}}}}}}}~~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~~~}}}}}}}}}}~~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}~~~}~}~~~}~}~~~~}~}}~~~~}~~}~~~~}}~}~~~~~}~}~~~}~}~}~~|}}}}}~~}}}}}}}}}}}}}}~}}}|}}}~}}}}}}}~}}}}}}}~}}}}}}}|}}}}}}~}}}}}}~}}}}}}~~}}}|}}~~}}}|}}~~}|}}}}~~}}}}}}~|}}}}}}~}}}}}}}}}}}}}}~}}}|}}}~}}}}}}}~}|}}}}}~}}}}}}}|}|}|}|~|}|}|}}|||}}}}~|}||}}}~|}}|}}}~||}|}}}~}|}|}}}|}|}|}|~|}|}|}}||||}}}~|}||}}}~|}}|}}}~||}|}}}~}|}|}}}|}|~}}}}~~}}}}}~}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}||}}}}}}~}}}}}|}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~{}}}}}~}}}}}}}}}}}}}|}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}{}}}}}}}}}}}}}~}}}}}||~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~{}}}}}}}}}}}}}}}}}}}||}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}{}}}}}}}}}}}}}}}}}}}||}|||}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}|~}}}}~~}}}}}~}~}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}|}}}}}}~}}}}}}~~}}}}}}}~}}}|}~~}}}}}}~~}}}}}}~~}}}}}}~~}}|}|||}|}|}}}|}|}||}}|}|}}|}|}||}|}~|}}|}|}~||}|}|}~|}}}}}~}}}}}}}}}}}}}|}}}}}}||}}}}}}}}}~}}}}}}}~}}}}}}}{}}}}}}}}}}}}}~}}}}}|}~}}}}|}|~}}}}}}~}}}}}}}~}}}}}}}~{}}}}}}}}}}}}}}}}}}}|}}}}}}|||}||}}}}}}}}}}}}}}}}}}}}}|}}}|~}}}}~~}}}}}~}~}}}}}}}~}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}{}}}}}}}}}}}}}~}}}}}|}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~{}}}}}}~}}}}}}}~}}}}}}}~}}}|}}}~}}}|}}~}}}}}}}~}}}}}}}~}}|}|||}|}|}}}|}|}||}}|}|}}|}}|}||}|}|}}|}|}~||}|}|}~{}}}}}~}}}}}}}}}}}}}|}}}}}}|}}}}}}|||}}}}}}}}}~}}}}}}}{}}}}}}}}}}}}}~}}}}}|}~}}}}|}}~}}}}|}|~}}}}}}~}}}}}}}~|}}}}|~}}}}~~}}}}}~}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}~}}}}}}}|}}}}}}}}}}}}}~}}}}}|}}}}}}|}}~}}}}}}}~}}}}}}~}}}}}}}~{}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}{}}}}}}~}}}}}}}~}}}}}}}~}}}|}}}~}}}}}}}~}|}|}}~}}}}}}}~}}|}|||}|}|}}}|}|}||}}|}|}}|}}|}||}|}}|}}|}|}||}|}|}~{}}}}}~}}}}}}}}}}}}}|}}}}}}|}}}}}}|}}}}}}||||}}}}}}}}}|}}}}}|~}}}}~~}}}}}~}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}{}}}}}}}}}}}}}~}}}}}|}}}}}}|}}~}}}}}}}~}}}}}}}~}}}}}}~{}}}}}}}}}}}}}}}}}}}|}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}{}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}{}}}}}}~}}}}}}}~}}}}}}}~}}}|}}}~}}}}}}}~}|}}}}}~}|}|}}~}}|}|||}|}|}}}|}|}||}}|}|}}|}}|}||}|}}|}}|}|}}||}|}|}}}|||||||||}}|||||||}}||||||}}||||||}}||||||}}||||||}}}}|||||{|||}}}||||||}}||||||}}||||||}}||||||}}||||||}}}}|||||||||}}}||||||}|||||||}}||||||}}||||||}}||||||}}}}|||||||{|}}}||||||}}||||||}}||||||}}||||||}}||||||}}~~}}}}}}}}}~~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~~~}|}}}}}}}~~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~~~}}}}}}}}}~~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~~~}}}|}}}|}~~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~~~}}}}}}}|}~~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~~~}~}~~}~}~}~~}~}~~}~~}~}}~}~~}~~}~}~~}}~}~}~~~}~}~}~~~~~}}}}}}}}}}~~}}}}|}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}|}}}}}}~}}}}|}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}|}||}|}|}}}}|}||}}~}|}}|}}~}||}|}}~}}|}|}}~|}|}|}}~}}}|}||}|}|}}}}||||}}~}|}}|}}~}||}|}}~}}|}|}}~|}|}|}}~}}}|}||}|}|}}}|||||}}~}|}}|}}~}||}|}}~}}|}|}}~|}|}|}}~}}}|}|~}|}|}}~~}|}|}~~}|}}|}~~}||}|}~~}}|}|}~~|}|}|}~~}}}}}}}}|}}}}}}~~}}}}|}~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~~~||||}}|||}~}}}|}||}}}|}||}}~}||||}}~}||}|}}~|}|}|}}~}}|}|}||}|}|}~}|}|}||~}}||}|~}|}}|}|~}||}|}|~}}|}|}|~}}}||||||||||}}}||||||}||||||}}||||||}}||||||}}||||||}}}}||||||||||}}}||||||}||||||}}||||||}}||||||}}||||||}}}}||||~|||||}~~||||||~~|||||~~||||||~~||||||~~||||||~~}}}}}}}}}|}}}}}}~}}}}}|}}~}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}|}||}|}|}}}~}|}||}}~}|}}|}~}||}|}~~}}|}|}~~|}|}|}~~~~||||}}||||~}}}||||}}}}|}||}}}||||}}~}||||}}~|||}|}}~}}|}|}||}|}|}~}|}|}||~}|}||}|~}}}|}|~}||}|}|~}}|}|}|~}}}||||||||||}}}||||||}}||||||}||||||}}||||||}}||||||}}}}||||~|||||}~~||||||~~||||||~~|||||~~||||||~~||||||~~}}}|}}}}}}|}}}}}}~}}}}}|}}~}}}}}|~~}}}}}~~}}}}}}~~}}}}}}~~}}||||||||||}}}||||||}}||||||}}|||||}}||||||}}||||||}}}}}|}||}|}|}}}~}|}||}}~}|}}|}}~}||}|}~}}|}|}~~|}|}|}~~~~||||}}||||~}}}||||}}}}||||}}}}||||}}}||||}}~|||||}}~}}|}|}||}|}|}~}|}|}||~}|}||}|~}|}}|}|~}|}|}|~}}|}|}|~}}}||||~|||||}~~||||||~~||||||~~||||||~~|||||~~||||||~~}}}|}}}}}}}|}}}}}}~}}}}}|}}~}}}}}|~~}}}}}}~~}}}}}~~}}}}}}~~}}||||||||||}}}||||||}}||||||}}||||||}}|||||}}||||||}}}}||||||||||}}}||||||}}||||||}}||||||}}|||||}}||||||}}}}}|}||}|}|}}}~}|}||}}~}|}}|}}~}||}|}}~}}|}|}~|}|}|}~~~~||||}}||||~}}}||||}}}}||||}}}}||||}}}}||||}}|||||}}~}}||||~|||||}~~||||||~~||||||~~||||||~~||||||~~|||||~~}}}|}|}}}}}}|}}}}}}~}}}}}|}}~}}}}}|~~}}}}}}~~}}}|}}~~}}}}}~~}}||||||||||}}}||||||}}||||||}}||||||}}||||||}}|||||}}}}||||||||||}}}||||||}}||||||}}||||||}}||||||}}|||||}}}}||||||||||}}}||||||}}||||||}}||||||}}||||||}}|||||}}}}}|}||}|}|}}}~}|}||}}~}|}}|}}~}||}|}}~}}|}|}}~|}|}|}~~~||||}}||||~}}}||||}}}}||||}}}}||||}}}}||||}}}|||||}}|{|{}|{{{{|{|{{}||{{}|||{{}||{|{}||{|{{}||{|{|}||{|{|{{{|{}|{{{{}{|{{}||{{}|||{{}||{|{}||{|{{}||{|{|}||{|{|{{||{}|{|{||{|{{}||{{}|||{{}||{|{}||{|{{}||{|{|}||{|{|{~|}|~~~|}||~|}|~~~}|~~|}~|~~|}|}~~|}|}|~~|}|}|}~|}|}|}||}|~~~}}||~|}|~~~}|~~|}~|~~|}|}~~|}|}|~~|}|}|}~|}|}|}||||~~~}|||~|}|~~~}|~~|}~|~~|}|}~~|}|}|~~|}|}|}~|}|}|}||}|~~~}|}|~|}|~~~}|~~|}~|~~|}|}~~|}|}|~~|}|}|}~|}|}|}|}~}~~~~}~}~}~}~~~~}~~}~~}~~}~}~~~}~}~}~~}~}~}~~}~}~}~}}|}||}|}|}|~|{{}||}~}}||}~}}|}|~}}|}|}~}}|}|}|}}|}|}|}}|}||}|}|}|~}{{}||}~}}||}~}}|}|~}}|}|}~}}|}|}|}}|}|}|}}|}||~|}|}|~}|{~||}~~}||}~~}|}|~~}|}|}~~}|}|}|~}|}|}|}}|}~~~|}|}|~}|}~~|}~~}~~}~~}~}|~~}~}|}~~}~}|}|~}~}|}|}~}~}~~~~}~}~~}~}~~~}~~}~~}~~}~}~~~}~}~}~~}~}~}~~}~}~}~}||||{}||{||}|||{}|{{}||||{}||||{}|||||{}||||||}|||||||||||{~|||||}|||{~|||~|||||~|||||~||||||~||||||~||||||||||~~}|||||~|||{}~||}|~~|~}|~||~}|~|||~}|~||||}|~||||||||~}~}||||~|}|~~~}|~}|~|~~}|||~~}}|||~~}}|}||~}}|}|}||}}|}|}~|}|}~~}|}~~}|}~~}|}~~}|}|~~}|}|}~~}|}|}|~}|}|}|}}|}~~~|}|}|}}|}~~~|}~~}|}~~}|}|~~}|}|}~~}|}|}|~}|}|}|}||{|{~|||{{|||{{~||{|~||||~||{||~||||{|~||||||~|||||||{|{~~}|{|{|~{|{{}~|{{}|~~{}|~{|~}|~{|{~}|~{|{|}|~{|{|{|||~|~|||||~|||~}~||~}||~|~||||~~|||||~~||||||~||||||||||||~|||||~|||{~|||~}||||~~|||~~|||||~~||||||~||||||||}}|||||~||||~~|||~~|||~~||||~~|||~~|||||~~||||||~|||||||}|}~{}|}|}|~}|}~|~|}~}}{|}~}}|}~}}|}|}~}}|}|}|}}|}|}|}{|{~~}|{{{|~{{{{}~|{{}|~~{{}|~{|}|~{|{~}|~{|{|}|~{|{|{|||~|~|||||~|||~}~||~}||~|~}||||~|||||~~||||||~|||||||{|{||}|{|{||{|{{}||{{}|||{{|||{|{}|{|{{}||{|{|}||{|{|{}|}|{~|}|}|~}|}~~||}~}}||}~~}|}|~~}}|}~~}|}|}|~}|}|}|}|}|||||||~||||~~|||~~|||~~||}|~~||{|~~||||~~||||||~|||||||}|}~{}|}|}||}|}~}~|}~}}||}~}}|}|~}}|}|~}}|}|}|}}|}|}|}{|{~~}{{{{|~{|{{}~{{{}|~~{{}|~{|{}|~{|{}|~{|{|}|~{|{|{|||~|~|||||~|||~}~||~}||~|~}||||~}|||||~||||||~|||||||{{{||}|{{{||{|{{}||{{}|||{{}||{|{|||{|{{}|{|{|}||{|{|{}|}|{}|}|}{}}|}~}||}~}}||}~|}|}|~}}|}|}~}}}|}|}}|}|}|}||||{~|||||~|||{~|||~|||||~~|||{~~|||||~~|||||~||||||||}||{|||||~||||~~|||~~|||~~||||~~||{|~~|||||~~|||||~|||||||}|}~{}|}|}|}}|}~}~|}~}}||}~}}|}|~}}|}||~}}|}|}}}|}|}|}|||~|~|||||~|||~}~||~}||~|~}||||~}|||||~}|||||||||||||{|{||}|{{{||{|{{}||{{}|||{{}||{|{}||{|{{|||{|{|}|{|{|{}|}|{}|}|}{}}|}~}||}~}}||}~}}|}|~|}|}|}~}}|}|}|}}}|}|}{|{|{}|{|{||{|{{}||{{}|||{{|||{|{}||{|{{}||{|{|}|||{|{|{||{~||{||~|||{~|||~|||||~~|||{~~|||{|~~||{||{~||||||||||{||||||~||||~~|||~~|||~~||||~~||{|~~|||||~~||||{|~||||||}|}~{}|}|}||}|}~}~|}~}}||}~}}|}|~}}|}||~}}|}|}|}}|}|}||{{|||{{{{{{|{|}}}|{|}}|{{|}}|{||}}|{|{}}|{|{|}}|{|{|{{{{|}|{{{{{{|{|}}}|{|}}|{{|}}|{||}}|{|{}}|{|{|}}|{|{|{{|{|||{|{{|{|{|}}}|{|}}|{{|}}|{||}}|{|{}}|{|{|}}|{|{|{}|}|}~~{}{}}|}|}~}~}|}~}}}|}~}}|}}~}}|}|~}}|}|}~}}|}|}||}|}~~}}{}}|}|}~}~}|}~}}}|}~}}|}}~}}|}|~}}|}|}~}}|}|}||||}~~}|{}}|}|}~}~}|}~}}}|}~}}|}}~}}|}|~}}|}|}~}}|}|}||}|}~~}|}}}|}|}~}~}|}~}}}|}~}}|}}~}}|}|~}}|}|}~}}|}|}|}|}}~~|}|}}}|}|~}~|}|~}}}}|~}}}||~}}}|}~}}}|}|~}}}|}|}}}}{}}}}}}}||{|}}}}}}}}}{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}{}}}}}}}|}{|}}}}}}}}}{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}{}}}}}}}|}}|}}}}}}}}}{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}{}}}}}}}|}}}}}}}}}}}}{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|~~}}}}}}}}}}}~}}}~}}|}}~}}}}}~}}}}}~}}}}}}~}}}}}}}}~}~}~~}~}~}|~}~}~}}~}~~}}~}~~}~}}~~}~}~~~}~}~}~~}~}~}~|||{|}||{|{{||||}}}{|}||{||}|||||}|||||}||||||}||||||||||{|}||||{{||||}}}||}||{||}|||||}|||||}||||||}||||||||||{}}||||{{||||}}}||}}|{||}}||||}}||||}}|||||}}|||||||||}~~}||||}|}||}}~}|}}|}|}~}|||}~}}|||~}}|}||~}}|}|}||}|{}}}|}|}||}|}}}}}|}}}{|}}}}|}}}}}|}|}}}|}|}}}}|}|}||}}}}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}{|{{|||{|{{|{|{|}}}|{|}||{|}||{||}||{|{}||{|{|}||{|{|{|||{}|||||{|||||}}}|||}}|{|}}||||}}||||}}|||||}}|||||||||}~~||||||||||}}~|||}}|}||}||||~}||||~}|||||~}|||||||}|{}}}|}|}}|}|}}}}}|}}}}{|}}}|}}}}}|}|}}}|}|}}}}|}|}|}|}{}}|}|}||}|}|}}}|}|}}|{}|}}}||}}|}|}}}|}|}|}}|}|}|}|}|}|}{}}|}|}||}|}|}}}|}|}}{{}|}}|}|}}|}|}}}|}|}|}}|}|}|}|||{}|||||{{||||}}}|||}}|{||}}|||}}||||}}|||||}}||||||{|{}~~|{|{||{|{|}}~|{|}}|}{|}}||||}|||{~}|||{|~}|||{|{|}|{||}|}|}||}|}}}}}|}}|}{|}}|}|}}}}|}|}}}|}|}}}}|}|}|}|}{}}|}|}||}|}|}}}|}|}}|{}|}}|}||}}}|}}}|}|}|}}|}|}|}{|{{}}|{|{||{|{|}}}|{|}||{{|}}|{||}}||{}}|{|{|}}|{|{|{|}||}|}{|}|}|}||}|}|}}}|}|}}|{}|}}|}||}}|}|}}|}|}|}}|}|}|}{|{}~~|{|{||{|{|}}~|{|}}|}{|}}||||}}|||{}|||{|~}|||{|{|}|{||}|}|}||}|}}}}}|}}|}{|}}|}|}}}|}|}|}}|}|}}}}|}|}|}|}{|||}|}||}|}|}}}|}|}}|{}||}|}||}}|}|}}}}|}|}}|}|}|}|||{}}||||{|||||}}}|||}}|{||}|||||}}{|||}}||||}}||||||{|{{}}|{|{||{|{|}}}|{|}||{{|}}|{||}}|{|{}}|{{|}}|{|{|{|}|||}|}{|}|}|}||}|}|}}}|}|}}|{}|}}|}||}}|}||}}|}|}}}|}|}|}{|{}~~|{|{||{|{|}}~|{|}}|}{|}}||||}}|||{}}|||{|}|||{|{|}|{||}|}|}||}|}}}}}|}}|}{|}}|}|}}}|}|}|}|}|}|}}}|}|}|}|}{|||}|}||}|}|}}}|}|}}|{}|}}|}|||}|}|}}}|}|}|}}}|}|}{|{{|}|{|{{|{|{|}}}|{|}||{{|}||{||}||{|{}|{{|{|}|||{|{|||{}}||||{{|||||}}||||}|{||}|||||}}{|||}}|{|||}}|||||{|{{}}|{|{||{|{||}}|{|}||{{|}}|{{|}}|{|{}}|{|{|}}|{||{|}||||}|}{|}|}|}||}|}|}}}|}|}}|{}|}}|}||}}|}||}}|}|}|}}|}|}||{|}{|{{{|||{|{|||}|{|{}||{||}|{|||}|{|{|}|{|{|}|{|{|{{{|}{|{{{|||{|{|||}|{||}||{||}|{|||}|{|{|}|{|{|}|{|{|{{||}{|{|{|||{|{|{|}|{||}||{||}|{|||}|{|{|}|{|{|}|{|{|{}{}|}||~~|}|}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}||}||~~}}|}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|||||~~}||}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}||}||~~}|}}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|}}}|~~}}}}||}}}}}~~}}}}~}|}}}~}}}}}~}}}}}~}}}}}~}}}}}}}~}|~~~}~}~~}~}~~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}}|}|}||}|}|~||{|||}|}|~}||}|~}|}||~}|}|}~}|}|}|}|}|}|}}|}|}||}|}|~|}{|||}|}|~}||}|~}|}||~}|}|}~}|}|}|}|}|}|}}|}|}||}|}|~|}||||}|}|~}||}|~}|}||~}|}|}~}|}|}|}|}|}|}}|}|}||}|}|~|}|}}~}|}|~~||}|~~|}||~~|}|}~~|}|}|~|}|}|}}|}|}||}|}|~~}|}||}|}|~}||}|~}|}||~}|}|}~}|}|}|}|}|}|}}~}|~~~}~}~~~}~}~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}}||||}{||{||||||||||}{|{|||||||||||||||||||||||||||||||||||}{|||||||||||||}||{|||||||||||||||||||||||||||||||}|}|}{|}|}|||}|}|}~}|}}~||}|}~|}||}~|}|}}~|}|}|~|}|}|}||||}{||||||~||||||}||||||||~|||||~|||||~|||||||||||||}|}|}~|}|}|||}|}|}~}|}|}||}|}~|}||}~|}|}}~|}|}|~|}|}|}}}}|~|}}}}}~~}}}}~|~}}}~}|}}~}}}|}~}}}}}~}}}}}}}}}}}}}|}{|{|}{|{|{|||{|{|||}|{||||||{||{|||||{|{|||{|{|||{|{|{}|}|}{|}|}|||}|}|}~}|}|}~||}}~|}||}~|}|}}~|}|}|~|}|}|}{|{|}{|{|{||~{|{|||}|{|||||{|||{||~||{|{~||{|{|||{|{|{||||}~|||||||||||||}|||||||||||||||~|||||~|||||~||||||}|}|}{|}|}|~|}|}|~~}|}|~}||}|~~}||~~|}|}~~|}|}|~|}|}|}|}||~|}|}|}~~|}|}~|~}|}~|}||}~|}}}~|}|}|~|}|}|}|}|}|}||}|}|}|}{|}|}|||}|}|}~}|}|}~||}|}~|}|}~|}|}}~|}|}|~|}|}|}{|{|}{|{|{||~{|{|||}|{|||||{||||{||||{|{~||{|{|||{|{|{{|{|}~|{|{|||{|{|||}|{||||||||||{||||{|{|~|{|{|~|||{|{}|}|}{|}|}|~|}|}|~|}|}|~}||}|~}|}||~}}|}~}|}|}|}|}|}|}}|}|}{|}|}|||}|}|}~}|}|}|||}|}~|}||}~||}}~|}|}|~|}|}|}|}||~|}|}|}~~|}|}~|~}|}~|}||}~|}|}}~|}||~|}|}|||}|}|}||}||{|{|}{|{|{||~{|{|||}|{|||||{||||{|||||{|{||{|{|||{|{|{{|{|}~|{|{|||{|{|||}|{|||||{||||{|||||{|{||{|{|~|{|{|{}|}|}{|}|}|~|}|}|~|}|}|~}||}|~}|}||~}|}|}~}}|}|}|}|}|}|{||}{{|{|||||{||||}{||||||||||||{|||{|{||||{|{|||{|{|}|}|}{|}|}|||}|}|}~}|}|}|||}|}~|}||}~|{|}}~|}}|~|}|}|}|}||~|}|}|}~~|}|}~|~}|}~|}||}~|}|}}~|}|}|~|}|}}|}|}|}||}|||{|{|}~|{|{|||{|{|||}|{|||||{||||{|||||{|{|||{|{||{|{|{}|}|}{|}|}|~|}|}|~|}|}|~}||}|~}|}||~}|}|}~}|}|}|}}|}|}{|{|}{|{|{|||{|{|||}|{|||||{||||{|||||{|{||{{|{||||{|{|{||}{{|{|||||{||||}{||||||||||||{|||{|{|||||{|{||||{|}|}|}{|}|}|||}|}|}~}|}|}|||}|}~|}{|}~|{|}}~|}|}|~|}||}|}||~|}|}|}~~|}|}~|~}|}~|}||}~|}|}}~|}|}|~|}|}|}|}|}|||}||||~|~}~|}|~}~}~~~}~}~|}~~}~}|~}~~}~~}~}~~}}~}~}~~~}~}~}~}}}}}|}}}}}}}}}}}}}||}}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}|}}|||}}|||||}|||||||}||||}||}|||||||}|||||||}|||||||}|}}|||}}|||||}||||||{}||||}||}|||||||}|||||||}|||||||}|}}|||}}|||||}||||||{}{|||}||}|||||||}|||||||}|||||||}}|}|}}|}}||}}|||}||||~~|}}}}}}}}}}~}}}}}|}~}}}}|}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}~~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~~~}||||}}||||~}}||||||}|||}}|~}||||}|~}||||}|~}||||}|~|}}|}||}}|}|}}}}}|}||}}}|}|}}}}}||}}}}}}}|}}}}}|}|}}}}|}|||||}|||||}}}||||||}||||}}}}||||}}}}||||}}}}||||}}}|}|||||}|||||}}}||||||}||||}}}}||||}}}}||||}}}}||||}}}|}|||||}|||||}}}||||||}||||}}}}||||}}}}||||}}}}||||}}}}}~~}}}}}}}}}}}~~}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}|}}}}}}~}}}}}}||}}}}}}}|}}}}}}|~}}}}}}|~}}}}}}|~}}}}}}|}}}}}}|}}}}}}|}}}}}}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}|}}}}}}|}}}}}}||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}|}}}}}}|}}}}}}|||}||}}}}}}}}}}}}}}}}}}}}}}|}~~}}}}}}}}}}}~~}}}}}}}~}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}|}||}}|}|}}}|}|}||}}|}|}||}}|}||}}}|}}|}}}}||}|}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}~~}||||}}||||~}|||||||}||||}}|}|||||}||||||}|~|||||}|~|}}|}||}}|}|}|}|}|}||}}|}|}||}}|}||}|}}}}|}|}}||}|}|}}|}}||||}}|||||}||||||}}||||||}}||||||}}|||||}}||||||}}}|}|~~}}}}}}}}}}}~~}}}}}}}~}}}}}|}~}}}}|}}~}}}}}}~}}}}}}}~}}}}}}|}}}}}}}}}}}}}|}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}|}}||||}}|||||}||||||}}||||||}}||||||}}|||||}}|||||}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}~~}||||}}||||~}|||||||}||||}}|}|||||}|}|||||}||||||}|~|}}|}||}}|}|}|}|}|}||}}{}|}||}}|}||}|}}|}}|}|}}|}|}|}}}|}|}~~}}}}}}}}}}}~~}}}}}}}~}}}}}|}~}}}}|}}~}}}|}}}~}}}}}}~}}}|}||}}|}|}}}|}|}||}}|}|}||}}|}||}|}}|}}|||}}||}}|}}}}}}}}|}}}}}}|}}}}}}|}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}}}}|}}||||}}|||||}||||||}}||||||}}||||||}}||||||}}|||||}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}~~}||||}}||||~}|||||||}||||}}|}|||||}|}|||||}|}|||||}||||||||||||||||||||}|||||||}|||||||}|||||||}|||||||}{||||||{||||{||||||||||||||}|||||||}|||||||}|||||||}{|||||||{||{{{|||{|}|||||||}||||{||}||{||||}|||||||}{|{||||{|{|{{{{|{{||||{||{||||{{|{|}||{{|{|}|{|{|{|}||||||||{|||{|||||}|}}||}|}|}|}||}}|}|}||}}|}||}|}}|}}|}|}}||}|}|}}||}|}}}|}|}|}}}|}||~}|}||}|~}|}}|}|~}||}|}|~}}|}|}|~|||||}}||||||||||||}|||||||}|||||||}|||||||}|||||||}|||||}}||||||||||||}|||||||}|||||||}|||||||}|||||||}|||||}}||||||||||||}|||||||}|||||||}|||||||}|||||||}|||}|}}||}|}}|}|}|}}|}|}||}}|}||}|}}|}}|}|}}||}|}|}}||||}}}}||}}}||}}}}|}}}}}||}~}}}|}}}~}}}}}}}~}}}}}}}~{||}|}|||}|}||}|}||}}}|}||}}|}||}|}}|}}|}|}}||}|}|}}{|||||||||||||||||||~||||||~|||||||~|||||||~|||||||~{||||||||||||||||||||||||||}|||||||}|||||||}|||||||}{|||||||||||||||||||||{||||}|||||||}|||||||}|||||||}{|}|}}||}|}|}}|}|}||}}|}|}|}}|}}|}|}}||}|}|}}}|}|}|}|||||}}}|||}}}}|}}}}|}}}}}}||~}}}|}}}~}}}}}}}~}}}}}}}~{||||}}|||||{{|||}||}||}||||}|}||||}}||||}|}}||}|}|}{||}|}|||}|}|{}|}||}}|}|}||}}}||}|}}|}}|}|}}||}|}|}}{||||||||||||{{|||{|~|||||||~|||{||~||{||||~|||||||~{|{|{|||{|{|{{{{|{{|}||{||{||||{|{|}||{{|{|}|{|{|{|}{||||||||||||{||||||}|||||{|}||||||}|||||||}|||||||}|||{|{}|}||{}|}|{}|}|{}||}|}|{|~|}|{}}~|}}|}|}~||}|}|}~||||||||||||||||||||||||||||}||||||}|||||||}|||||||}{||||}}|||||{{||||||}|||||||}||||||||||||||}|||||||}{||}|}|||}|}{{}|}||}}|}|}||}}|}||}|}}}}|}|}}||}|}|}}{||||||||||||{{|||{|~|{|||||~|{||{||~|{||||~|||||||~{||||||||||||{{|||{|}|||||||}|||||||}||||||}|||||||}||{|{|{}|}||{}|}|{}|}|{}}|}|}|{|~|}|{}|}~|}}||}~||}|}|}~{|||||||||||{{||||||||||||||||||||||}||||||}|||||||}{|||||||||||||||||||}|||||||}|||||||}||||||}|||||||}{|{||}}|{||||{||||||||||||{|||||{||||||||||||||||||}{||}|}|||}|}{{}|}||}}|}|}||}}|}||}|}}|}}|}|}}|}|}|}}{|{|{|||{|{|{{{{|{{|}{|{||{|}||{{|||}||{{|{|}||{|{|}||{||{|{}|}||{}|}|{}|}|{}||}|}|{|~|}|{}|}~|}}|||}~||}}|}~{|||||||||||{{||||||}|||||||}|||||||}|||||{|}||||||}{|||||||||||{{{|||{|}{||||||}|||||||||||||||}||||||}{|||||||||||||||||||||||||||}|||||||}|||||||}||||||}{|{||}}|{||{{{||||||||||||{|||||{||||||||||||||{||||{{{|{{{{{z|{{z{{|{{{|{{{{||{{z{||{{{{||{{{{{||{{{{{{{{||{{{{{z}{{{z{|{{{||{{{||{{{{||{{{{||{{{{{||{{{{{{{{|}{{{{{{}{{{{||{{{}{{{{}|{{{{}|{{{{}|{{{{{}|{{{{{{}|}}|}|}|{}}|}|z||}|~}|}|~}|}||~}|}|}~}|}|}|~}|}|}|}{{{{{{{{{{}}|}}}|}|}||}|{||||}|}}|}|}}|}||}}|}|}}}|}|}|}}|}|}|}}|}}}|}|}||}}{||||}|}}|}|}}|}||}}|}|}}}|}|}|}}|}|}|}}|}}~|}|}||}}|||||}|~}|}|~}|}||~}|}|}~}|}|}|~}|}|}|}}|}}}|}|}||~}|}|||}|}}|}|}}|}||}}|}|}}}|}|}|}}|}|}|}~}~}}}~}~}}}~}~}}}~}}~|~}}~}~|}}~}~}~}~}~}~}}~}~}~}~|{|||{|{|{{}|{{{||{{||{|{||{|{{||{|{|||{|{|{||{|{|{||{||~{|{|{{}|{{{||{{~|{|{~|{|{{~|{|{|~|{|{|{~|{|{|{||{|||{|{|{{~|{{{||{|||{|{||{|{{||||{|||||{|{||||{|{||{||~{|{|||~|{|{||{||}|||~}{|||~}||{|~}||{|{~}||{|{||}|}}}|}|}||~}|}|}||}|}}}|}}|}||}}|}|}}}|}|}|}}|}|}|}{{{{~{{{{{{}{{{{{|{{{~|{{~|{{{{~|{{{{~|{{{{{~|{{{{{{{{{|}{{{{{{~{{{{{|{{{}|{{||{{{{}||{{{}||{{{{}||{{{{{{{{|}{{{{||}{{{{{|{{{}||{{|{{|{}|{{{{}|{{{{{}|{{{{{{{|{|~|{|{{|~{|{||||{|}||{|~|{{|~||{|{~||{|{|~||{|{|{|}|}||}}|}|{}}|}{}}}}|}}|{|}}|}|}}|}|}|}|}|}|}}|}|}|}|}|}}}|}|}||~}|}||||}|}}|}|}}|}|}}|}|}}}|}|}|}}|}|}|}{{{||{{{{{z~{{{z{|{{{||{{{||{{z|||{{{|||{{{{|||{{{{{{{{{}{{{{||}{{{z{|{{z|||{{||{{|{|{{{{}|{{{{{}|{{{{{{{{{|}{{{{{|}{{{{|||{{||{{|}|{{z|}{{{{}||{{{{}||{|{{{}|}}~|}|}|{~}|}|{||}|}}{}|~}{}||~}}|}~}|}|}|~}|}|}|}|{{|{||}||{|{|}||{{|||||}|{||}|{{||}||||}|||||{}|||||||}|}}}|}|}|{}}|}||||}|}}|}|}}|}{|}}|}|}}|}|}|}}|}|}|}{{{{}z{{{||}{z{z{|{{{|||{z||{{|{||{{{{|{{{{{}|{{{{{{{{{|}{{{{{|}{{{{||{{{|{{{{}|{{z|}|{{{{}{{{{{}||{{{{{}|}}}|}|}|{}}|}|{||}|}}{}|}}{}||}}{}|}}}}|}|}}|}|}|}{{{z~{{{{{{~{{{{{|{{{}|{{{~{{{{{~|{{{{~||{{{~||{{{{{||{{|{|{}{|{|{|}|{{{||||{}|{||}|{{||}|||{|}|||{{}|||||{|}|}}}|}|}|{}}|}|{||}|}}|}|}}|}{|}}|}|{}}|}|}}}|}|}|}{{{{}{{{{||}{z{z{|z{{|||{{||{{|z||{{{{||{{{{{|{{{{{{{{{|}|{{{{|}{|{{|||{||{{{|}{{{z{}{|{{{}{|{|{{}{{|{|{}|}}}|}|}|{|}|}|{||}|}}{}|}}{}||}}{}|}}}{}|}|}}}|}|}{{{|}{{{{{{}{{{{{|{{{}|{{{}|{{{{}{{{{{}|{{{{{}|{{{{{{{{z~{{{{{z~{{{{{|z{z||{{z~|z{{z~|z{{{~||{{{{~||{{{{|{{{{|{|{}{|{|{|}|{{{{|{|{}|{|{}|{{|{}|||{|}|{|{{{}|{|{||}|}}}|}|}|{|}|}|{||}|}}|}|}}|}z|}}|}|{}}|}|}{}}|}|}|{{{{{{{{{|{{{z{{z{{{{|{{{{{|{{{{{||{{{{||{{{{||{{{{{{{{{{{{{{|{{{{z{{{{{{|{{{{{|{{{{{||{{{{||{{{{||{{{{{{{{{{{{{{|{{{{{{{{{{{|{{{{{|{{{{{||{{{{||{{{{||{{{{{}{{{{}{{|{}}{}{|}{}{}}||}{}}|{|{}}|}{{}}|}{}{}|}{}{}{{{{{{{{|{{|{|||||{{|||||}}|||||||||||{||||||{||||||||||||||||||||||||{{{||||}}|||||||||||{||||||{|||||||||||||||||||||{||{{|{|||}}|||||||||||{|||}||{||}|||||}|||||}|||||||||{{|||||}}|||||||||}|{|||}||{||}|||||}|||||}||||||||||{|||||}}|||||||||||||||}||{||}|||||}|||||}|||||||{|{{{|{|||{|{|{|{{{{|{{|{||{|{{||{|{|||{|{|{|{|{|{||{|{{{|{|||{|{|{|{{{{||{|{|}{|{{|}{|{||}{|{|{}{|{|{||{|{{{|{|||{|{|{|{{|{|{{|{||{|{{||||{|||||{|{|||{|{||{||{{|{|||{|{|{|{{|{|{{|{||||{{||||{|||||{|{|||{|{||||{{|||||}}|||||||||||{|||}||{||}|||||}|||||}|||||||||||||||||}}|||||}||||}||||}|||||}|||||}|||||}||||||{{{{{{{{{{|{{{{{{{{{{{||{{{}{{{{{}{{{{{}{{{{{}{{{{{{{{{{{{{{{{|{{{{{{{{{{{|{{{{|{{{{{||{{{{||{{{{||{{{{{{{{{{{{{{{|{{{{{{{{{{{|{{{{||{{{{||{{{{||{{{{||{{{{{{|{{{|{|{|}}{|{|{{|{|{||{{|{|{{|{}|{|{{}|{|{|}|{|{|{|{|{{{|{|||||{|{||{|{|||{|{|}|{{|}||{||}||{|{}||{|{||||{||{{|{||{||{|{||{|{|}{||{|}||{|}||{||}||{|{}||{|{|{{{{{{{{{{|{{{{z{{{{{{|{{{{{|{{{{||{{{{||{{{{||{{{{{{{{{{{{{{{|{{{{{{{{{{{|{{{{{||{{{||{{{{||{{{{||{{{{{{|{{{|{|{|}}{|{|{{|{|{||{||{||{{|||{|{|}|{|{|}|{|{|{|{|{{{|{|{|||{|{||{|{|||{|{||{|{{|}|{||}||{|{}||{|{||{{{{{|{{||||{|{{|{|{|||{|{||{{{{|||{{{|||{{{|||{|{{{{{{{{|{{{{{|{|{{{{{{{{{{}{{{{{}|{{{{}||{{}|{{{{}|{{{{{{{{{{{{{{{|{{{{{{z{{{{|{{{{{||{{{{||{{{||{{{{||{{{{{{{{{{{{{{|}}{{{{{{{{{{||{{{{||{{{{||{|{{|{|{{}|{|{{{|{|{{{|{|{|||{|{|{{|{||{{|{||{|{{||{|{||||{|{|||{|{|{{{{{{{{{||{{{{{{{{{{{||{{{{|{{{{{}{{{{{}|{{{}|{{{{{|{{{{{|{{||||{|{{|{|{|||{|{||{{{{||||{{{||||{|||{|{|{{{|{{{|{{{{{|{|{{{{{{{{{{}{{{{{}|{{{{}||{{{}|{{{}|{{{{{{{{{{{{{{|}}{{{{{{{{{{||{{{{||{{{{||{|{{||{|{{|{|{{{|{|{{{|{|{|||{|{|{{|{||{{|{||{|{{||{|{|||{|{|{||{|{|{{{{z{{{{||{{{{{{{{{{{|{{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{{{{{{{|{{{{{{{{{{{||{{{{|{{{{{}{{{{{}|{{{{}|{{{{|{{{{{|{{||||{|{{|{|{|||{|{||{{{{||||{{{|||{|{|||{{|{{{|{{{{|{{{{{|{|{{{{{{{{{{}{{{{{}|{{{{}||{{{}|{{{{}|{{{{{{{}{{{{{|}{{{z{{||{{{{|{{{{{||{|{{||{{{{||{{{{||{{{{{{{{}{{{{{|}{{{{z{||{{{{|{{{{{|{{|{{||{{{{||{{{{||{{{{{{|{}{|{|{|}{{|{|{|||{|{|{{{|{||{||{||{|{{||{|{|||{|{|{|}|}|}|}||}||}|}|||}|}|}}{|}|}}||}|}}|}||}}|}|}|}|}|}|~}~{~}~}~|}|~}~}~~~}~}~~}|~}~~}~|}~~}~}~~~}~}~}~}~}~}~{{{|}{{{|}{{|}{|}{}|}||||}}|||||}||{|||}||||}|||||}|||||}|||||}|||||}||||||||||}}|||||}||{|||}||||}|||||}|||||}|||||}|||||}||||||||||}}|||||}||||||}||||}|||||}|||||}|||||}|||||}||||||||||}}|||||}||||||}||||}|||||}|||||}|||||}|||||}|||||||}||}}}|}||}||}|}|}}|}|}}||}|}}||}|}}|}||}}|}|}}}|}|}||}||~~}|}|}}}|}|}}~}|}}~}||}}~}||}}~}|}|}~}|}|}~}|}|}||||{}||||||}{||||}|}{{{|{{||}|||{|}|||||}||||||||||||||||{}||||||}{||||}|}|{{|{{||}|||{|}|||||}||||||||||||||||{}||||||}{||||}|}||{|{{||}|||||}|||||}||||||||||||||}|{}|}|}||}{|}|}}|}}|}}}{|}}}}||}}}}|}|}}}|}|}|}|}|}||||{~~|||||}|||||}|~|||}|{||}~||||}~||||}~|||||~||||||}|}}~~|}|}}}}}|}}}~~|}}}~}}}}~|}|}}~|}|}}~|}|}|~|}|}|}}{|{{}{|{|{|}{{|{|{|||{|{|{{{{|{{||{||{|{{||{|{|||{|{|{{|{{}{|{|{|}{{|{|{|||{|{|{{{{|{{||{||||{{||||{|||||{|{{}{{}{}{}{|}{{}{}{||}{}{}}{{}}}{|}{}}|}{{}}|}{}|}|}{}{|||{~~|||||}|||||{|~||||||{||||||||~||||{~|||||~|||||||}|{}}}|}||}||}|}}|}}|}}}}{|}}}||}}}}|}|}}}|}|}}}|}|}||||}~~||||}}}|||}}~~||}}~|}|}}~||}}~||||}~|||||~||||||}{{{{{}{{{{{|}{{{{{{||{{{{|{{{{{||{|{|||{{{|||{{{|||{{{{{}{{}{}{}{|}{{}{}{||}{}{}}{{}{}}{|}}}|}{{}}|}{}|}|}{}{|||{~~|||||}|||||{|~||||||{|||||||||||||{~|||||~|||||||||{}{|||||}{||||}|}|||}|{{||}|||||}||||}||||||||||||||}|{}}}|}||}||}|}{|}}|}{}}{|}{}|||}{}}}|{}}|}|}}}|}|}||||}~~||||}}}|||}}~~||}}~|}|}}~|{|}}~|||}~|||||~|||||||{|{}{{}{}{}{|}{{}{}{||}{}{}}{{}{}}{|}{}}|}{}}|}{}|}|}{}{|||{~~|||||}|||||{|~||||||{||||||||||||||{|||||~|||||||||{}{|||||}{||||}|}|||}|{{||}|||||}|||||}||||||||||||{|{{}||{|{|}{{|{|{|||{|{|{{{|{||{||{||{|{{|||{|||{|{|{|}|{}}}|}||}||}|}{|}}|}{}}{|}{}|||}{}}{}|{}}||}}}|}|}||||}~~||||}}}|||}}~~||}}~|}|}}~|{|}}~||||}~||||~|||||||{|||||{~~|||||}|||||{|~||||||{||||||||||||||{|||||||||||||||{}{|||||}{||||}|}|||}|{{||}|||||}|||||}||||||||||||{|{{}||{|{|}{{|{|{|||{|{|{{{|{||{||{||{|{{||{|{||||{|{{{{{}{{{{{|}{{{{{{||{{{{|{{{{{||{|{{||{{{{||{{{{||{{{{|}|{}}}|}||}||}|}{|}}|}{}}{|}{}|||}{}}{}|{}}|{|}}}|}}||||}~~||||}}}|||}}~~||}}~|}|}}~|{|}}~||||}~|||{|~||||||{||{|}}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~}{{|{||}||{|{|||{|{|{|{|||{|}}{||||}}}{|{{|}}}{||{|}}|{}{}||||}{||||}{||||||}|||||{}}||||||}}||||||}}||||||}}|||||||||{|||}|{|||||{||||||||||||||||||||||||||||||||{{||{||||{{{|}|{{{{{|{z{{{|{|{{{{||||{{{{{|||{{{{{|||{{{}|~|~}|~|~{}|~|~|~~~|~|~}|~~|~||~}~~|~~|~}~~||~|~}~{{{}|}||}|}|}|}|}|}|||}|}|}|}}}|}||}}}}|}}|}}}}||}|}}}{}{}|||||}||||}{||||||}||||||}}||||||}}||||||}}||||||}}|||||||||||||}|{|||||{||||||}|||||{|}|||||||}|||||||}|{{||{{||||{{|}|{{{{{|{z{{{|||{{{{||||{{{{{|||{{{{{|||{{z||{{||||{{|}|{{{{{|{{{{{||}{{{{|{|}{{{{{{|}{{{{{||}{}|}|}||}|{|}|{{||{{{{}}|||}~~~||}||}|~}|}~}}~}|||~}}~}||}~}}~|}|}~}}}|}|}~}}|}}}}}}}}}}}|}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}{}}}}}}}}}}}|}}}}}}|||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}{}}}}}}}}}}}}}}}}}}|}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}{}}}}}}}}}}}|}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}{}}}}}}}}}}}|}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}~~}}}}}|}}}}}}~~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}|}|||~~}|||||}|||||~|}||||||}||||}|~}||||||~}||||||~}}{}|||||}|||||}|||||||}||||||}|||||}}}|||||}}}|||||}}}}{}|||||}|||||}|||||||}||||}{}||||||}}||||||}}||||||}}}{}|||||}|||||}|||||||}||||||}{{||||}}||||||}}||||||}}}{}|||||}|||||}|||||||}|||||{|{{{||||}|||||||}|||||||}|}}|}|||~~}|||||}|||||~~}||||}|~}||||}~}||||}}~}||||}}~}}|}|||||}|||||}|||||||}||||}|}}|||||}}|||||}}}|||||}}}||}|||~~}|||||}|||||~||||||||||||||}||||||||~|||||||~|||}|||||}|||||}||||||||||||||}|||||{}}|||||}}||||||}}|||}|||||}|||||}||||||||||||}||||||||{|||||||||||||||||||}|||||}|||||}||||||||||||||}|||||{{}{{||||}|||||||}||||}|}|||~~}|||||}|||||~~}||||}|~}|||||}~}|||}}~}||||}}~}||}|||||}|||||}||||||||||||||}|||||||}|||||}}||||||}}|}{}|||||}|||||}|||||||}||||}||}|||||||}||||||}|||||||}{{}|||~~}|||||}|||||~|{|||||{}{||||}|}{||||||{||||||~{{{||{|||||{|{|}|{|{|{|{|||{||}{||||{}}{|{{|{}}{|{||}|{{{}|{{||}|{{||}|{{|{{|{{|{|}{||{|{|||||{|{{|{||{|{|||{{||{}|}|||~~}|||||}|||||~~}||||}|~}|||||}~}||||}}~}|||}}~}{{}|||||}|||||}|||||{|{||||||}|||||||}||||||}}|||||}}{||}|||||}|||||}|||||||||||||||||||||||||||||||||||||||}z}|||||}|||||}|||||||}||||}{|}|||||||}|||||||}||||||}{{}|||~~}|||||}|||||~|{|||||{|{||||}||{|||||||{||||||{{{||{|||||{|{|}|{|{|{|{|||{||}{||||{}}{|{{||}}{{|{|{}|{}||{|z||{|{|{|{|{{z{|{{{||{||{{|{}|||{{|{|||||{{{|||{{{|{{{{|{{{||{{{{|{|{||{|||~|||{{{}~|||{{|}~||{|{|}~|{{{|{|{{|{|{}z|{|{{z{{{{{||||{{{|{|||{{{|{{||{|{{{{|||z}|{{||{{{|||{{z|{{|z|{||{||{|{{|{||{|{{|{||{{|{|{|||{}|{{{|{{{||||{{|{{{||{|||{|||{{{|||||{{|||||{|{||||{z|{{{{{{{{{{|{{{{{{{z{{{{{||{{{{{{||{{{{{{||{{{{{{|||{}||{|{|{|{}||{|{{{{|{{{|}~||{{|||~||{{|{|~|||{{{|~||z}|{{{|||{|||{{{|{||z|{|||~|{|{{||~|{|{{|{~|{{|{|{~||{}|{{{{|{{||||{{|{{{||{|||~|||{{{|~|||{{||~||{|{||~|{z||{{{{{{{{{|{{{{{{{z{{{||~|{{{{{{~|{{{{{{~|{{{{{{~|{z{|{{{{{{{{{{{{{z{{{{z{z||~|{z{{{|~|{z{{z{~|{{z{{{~|||||{{|{{{|z{{z||}||||}}||||}}|}|||||}|||}}||}|||}}||}|||}}||||||}}||{}|||{}|||{|}}||{||||||||}~|||||||~|||||||~|||||||~||{}||||}||||{}}|{|{|{|||||}|||||||||||||||||||||||||||{}||||}|||||}}|{||{{|||||}|||||||||||||||||||||||||||{}||||}|||||}}|{|||{|||||}||||||||||||||||||||||||||||}||{||||{||}}|{|||{||||||||||||{|||||{|||||||||||||}|}}||||||||||}}||||||||||||||||||||~|||||||~|||||||~||{}||{||||{|||||{||{{|||{||||||{|{|||||{||||||||{|||||{}||{||||{|||||{||{{|||{||{~||{|||~|||{|||~||||{||~||{}||{||||{|||{|{||{{|||{|||{|{{|{|||||{||||||||{|||||{}||{||||{|||{|{||{{|||{||{{|{z|{|||||{||||||||{|||||{}||{||||{|||||{||{{|{|{|||||{|{||||{|{||{||{||{|{||{||{}||{z||||{|||||{|{||||{||{||||{|{~|||{{||~||{|{||~||{}|{{|{|{{||}}|{|||{{||||||{||||{|||||{||||||||||||||{}|{{{{|{{{{|||{{{{{{|{{{||{||{{{{|{|{{{{||||{{{{|||{z||{{{{|{{{{{|{{{{{{{z{{{|{~|{{{{|{~|{{{{{~|{{{{{{~|{z|{{{{{{{{{{{|{{{{{{{z{{{{|{|{{{{{{||{{{{{||{{{{{{|||{}||{|{||{|||||{||{{{||{|||{|||{{{|||||||||||||{||||{{{{{|||{|{||{|||||{||{|{||{|||||||{|{|~|||{||~||||{||~||{}|{{{||{{{||||{{|{{|||{|||||||{{||||||{{||||{|{||||{{{|{{{{|{{{|}}{{{|{{{||{||{||||{{{|||||{{||||{|{|||||{}|{{{{|{{{{|||{{{{z{|{{{||{||{{{{||||{{{{|{|{{{{|||{z{|{{{{|{{{{{|{{{{{z{z{{{|{~|{{{{|{~|{{{{{{~|{{{{{~|{z|{|{|{{|{|{{||{|{{{{{{{{{|||{{{{{|||{{{|{{||{{{{{||{{{|{{||{{{{|{{{|||{{{|{|{||{||{||||{{{{~|||{{||~||{|||~||{}||{|{||{|{|||{|{{{{|{{{||{||{{||||||{{|{{||||{{||||z}|{{{||{{{|||{{{|{{|{|{||{||{|{{{|||{|{{|{||{{|{|||{{{|{{{{|{{{|}}{{{|{{{||{||{{|||{{{|||||{{|||||{|{||||{}|{{{{|{{{{|||{{{{z{|{{{||{||{{{{||||{{{{||||{{{{|{|{{{|z{{{||zz{z|{{zz{{{{~|{{{{{{}|{{{{|{||{{|{{{||{zz{{|{{{{|{{z{y|{{zz{{z{}}{{{{{{|}{{{{|{{}{{|{{{{}{{{{|{{{{{{{{z{z{{|{z{{{||{{{{{{{}{{{{{{{}{{{{{{{}z|{{||{{{{|z{{{{{{{z{{{{||{{{{{{||{{{{{|||{{{{{|||{{{}{|{}{{}{{}{{{{y{{{{|~~{{{{}{}~{{}{{|}~{{{{{|}~z|{}{~{}{|}{{}{|{{zz{{{|~~{{{{}{}~{{}{|{}~{{|{{{}~{z{{{~{{{{{{{z{z{{|{z{z|~~{{{{{{|~{{{{{{{~{{{{z{{~z|{{{~|{{{|z{{{{{{{z{{{|~~{{{{{{|~{{{{{||~{{{{{||~zz{{{~{{{{{z{z{{{{z{z{z|~~{{{{{{{~{{{{{{{~{{{{{{{~{{{{{z{{{{{||{}|||{}|}|||||}|||}|}{~}|}|{}|}}|}}|}|}}||}|}|}}||||{||||{|||||{||{|||||~}||||||}}||||||}}||||||}}{|||}~|||}{|}{|}{||}}|{|}~|{|||}|~|{|}{||~|}{|{||~{|||||||||{||{||{{{||{{|}}|{|||||}|{||{||}||{|{||}{|||||||||{||{||{|{||{||}}|{|||||}|{||{||}||{|{||}{~{|{||{|{~~{{|{~{{|{~{~}}{~{{|{~}{~|{~|~}{{~{~|~}}|||{{~||{{|}|||{|||||{|{|}|{|||||~|{{{|||~|{|||||~{|{{{||{{{||{{{{|{{|{|{{{~}{{{{{|}{{{{|||}{{|{{||}{{{{{~|{{{|{{{{{|{{|{{{{|}~{{{{{|~{{{{||{~{{|{{|{~{{{{{||{{{|{{z{{|{{|{{{{{}|{{{{{|}{{{{||{}{{|{{|{}{{{|{||{|{||{{|{|{{z{{z{{}}{{z|{|}{{|{|{|}{{|{{{|}{z{{||{{{||{|{|||{{||{{z|}|{z{{||}{z{||{{}{||{{{{}||{{{{{~|{{{{||{|{{|{|{{|{||}|{|{{{~|{{{{|{~|{{|{|{~z|{{{||{{{{|{{{{{{{{{{{{{}|{{{{{{|{{{{{||}{{{{{||}z|{{{|{{{{{|{{{{{{{{z{{{{~|{{{{{{||{{{{{||{{{{{{||zz{{{~{{{{{{{{{{{{{{zz{z|}~{{{{{{{~{{{{{{~{{{{{{{~{{{|{||{|{{|{{|{{{{|{{{{{}|{{{{|{|}{{{{{|}{{{{{{|}z|{{{||{{{||{{{{|{{{{{{{{}|{{{{{{||{{{||||{{|{{||||{{{{{|{~|{|{||{{|{|{{{{{{{|||{{{{|{|~{{|{||~{{|{{||~{|{{{|{{{{{|{{{{{{{|{{{{{}|{{{{{{|}{{{{{{}{{{{{{|}z{{{{||{{{{{{{{{{{{{{{{{{}}{{{{{{||{{{{{|{{{{{{|{}z|{{{|{{{{{|z{{{{{{zz{{{{~|{{{{{{||{{{{{{||{{{{{||{|{|{||{|{{|{{|{{{{{{{{{{}|{{{{|{||{{{{{|||{{{{|||zz{{{|{{{{|{{{z{|{{{{{{z{}}{{{{{{||{{{{|{{|{{{{{{||{{{z{{{{~|{{{{{{{|{{{{{{{{{|||{{{{{{{~{{{{{{{~{{{{|{~{|{|{||{|{||{{|{|{{z{{{{{}|{{{{|{||{{|{|{||{{|{{||{z{{{|{{{{{{{{{{z{{|{z{z{{}{{{{{{|}{{{{{{{}{{z{{{}z{{{{||{{{{{{{{{{{{{{{{{{}|{{{{{{{|{{{{{|{|{{{{{|{{z~{{{z~{|{{z~{{z{zy|zzz~}~|z~|{{~|~{{|z{~{{z{|z{~|z~|}|z~|{{|yy|z|{yzz{zy~~}z{~|{}|z~|z|{}||z|z{{}|~{|}|~z|}|{|zy|{{{z{z{zz}~~z{|}{|~z|}{|z|~}{{{|z|~~{{{{~z{{{{{~z{y|z|yz{z|~}~zz~{{|~z~{z|{{~{z|z{{{~{{z{{{~{{{{{zz{{zzzzzzzz|||zz{{{{{z{{{{{{{{{{{{{{{~{z~{{~~{|{zzzz{zzzz|zzz~~~|y~|{z~|~{{z{z~{{z{z{z~~zz~}}z~}|{}{~}{z{zy{{zz~~~z{~}{}~z~}{|z}~}{{{|z}~~{z~}}~z}{{}~{}z|{zyz{zz~~~z{~}{}~z~}{|{}~}z|z{{}~~{{~{{~~{{{{zz{{zz|zzzz|~~~zz~{{|~z~{{{{{~{{{{{{{~~{z~|}~z{|{|z{|z{{z{z{zz~~~z{~|{}~z~|{|{}~|z{{|{}~|{{{{|z{z~||~}}~|~}|}|~~||{}}|{||~}~|{~}}}~|~}|{}}~}|{|{}}~~|{~}}~{~}|{}~~}|}}|||{|~~~||~}|}~|~}|}{}~}|}{}{}~~{|~}}~{~}||}~~}{}|||}{|~~~|}~}|}~|~}{}|}~}{}{}|}~~||~}}~|~}}||~~|}{{|}}||~}~|{~}}}~|~}}{|}~}}{|{|}~~{{~}}~{~}|||~~||{{|||{|~}~|{~}|}~|~}|{|}~}|{{{|}~{{z|}|{~|}|{|{{|{||{{|{z}~||{|}{|{||}{|{|{}{|{|{|{~{z~}~~~~}|{~~~|{~~z{{~{z}~{~~}{~~z~}{~{~~}{~{~{~~|~{{~|}~~~~{{|~~~{~~{{{~{{~}{~~~{}~{~~{~{}~|{~{~{}~|{{{|}|~{|{{|z{|{|{|{{|z||~}{{|{}|z{|{|{}||{|{|{}|~{{|{{~~|{{{{z{{{|{|{{{z|}|~z||{|~z|{{|{{~{{|{|{{~~zz~}|~z~}|{|~~|{|{zz{{zz|}~z{}{|~z~}{|z|~}{|z{z|~|{z~{{|~~{|{{|{{||z{||{zz}|}|z~||||~{||{{|{||{z{{|{}~{{|{{~~|{{|{{|{{z{||{zz|}|}zz|||~z|{{||{~{{{{||{~~{z~|}~z~|z{|~~|z{{z{z{zz~}|z{~|{}z~|{|{}~|z{{|{}~{{z{|}{z{|z{|z{|z{{zzz{zz|~|z{{|{}{{|z{{}{|z{z{{}{~{z~{{~z~{|z{~~{{|zyz|{zz}}~|z||{|~|{{|z{~{{|zzz{~{{z{}|{~z}|{|{z|{z{zz{{zz|}|z{{}{|{zz{{{|{}{{{{{|{|{z~|}|z~|{{|z{|z|{z{z{zz|}}z{~|{}|z~||{}||z|{|{}|z|{~{z|}|~z|}|{|{{|{|{z{z{zz}}|z{|}{|~z|}{||~}{|{|z|~{{z{|}{~{|{{|z{|{{{zzz{zz|}|z{{|{}{z{|{{{{|{{{{{}{~{{~{{~z~{z{{~~{zz{|{zzz|~}}zz~|{||z~{{|{{{z{{|{{~{{z|{z{~|{|{zzzz{zzzz|zzz}|||y||{z{|z{{z{z{{z{z{z{{{z{}}{z{}|{|{{|{{{z{{{zz|}|z{{}{}{z{|{|{}{}{{|{}{|{{~{{|z~{{{{zz{z|z|zz{z|||}zz~{{||z~{{|{{|{zz{{{|z|{{~{z|{{~z|{|{zz{{{z{z{|zzz}|||z||{z~||{{|z{~{{z{z{~{{z{}}{z{}|{|{{|{|{zzz{zz|}|z{{}{}{z{}{|{|{}{|z{}{|{{{{{|~{{{{{zz{{zz|zzzz|||}zz{{{||z{{{{{{z{{{{{{|~{z~{{~z~{z{{~~{z{{z{zzzz~}|zz~|{{{z~{{|z{{{z{{|z{{zz{{z{z{{z{zy{z{zzz|{zzz|{zzz}{{z{}{{z{z{{{zz{z{z{zz}{{zz{{|z{z{{zz{yyzzzz}}zzz}|{{z}{z|{{z}{zzz|{{zzzz{{zzz{}|zzzy|zz{zzzzzz|~zzz{}{zz{{{|{zz{{zz{|{z{{{z{{{z||z{{zz{{zz{zy{z{}}{z{}{{{{}{zz{{{}{zzzz{{z{{z~zzz~}zzzzzz{zzzzz{zz~~|zz~{zz{~{zzzz{~{zzzzzzz{zz~{{z~{z{zz{{{zzz|{zzz~~|zz~{{z{~{{z{z{~{zz{z{z}{zz~{}z~}|z}z{}zz{zyzzzz~~|zz~}{}{~}z|{}{~}zzz|{}}{{|~{}{{}{{}z{}{z{{yz{{{~~|z{~}{}{~}{{{}{~}{{z{{}{{zz~{{{z|z{{z{{{zz{|{zz{~~|z{~{{{{~{zz{{{~{zzzz{{zzzzzz{{||{{|}{|{{|}{{|z{|z{{{z{{{}}|z{}|{|{}|{{{|{}|{{{{{||{{|~}|{{~}{}|z}|{|}}|{{|~}|||~|}|{~||{}|{~||{|{}||{{|}{|{{|}{{|{{}{{{{z{{{}~|z{}}{|{}}{{{|{}}{{{{{|}{|{}|}{||}}|||||||}|||}|}~{{|}}|}{}}|}|}{}}|}|}|}||{|}|||{|}{||{||||{||{{|}}}{|}||||}||{|||}||{|{||{{{z~{{{z~||{zzz{{z{{|{{z~}|zz~|{{{~{{|{{{~{{zz|{{{{{z|{{{z{}|{{zz{{z{{|{{{}~zzz}|{{{}{{|{{{|{{{z|{{{{{{~{{{z~}|{{{{}{z{{|{{{z}|zz~|{|{~|{|{{{~|{|{|{{}|{~|}{|{{|~~{|z{~{{~{|{~~{}}{{}~{|{}~{~{|{}~{~{~{||{{||{|{{|||{|z{|{z{{|{{{{|~{{}|{|{}|{|{|{||{{z|{|zzzz|zzzz{}zzzz{{zzzzzzzzz|~zz{{zzz|{{z{zz|{zz{zzz{z{z}z{zz{}zz{z{{{zzzzz{zz|}zzz{{{z}{{z{{z}{zz{zz{z{{{~{z{z~|z{zz|{{|zz|{{z|}{|z|~{z{~{|z{z{~{|z|z{z||{{z{||{{{|{||{z|{{{{||{zz{|}{{{}||{}{{||{{|{{z{||{|{{|}{|{{{||{|z{|{z{{zz{{{}}{z{}|{|}|{|{|{}|{{{|{|{z{z}z{zz{|zz{z{{{zzyzz{zy}}zzz|{z{z{zzz{z}{zzzzz{z{z{|{z{z{}z{zz{{{{z{|{zz{|}zz{}{{z{}{z{z{|{{z{z{z|{{|~{|{{~||{|z{|{z{{zz{{{|||z{~|z|{~||{|{~|z{z|{||{{{z{z{{{zz|}|zzz{{{z{zzz{zz|}zzz{|{{z{{{|{z{{zz{|{{|{{||{|{{{|{{|z{|{z{{|{{{{|}{z{}|{|{}|{{{{||{{{{{|{{zz}{{{z|{|{{z{{zz{{zyzz{}}{y{}|{{{}{z|{{}{zzz|{{{z{z}z{zz{|zz{z{{{yzyzz{zz{}zzy{{z{z{{zzz{z{zzzzz{z{zz|{z{z{{z{zz{z{zz{|{zzz}{zzz}{{z{}{zz{z{|zzzz{z|{{||{|{{{}|{|z{|zz{{zz{{{|}zz{||{|{||z|{|{||{z|{|{{{z~{{{z~|z{{z{{{zz{zz{z{|{|z{~{{z{~{{z{{{~{{{z{{|{{zzzzz|{zzz|{|{zz{{zz{{{zzzz}}zzz||{zz|{{|{zz|{zz{{z|{{||{|{{{}{{|z{|{z{{zz{{{|}{z{||{|z||{{{z{||{{z{|{{zz|{{{z|{z{{y{{{zz{|{zz{|{{z{}{{{{}{{z{{{|{zz{z{zz{{zzzzz{{zzzzzz{zzzy{zzzz{{zzz{{z{zz{{z{zz{{z{zzz{{z{zz{z{{{{z{zzz{z{z{{z{z{|zzz{|z{z{{|z{z{z|z{z{z{z|z{z|z|zz|{|y|y{{zz{yzzzzz||{zz||z|{z|{z|z||{zzz|z{{{{{{{{{z~z{{zzz}{z{{{zz{{~{{{{~{{{{{~{z{{{~{z{z{{yz|{{{|z|{y{{|z|zz|zz{zzzzzz{|zzz{}z|{z{{{|z|{{zz{|zzzzz{zzzzy~zzzzzzzzzyzzzzzz~{{zz~zzzzz~zzzzz~zzzzzzzzz{{zzzz{~zzzzzz{zzzy{zzzz~{{zz~{z{zz~{z{zz~{z{zzz{z{z{zz{{{~{z{zzz{z{z{{z{z{~{{z{~{{z{{~{{z{z~{{z{z{z|{{{z|z|{~{|z|z{{zz{yzzzzz~}{zz~|z|{z~{z|z|~{zzz|z{{{z{{{{{{|z{{{{{{{z{{yzz{{~}{{{~|{{{{~{z{{{~{z{z{{zzzzzzzzz{{{{{{{{{{{{||{{{{{{{{{{{z{{{|{{{{|{{{{{|{{{{{|{{{{{{{{{{{{{{{{||z{{{{{{{{{{z{{{|{{{{|{{{{{|{{{{{|{{{{{{{{{{{{{{{{|~{{{{{{{{{{{{{{{~{{{{~{{{{{~{{{{{~{{{{{{{{{{|{{{{{||{{{{{{|{{{{{{{{||{{{||{{{{||{{{{||{{{{{||{|{||||{||{|||||||{|||{||||{||||||{|||{|||||{|{||{|zz{z|{|z{{{|{|z{{z{{{{zz{{{zz{||{|z{|{{|{||{{{{|{{|{z{z|{|{{~{|{|z{{z{{{{z{{~{{z{~|{|{{~{{|{|~{{{{|{{|z{{z|{|z{{{|{|zz{{{{{{z{{{{z{{||{|z{|{{|{||{{{{|{{|{{{{|{|{|~{|{|{{}{{{{{{{{{{{{{~|{|{{~{||{|~{|{{|{|{|{z|{|{|{||{|{|{{||{|{{z{|{|||{||{|{{||{|{|||{|{|{zz{z{zzzz{y~{zzzzzzzzzzzzzzz~z{z~zzz{z~z{zzz~zzz{zzzz{{{zzzz{{{{zzzzz{zzzzzzzzz{{zz{{zz{z|{{zzz|{zz{zzz{{{{zzz{{{|{zz{{{{zzzz{zzzz{{{zz{z{{z|{{{z{|{z{{zz{z{z{{z{z{{~|z{z{||z|z{|z|z||{{z|~{{{|~{|{{z~{|{|z{{|{|{{{{|{|{{|{|{|{{{z{{{{{{z{||{z{||{{{|{{|{||{{z{|{{|{z{{|{|{||{|{|{{{{z{{zzz{{||{{{||{|{|{{|{||{z{{|{zzz{{zzzzz{{zzzzzz{zzzyzzzzz{{zzz{{zzz{{zzzz{{zzzzzzz{z{zzzz{y|zzzz{{{zzzz{zzzz{{{zz{{z{{z{z{zz|{z{zzz{z{{{{z{z{{{{z{zz{{z{z{{z{z{|{zz{|{{zz{|{z{z|{{z{z{{|{z{{|{|{|~{|{|z{{{z{{{zz{{||{{{~|z|{{~{|{|~{z{z|{{z{z|{{{z|z|{{|{|z|zz{zz{z{zzzz{|zzz{|z{{z{{{||{{z{{|z{{{z{{{{{{||{{{zz{{{{{{{z{{{|{{{{|{{{{{|{{{{|{{{{{{zz{z{zzzz{y|zzzz{{{zzzz{zzzz{{{zz{{z{{z{{z{zz{z{zzz{zzz{zz{zz{{{z{zzz{z{z{{z{z{|zzz{|{{zz{|{{z{z|{z{z{{|{{{{|{|{||{|{|z{{{z{{zzz{{||z{{{|z|{{{{z|{|{{{z|{{z{z{zz{z{z~{z{zzz{zzzz{zzzz{{{zz~z{{{z~{{{{z~{z{z{{zzzz|{z{z|z|{z|{|z|zz{zz{zzzzzz{|zzz||zz{z|{{|z||{zz{z{{{{{{{{{{||z{{zz{{{z{{{zz{{|{{{{{{{{z{{{z{{z{{z{z{z{{z{zzz{{zzzzz{{{zzzy{zzzz{{zzzz{{zz{z{{zzzz{{zzzzzz{{{{zzz{{{{z{z{{|z{{{zz{{{{z{z{{{{{z{{{{{zzz{{{z{zzz{{z|{z{z{|z{z{z|{{z{z|zz{z|{z{{z|{{{{z|{{{z{|{{{z{z{{{z{|{{{|{{|{{{{||{|{{|{|{||{{{{||}{{{{|}|{{{|}|{|{z{z{{{z{z{|zzz{z{{{zz{{{zz{{{{{{{{{|}z{{z|{z{zz{{zzz{zz{zzzzzz{zzzzz{{{zzyzzzzz{z{{zzzz{{z{zz{zzzzz{zzzzzzz{{z{zz{{zzzzz{{{zzzz{zzz{{{{zzz{{zz{z{{zzzz{{zzzzzzz{{{{zz{{{{z{z{{|z{{{zz{{{{{{z{{{{{z{{{{{zzz{{{z{zzz{{{z|{z{{|z{z{{|{{z{z|{z{{|{{{{z||{{{z||{{z{|{{{z{z{z{{{{z{z{{{z{z{{{z{{{{z{{{{{|{{{{}{{{{{}{z{z{}{z{z{zzzz{zzz{z{{{{|{{{|{{{{{{{{{{{{{||{z{z{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{|{{{{{{{{{{{{{||{z{z{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{|{{{{{{{{{{{{{||{{{z{{{{|{{{{{||{{{{||{{{{|{{{{{{{|{|{{|{|{{{{|{|{|||{|{{{|{||{{|{||{|{{||{|{|||{|{|{|{{}||{|{{|{|{|{|||{|{|{|{||{||{||{|{{||{|{|{|{|{|{|{{{{z|{{{{{|z{{{{{|{{{{|zzzz{{{{{|{{{{{|{{{{{|{{{z{{{{{{z|{{{{{|z{{{{{|{{{{|z{zz{{{{{||{{{{||{{{{|{{{z{{{{{{z|{{{{{|z{{{{{|{{{{|{{{{|{{{{||{{{{||{{{{||{{z{{{{{{{|{{{{||z{{{{{|{{{{|z{{{{{{{{|{|{{{|{|{{{|{|{z{{|{{|{|||{{|||||{{||||||||||||{{|||||{{||||||{|||||||{|{|{||{|{||||{|{|||{|{||{|{||{|{||{|{|||{|{|{|{|{|{|zz{{zzzzz{{z{zzz{{{z{zzzzzzzz{{zzz|{z{zz|{zzzz{{z{zzzz{{zzzzz{{z{zzz{{{z{zzzzzzzz{zzzz|z{{zz|{zzzz|zz{zzzz{{{zzzz{|{{zzz{{{z{{{zzz{{z{{{{{{|z{{z{{zzzz{{z{zz{{{{{{z{{{{{|z{{{||z|{{{{|{|{{{{{|{{{{|{{|{{{{{|{|z{z{{|{|{z{{||{{{{{||{{{{|{{{{|{{{{{||{{{||{{{{||{{{{zz{{{{{{|{{{{{|{{{{{{|{{{{|{{{{|{{{{{|{{{{|{{{{{|{{{{{{zzz{zzzzzz{zzzzzz{{zzzzzzzzzz{zzzzz|{{zz|{zzzz|zzzzzzz{{{zzzz{|{zzzz{{{zz{{zzz{{zz{{{{z{|z{{{{zzzz{{zzzzzz{{z{zzz{{zzz{z{||z{z{{z{z{{{{{z{{{{z{{{{zzz{{{zzzzz{{{{|{z{{{|z{z{{{{{z{{|zz{{|{{{{{|{{{{{|{{z{|{{{z{z{{{{{{{{{{|{{{{{{{|{{{{{{{{{{{{{{{{|{z{{{|{{{{|{{{z{{z{{z{{{{z{z{{{{z{z{{|z{{{{z{{{{{{z{{{{{z{{{{{z{{{{z{z{zz{{{zzzz{|{zzzz{{{zz{{zzz{{zz{{{{z{|z{{z{{zzz{{zzzzzz{{z{zzz{{zzz{z{||z{z{{z{z{{z{{z{{{{z{{{{{zzz{{zzzzz{{{z|{z{{{|z{z{{{{{z{z|zz{z|{z{{z|{{{{z|{z{z{|{{z{z{z{{{{z{z{{{{z{z{{{z{{{{zz{{{{{z{{{{{{{{{{{z{z{{{{z{zz{{z{{zz{|{{{{{{{|{{{{{{{{{{{{{{{{|zz{{{|{{zz{|{{{zzzzz{z{{z{z{z{{zzz{z{{{zzz{{zzzz{{{zzz{{{z{z{{{z{z{{{zzz{{|{{{z{{||{{{z{|}z{{{z{|{{{{{{z{{{{|z{{{{|{{z{{|{{{{{{{||{{{z{||{{{{z|}z{{{|z|{{{|{|{{{|{|{z{|{|{{{{{|{{{{{{{|z}{{{z|||{{{|z}{{{||}{|{||}|{{||}|{{{|}|{{{{}|{{{{{{{|{{{{{|}|~{{{{|}z{{{{{~~{{{{~{}{{{~{{|{{~{{{{{~{{{{{|}|~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}}~|}|}||z{{|z{z{{||{{zz{|}z{{zz{|{z{{{|{{{z{|{z{z{|{zz{{|{{{zz{{{|{{{{{||{{{z{|}z{{{z{|{{{{{|{{{{{|{{{{{|{{z{{|{{{{{{{{||{{{{||{{{{z|}z{{{|{|{{{|{|{{{|{|{z{|{|{{{{{|{{{{{{{{|z}{{{|||{{{|z}{{{||}||{||}|{{||}|{{{|}|{{{{}|{{{{{{{|{{{|{{|||{|{{|}||{||{|{{|||}|{|||}{{|{|}{|{{{|{|{|{{~|~z{~{~|}~{~{~|}{~{~|~~~{~|~~{}~|~~}~|{~~}~{~{~}~{~{zz{z{zz{|}z{|}z|}z}{}{{{{{{{{{{|||{{{{{}|{{{{{{{{{{|{{{{{|{{{{{|{{{{{|{{{{{|{{{{{{|{{|||{{|{{}|{{|{|{|{|{|{{{|{||{{|{||{|{{||{|{|{{{|{{{{{{|||{{{{|}|{{{{|{{{{{}{{{{{}{{{{{}{{{{{}{{{{{{{||{{{{{|}||{{{{|}|{{{{|{{{{{|{}{{{|{{|{{|{{{{{|{{{{{{{{||{{{{{|||{{{||}|{{||||{||{}|{||{}|{{|{}|{{{{||{{{{||{~}}|||{~~~|||~|}|||~|}~|~|}~{{~|}~||{|}~||||}~|||||{{{|{}{{{{||{{{{||}{{{||}||zz{|z{||}|{{{|}|{{{{}|{{{{{{{{|{}{{{{||{{{{||}{{{||}||{z{|{{||}|{{{|}|{{{{}|{{{{{{{||{}{{{|}||{{{||}{{{||}||{|{|{}||}|{{||}|{{{{}|{{{{{{{{|{}{{{{||{{{{||}{{{||}||{||}{{||}}|{{|}}{{{{}|{{{{{{{{~|}{{{{|~~{{{||}|{|||}|~|||}{{||}~{{{|}~|{{{}~|{{{{|}|~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}}~|}|}||{{{||{{{{{||{{{{{|}z{{{|{|{{{|{|{{z{{{z{|{|{{{{{|{{{{{{{|||{{{{|}||{{{{|}z{{{|{|{{{|{|{}{{|{{||{|{{{{{|{{{{{{{{||{{{{{||{{{{{|}z{{||{|{{||{}{{{|}|z{|{}{{{{{|{{{{{{{{~|{{{{{|~~{{{{|}{{{{|{|~{{|{|{{{|{{{{|{~{{{{{~{{{{{{{{||}{{{{|||{{{||}|{{||}||{||}}{{||}}{{|}}{{{{}|{{{{{|||~|}||||}~~|||||}|||||}~~|||}~|}||}~|||}~||||}~||||||{{{||{{{{{|}||{{{{|}z{{{{{|{{{{{|{}{{{|{{|{|{{{{{|{{{{{{{{|{{{{{{||{{{{{|}z{{||{|{{||{}{{{|{}|z{{}{z{{{|{{{{{{{{~{{{{{{|~~{{{{|}{{{{{{|~{{{{|{{{{{|{{{{{{{{{{~{{{{{{{{|{}{{{{||{{{{||}|{{||}||{||}|{{||}|{{{|}|{{{}|{{{{{{{{||{{{{{|||{{{{|}{{{||{|{{||{}{{{|{}{{{|{}{{{{|{{{{{|{|~|}{|{|}~~|{|||}|{|||}~~|||}~|}||}~|{||}~||{}~|||{{{{{{{{|{{{{{{||{{{{{|}z{{||{|z{||{}{{{|{}|z{{{}{{{{{{z{z{{{{~{{{{{{|~~{{{{|}{{{{{{|~{{{{|{{{{{|{{{{{|{{{{{{{{{{{{{|z}{{{{||{{{{||}|{{||}||{||}|z{||}|{{{|}|{{{{}|{{{{{{{||{{{{{||{{{{{|}z{{{|{|{{{|{|{{{|{|{{{|{|{{{{{|{{{{{{{|{{{{{{|||{{{{|}{{{||{|{{||{}{{{|{}{{{{{}{{{{{|{{{{|{|~|}{|{|}~~|{|||}|{|||}~~|||}~|}||}~|{||}~|||{}~||||{{{{{|||~}|{}|~}|{|~~}|{|{|}|{|{|~~}|{|{}}~}|{|||}~}|{{||}~}|{||}|{{{}}|{{||}|{{{{}|{}{{{|{||}{}|}{|{{|{|}{{{{{{|}{{z{{}z{{z{}z{z~{}z{z{z}{{z{z~~{z{z{}{~{z{zz{{~{z{{z{{~{z{z{}{{{{}{{{{|}{|{{z{{|{}z{{|{||}z||}{|z{{{{}{{z{{z{}{{||||{{}{|{z{{||{z{{{{}{{{{{|{}|{{{{{}}|{{{{|}}|{{{{|}}||{||{{{||{{{{{|{{{{{{}|z{{{{|z|{{{{||{|{{{{||{|{{{{||{|||}|~}|}}~}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}||}|~}|}}|}|~}|{{{~}|{{{}|{{~|}|{{{{}|{{{{~~{{{{{}|~{{{{|{{~{{{{{{{~{{{{{}}|{{{}|{{|}}|{{{|}|{}{{{|{||}{}|}{|{{|{{}{{{{{{{|{{||||}|{}{|{{{||}|{{{{}|{{{{||}|{{{}{}}|{{|{|}}|{{{{|}}||{||}|{{||{{{||}|{{{{}|{{{{{|{|{{{}||{|{{|{||{|{{{{||{|z{z|}|{{z|{{{||}|{z{z}|{z{{{|{z{{{}{|{{{z|{z|{z{{z{||{z{||~}|~{{~}|~{~}|~{~{}|~}~{~~~|~}~}|~~|~{|~{~~{{~{~{~{{{{{|||{{{}||{{|}|{{{|}|{}{{||{||}{|}}{|{{|{|}{{{{{{|}{{||||{{{}{|{{{{||{{{{{}{{{{{||}|{{{{|}}|{{{{|}}|{{{{|}}||{||{{{{||{{{{{|{{{{{}|z{{{{|{|{{{{|}{|{{{{|}{|{{{{|}{|z{z|{{{{z|{{{{{|{{{{z}|{z{{{|{z{{{{|{{{{z{{{|{z{{z{||{zzz{{{{{{z{{{{{{{{z{{z}{z{zz{|{zzzz{|}{zzz{{{}{zz{{z{}{z}{}{}|z}|{z{{{{z{{{zz|~|~|{{}|~|{{}~~~||}{|}|~}|}~}}~}|||~}}~}{{}~}}~{}{}~}||||}||{||}||{|}}||{|||}||}||}|||}||}}|||||||}|||||||}{|{||}}|||{}}||{}}}||{{{}||{{{}|{{{{}|}|{{{|||}|{{|{{|}|{{||}||{|{}||{}}}||{}{}}|{}{}|}{}}{||}|}{}|{}}|}{{}{}}|{{||}||{|{}||{{}}||{{{{}|{{{{|{{{{{||}|{{{|{|}|{{{{{|}|{{||}||{|{}||{{}}||{{{{}|{{{{||{{{{||}|{{{|{|}|{{{{{|}|{}}}|~}}}}|~}}}}~~}}}}}|}}}}}}~~}}}}}}~}}}}}}}~}}}}}}}~}}|||~||{}|~||{{~~||{{{|}|{{{{~|}|{{{||}|{{|||~}|{{{||~}||{|||{{}{}|{{{{|||{{{{}|{}{{||}||}{||}|{{{{|}}|{{{{|}}||{||}|{}{|}|{{||}|{{{z}|{{{{||}|{{{}{}{{{|{|}}|{{{{|}}||{||{|{}{|{|{{{|{|{{{z}|{{{{||}|{{{{|}{{{|{|}}|{{{{|}}||{||{{{}{|{{{{{|{{{{{z}|{{{{|{}|{{{{z{{zz{{||}|{{{{||}||{|||~}||}|~}|||~~}|||||}|||||~~}||||}|~}||||}~}|||||}~}||||||{{}|}|{{{||||{{|{}|{}|{||}||}||{}}||{{{}}|{{{{|}}||||~{{{{|~{{{{~~{{{{{{}|{{{{~|{|{{{{{|{|{{{{{{|{{{{|~{||{||{{{{|}{{{{{|{|{{{{}|{}{{{|{||}{{|}{|{{{{{}|{{{{|}{||{||}|{{||}|{{||}|{{{z}|{{{{{|{|{{{}{|{|{{|{z|{{{{{||{||{||{|{{||{|{{{|{|{{{z}|{{{{{|{|{{{{|}{|{{|{|}{z{{{|}{|{{{|{|~}||}|~}|||~~}|||||}|||||~~}||||}|~}|||||}~}|{||}~}|||||{{{{|}{{{{||{|{{{{}|{}{{{|{||}{{{}{|{{{{|}{|{{{|}{||{{|{{{}{|{{{{{|{{{{{{}|{{{{||}|{{{{||}|{{{{||}|{{{{|}|{||~{{{{{~{{{{~~{{{{{{}|{{{{~|{{{{{{{}{{{{{{|}{{{{{{{{{{{{|{{{{{}{{{{{|{|{{{{}|{}{{{|{||}{{|}{|{{{{|}{{{{{{{{{z{{|}|{{z|}|{{||}|{{{z}|{{{{{|{{{{{}z|{{{z|{||{z{{z{z|{zz{z{{z{{z{zz{z{zz{{{{zzzyzzzzz{{{{zzzz{{|{zz{zz{{{zzz{z{{{{{z{{{zz{{{{||z{{{|{|{{|{{{{||{{{{{{|{{z{z|{|{{zzz{z{zyz|zzzz|zzzzy|zzzzz{zyzz{|z{zzz{z{{{zzzzzz{{zzzy|z{zz|zzz{|zzzz{{zzzzy{{zzyzz{{|zzy{{z||zzzzzz{|z{{|{{{{{{{z{{{{z{{{{{z{{{zz{{{{{{{{{{{{z{{{{{z{{{{{{{{{{zz{{{{z{z{{z{{{y{{z{zz{{{z{{{{{{{zzz{|{{{z{{{{z{z{z|{{{{{{{{z{{{{{||{{{{|{|{{|{{{|||{{{{{{|{{{{z|{|{{zzz{{{{z{|{zz{|{zz{z|zzzzz{zzzz{|{{zzz{{{|{zz{zz{{{zzzz|{z{zz|zz{|zzzz{{zzzzz{{zzzzz{{|zzz{{{||zzzzzz{|z{{|{{z{{{{{{{{{z{{{{{z{{{zz{{{{{{{{{{{{z{|{{{z{{{{{{zzz{{{{z{{{{z{{{zz{{{{zzzyzy{zz{{{{z{z{{{|{zz{z{{{{z{{{{|z{{{{|z{{|z{{{{|{{{{z{{{{{{}{{{{{|{||{{{z{{|{{{zzz|{{{z{|{{z{|{zz{{{{zzz{{zzzz{|{|zzz{|{||zz{zz{{|z{{|{{z{{{{{z{{{{{{{{{z{{{zz{{{{{|{{{{{{z{{{{{z{{{{{{zzz{{{{z{{{{zz{{{zz{{{zzzyzz{zz{|{{z{z{{{{{zz{z{{{{zzzzz{z{zzz{zzyzzzzz{{zzzzzzzyzzz|{{zzz{z{z{zzzzzz{{z|{{{{{{zzz{zzzz||||||||}||||}||||||||||||{|||||}}||||||}}||||||}}||{{{||||{{|||{}|||{||{||{|{{{|{||}}|{|{||{||{{|{|{||{{{{||||{{||||}||||{{{|{|{{z{{{{|}||{{{|||||{{||{{||{{{{||||{{|||{}|||{{{{|{{{{z{{{{|}||{{z||{||{{|{{{||{{{{||||{{|||{}|||{{{{|{{{{z{{{z|}||{{{||{||{{|{{{||{{z|{{z{{{{{z|{{{z|z{{{{|{{{{{{{z|z|{{{{z|{|{zz|{{{|{}|{}|{{{}{||{||||{|||||{|||{{||||||||||{||}||{{|||}||{{|{|{{{{{|{{{{|{{{{{|{{{{{{{{{{{{{{{{|{|{|{{{{{{{|{{z|{{{{{{{{{z{{{{{{{{{{{{{{{{{{z{z{{{{{{{||{z{z{{{|{{z|{{z{{{{{zz{{{z{z{{{{{z{{{{{{z{|{{z{{{{||{zzz{{{|{{z|{{z{{{{{zz{{{z{z{{{{{z{{{{{{z{z{{zz{{{||{zzz{{{|{zzz{{z{z{{{zz{{{zz{{{{zz{z{{z{zz|{||z{z{z||zzzz{z{|z{{{||||{{{||||{||||{|||||{|{{|{|{||{{|{|{|{}|{|{{{|}|{{{|{{z{{{{{z{{{{{{{{{{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{z{{{{{z{{{{z{{z{{{z{zzz{{z{{{{{{{z{z{{{{z{{{{{{zzz{{{{z{{{{zz{{{zz{{{{zzzyzz{zz{{{{z{z{{{|{z{zz{{{zzzz{{z{z{{{zzz{{zzz{{{zzzzzzz{zz{|{{z{z{z{|{zzzzz{{z{{|{zz{{{{{z{{{{z{{{{{{{{{z{{{{{{{z{{{{zz{{{{{{{{{{{{z{{z|{{{{{{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{z{|{{z{z||{{{{{{{z{{{{{{{{{{{{{{{{{z{z{{{{z{{|{|{{z{{{{|{{z{{{|{{z|{{{{{{{{{zz{{{{z{{{{{z{z{{{{z{{{{{{{{{{{{{z{zz{{{{{{{zz{{{{{z{{{{z{{z{{{z{zzz{{z{{{{{{{zzz{{{{{z{{{{{zzz{z{{z{{z{zz{z{zz{{{{zzzyzyzzz{z{{zzzz{{|{zz{zz{{{{zzz{zz{z{zzzz{z{{zx{zzzzz{{zzz{zz{zz{z{zz{{z{z{zzzzzz{zzzz{{{zz{{zzyz{{zzzzzzzyz{{zzzz{{z{zz{{zzz{zzyz{zz{zz{z{zz{z{z{{zz{zzzzz{{zzz{zz{zz{z{zz{{z{z{zzzzzz{zzyz{zzzz{yzzyy{zzyzzzzyz{{zzzy{{z{zzz{zzy{zz{yzz{{zz{zzz{{z{zyzzzzyzz{{yzyz{{{yz{zzz{{yzzzzyz{zzzzz{z{z{zzyz{zz{zy{zzzzzz{zzz{zz{zz{z{zzz{zzz{zzzz{zz{{zz{{z{z{{z{{zz{z{zzz{{zz{{zz{z{{z{{z{{z{z{{zzzzz{{zzz{{{zz{{zzzy{yzzzzzzzy{{{zzz{{{z{zz{{zzz{z{zzz{z{zz{zz{{z{zzzzzzyzz{{yzzz{{{zz{zz{{{zzzzz{z{zzzzz{zz{z{z{z{z{{zz{z{zzzy{zzz{zz{zz{z{zzz{z{z{zzz{zz{{zzz{{zz{{z{{zz{z{zzy{{zz{}zz{z{{z{zz{{z{z{zzzzzz{{zz{{{zz{{zz{zz{zzzzzz{zz{}zz{z{{z{zzz{zzz{zz{yzz{z{zz{z{{{{{zzzzzzzzz{{yzyz{{{yz{z{z{{yz{zzz{{zzzzz{zz{z{zz{z{{{zz{z{zzzy{zzz{zz{zz{z{zzz{z{z{zzzyzzzzzzzzz{{zzz{zyyz{yzzzzyzy{{{zyzzz{z{zyz{zzz{zz{z{zz{zzzz{{zz{}{{{{}{||{}|{|{{|{{zz{{z{{}|{{z{}{||{{}{{z||{{{{{||{|{||{|{||{{|{||{{{{z{{{|}{{{{|||}{{{|{{|}{{{{{||{{z{|{{|{|{{{{{z{{z{|{{{{||}{{{|{|{|{{{{{|{|{{{zz|{{{{|{{{{|{{{{{z{{{zzzz{{|||{{z|{{{{{{{{{z{{{{{zz|{{z{|{{{{|{{{{{z{{{zzzz{z|||{{z|{{{{{{{{{z{{{{{zz{{{{z{{{{{{{{|{zz{z|{z{{{z{{z{{z{{{|{{{{{|z{{{||{{||{|{||{{{||{{{{||{{{{|||{{{{{|{{|||{{|{{{||{{|{zzzz{{z{{{{{{z{{{{zz{{{zz{{{zzz{{{zz{{|{{z{{{z{{{{zzz{{{zz{{{{{z{{{zzz{{{zz{{{zzzz{zz{{{{{{z{{{z{{{{zzzz{{zz{{zz{z{{{zzz{z{zz{{{zzzzzzzz{{{{{z{z{z{z{z{zz{{zzz{{z{z{{z{{zz{zzyzy{{zz{{zz{z{z{{z{{z{z{{z{zzz{{{zz{{z{{{{{zz{z{zz{z{{zzy|{|{zz{zz{{z{zz{z{{{{{z{z{{{zz{{{{{{{{{z{{{{{{{{{{{z|{{{z{{z{{{z{{{{{{{zzzz{{zz{{{z{{{{z{{zz{z{zzzz{zz{{zz{z{{z{zz{z{z{{zzzzzz{zz{z{z{{z{zz{yz{zzzzzz{zz{{zz{zz{z{zz{zzz{{zzyzzzzzzzzz{{zzz{yzyzz{yzzzzyzy{{{zyzzz{z{zz{zzz{z{{zz{{{zz{{zz{{{{{{zz{zzzy{{{zyz{{{{z{{z{{{{z{z{z{zzzzz{zz{z{zz{z{z{{zz{z{zzzz{zzz{zz{zz{z{zzz{{z{zz{{{z{zz{{zzz{{z{z{{z{{z{{z{zzz{{zz{{zz{z{{z{{z{{z{{{z{zzzz{{z{{{z{{z{{z{zz{zzzz{{{zz{{{{{zz{{{{{z{zzz{{zzzz{zzzz{z{{z{z{{zzzz{{zzzz{zz{{{zzz{{{{{zzz{{z{zzzzzz{zz{z{zz{z{zz{yz{zzzzzy{zzz{zz{zz{z{zzz{zzz{z{{zzzzzzz{{zyzzzzzzx{zz{zyy{zzz{zz{z{z{zzzzzzz{zzyz{|zzzz{z{yzzzzzyy{zyyzyyyzzzz|zz{zzz|z{zzyzz|zzy|{zzy|z{zyzzzz{zyzzyzzyzyyy|{zzy|zz{{z|zzzz{{z{{zzzzzz{{zyyzzzzyz{zz{zyy{zzz{zz{z{z{zzzzzzz{zzzyzzyzyz{zzyzzyyzzx{zyyzyyyyz{{zzzzzzzzzzzzyyzzzzzy|zzy|z{zyzzzy{y{zzyzyyzyyy|{zzy|zz{zz|zzzy{zzz{z{zzzz{{zyzzzzzyx{zz{zyyzzzz{zzz{{z{zz{zzzz{zyz{zzz{zzz{{zyzzzz{zy{zzzzyy{yzz{zz{zzz{{zzzzzz{{zzyzz|zzz{zzyzzzzzzy{yzyzyyzzz{{|zzzzzz|zzzzzzz|zyyz{zzyyzzzyzzzyzzyyzzyz|zyyz{zzzy{zzzzz{zzyzzzzyyy|{zyy|zzyz{zzyyzyzzyz|zyyy|z{zy|zzz{z|zzyzy{z{zyzzzzyz{{yzzzy{z{{zzzyyy{yy{}zz{z{z{zzzzzzy{zzz{zzzyzzz{{zyzzzzzz{zz{zyyzzz{}zzzz{z{zzzzzzz{zzyyz{|zyzzz{zyzzzzzyzzzyz|zyzz{z|zy{zzz|z{zzyzz|zz{zzzyzzzz{zyzzz{zzzzz{zyyzzzz{zzzz{z{zzzzzzz{zzzzzzzzzz|{{|||{zz|{{|z|{||{z|{{z|||{z|}|||{|{|{|||{|z|{|{{{z||{{z|}|{{z}|z|{{|{{{zz{zz|}|z{|}{||z|}{{z||z{{{||{{{||}z{{|z{|z{|z{{zz{zz|}|z{||{}|z||z{{}||{{|||{z{|{{|z|{|{z|{{|z{|||||||}|{|{|{|||{|z|{|z{{z||{zz|{{{{{{zzzz{{z{{zzzzz|||z{|{{{|z|{zzz{|z{zy|zzzy|{{zyz{zz{zy{zzzy|z{y|{zz{||{{zz|{zzz{zz{zy{{z{zz{{{yz|{z{z{{z|zy|z{zy{zz{{{{|{z{{{|z{{{z{{z{{z{z{{|zz{{z{{z{{z{{z|z{zz{{z{{|{{{z{{{|{{{zz{zz|zzzz{{zyzzzz{zz{zz{z|zzzzz{|zz{{||zzzzzz{|zzzzz|zzzz{{zyzzzz{zy{zzzz|zyzzz{|zzz{{|zzzzzz{|z{zy{{zzyz{zzyzzzzzz{{zzyzyy{yyz{zz{zzz{z{zzzzz{zzyz|{zzz|{y{z{zzzyz{{zzyz|zyz{|{|zz|zz{z|z{z{z{|{{zzz{|zzz{z{{z{zz{{{zzzzzz|zy{z|{|{y{zz|{{z{z{{|zz{z{{yzzzz{zyzzzz{z{zzz{zyzzzz{{zzz{{z{z{zzzz{{zz{z{{yzzzz{zyzzzzzyzzzz{zyyzzzz{zzz{{z{z{zzzz{{zzyy|zzzy|{zzyzzzyzz{{zyyyyzyyy|{zzz|zzzzzzzyyzzz{zz{zzzy{{zzyzzzyzzz{zzyy|z{yy{{zz{{zzzzz{zzzzzzz{z{zyzzz{{zyzzzz{zz{zz{zyyzzzz{zzz{{y{zz{{zz{z|{zz{zzz{zzyz{{zyzzzz{zz{zzzzyy{yzz{zz{z{zz{zzzzz{{zz{zz{zzzzz{zyzzzzzzzzzz{z|zzzzz{{zzz{z{{zzzzzz{zzzzz|zzzzz{zyzzzz{z{zzyzzyyyzz{{|yyzzz{|zzzzzz{yyzy{zyzyzy{yxzzzz{xzzyyzyyyyzzz{zyzzzz{zzzyzz{zzy{z{zyzzzz{yyz{zy{yy{yz{zyyz{zz{zyzz{z{zz{z{z{zyxzzyy{zzzz|z{zx{zzz{yyzyzzzyzyzz{{zzz{zz{z{zzzz{zzzy{{zyzzzz{zzy{zz{xzzyz{zyyz{zz{zyzz{z{zz{z{z{zzzyyzzzyzzzyzzzzyzyyyyyzyz{yyyzzzzyzzzzzzzzzzzyzzzyzy{zzz|z{zxzzzy{yzzyzzyyzyzz{{zzzzzz{zzzzzz{zzzy{z{zzzzz{zyz{zy{xz{yz{zyyz{zz{zyz{{z{z{{y{z{zxzyyzy{zyzzz{zxyzzy{xyzyyzzyyzzzz{zyzzzz{zzzzzz{z{zzyzz{yyzzzzxzzyyyzyzyzyzyyyyzz{{yzzzzz{zzyzzz{zyyzyzzyyyzzzyzzzzzyzzyyzxyyzzzz{zyzzzzzzzzzzzzzzzyyzyzzyz|zzzz{yzyyyyyzyz{zyyz{{zzzzzzzzzzzzzyzzyyzy{zyzyzz{yzzzy{yzzyyzyyyzzzz}zyzzzz{zzzzzz{zzzy{z{zyzzzz{zz{zz{zz{yz{zyyz{zz}zyzz{z{zz{y{z{z{zzyzz{zyzzzzzzzyzyyyyyzyz{yyyz{{{yz{zzz{{zzzzz{zyyzyzzz{{zz{z{{zz{|z{{z{{zz{zz{zzzzzz{z|||zz{{{{{{{z{z{{{|{{|{{{z{|{{{z|{z{{z|{{z{||z{z}|||z|{{{{|{{{{{{{z{{z|{zz{|z|{zz}{z|{z|{z{zz{{z{}|zz{}{|{{}{{z|{{zz{{}{z{{||}z{{|{{|z{|zz{zz{{z|}{zz||{}{||z{{}{|{z{|{|zz{||{|z|{z{{{z{{z{|{{{|||}{||{{{||{{{{{|zzyzz{zzzz|z{zzzzzz{yzzzzzz{zyz{zzzzzz{{zzzzzz{zzzyzz{zzzz|z{zzz{zz{yzzzzzz{zzz{{zzzz|{{zz{zzz{z{zzzz{{z{zzz{{zz|zz{{z{{zzz{z{zz{zzz{{z|{{{z|{{{|zzz{z{zz{z{{{zz{{|z{zz{yz{z{y{{zz{yz{|{{z{{z|{{z{zz{z{{zzzzz{zzz{zz{yz{yz{z{yz{zz{{zz{{|{z{z{z{{zyyzyzzyyyzzzzyzzzzzyyzyyzzyyzzzz{zyzzzzz{{zzzzzzyyzyzzyyyzzzzyzzzzzzz{zyzzyyzzzz{zyzzzzz{zzzzzzzzzyzzzzyz|zzzz{zyzzz{z{{yz{zzy{{{|z{|zzz|z{zzzz{{{zzzz{{zzz{z{{z{zzz{zzzzzzz{zyzz|{{zz{zz{{z{zz{{zzy{z{zyzzzz{zzz{zz{zz{yz{zyyz{zz{zyz{{z{{{z{z{zzzyyyzzzyz|zzzxzzyzzzzzyzyyyzyyy{{zzzzzzzzzzzzzzzzyzzzzzyz{zzzzzzzzzyzzyzzz{yzzz{{zyz{zzzz{zzzzzzzy{z{zyzzzz{zzz{zz{yz{zz{zyyz{zz{zyz{{z{z{{{z{z{{zzyyzy{zyzyzz{zyzzzy{yzzyyzzyyzzzz{zyzzzzzzzzzz{zzzy{z{zzzzzz{zzz{zz{yz{yz{z{yz{zz{zyzz{z{zz{z{zz{zzzz{{yzzzz{zxzzzy{zzzyzzzyyyzzz{{yzzzz{{zzyzz{zyzyzzzzzzzzzyz{zzyzyzzyyzyzzzzyzzzzyz{zzzzzzyzzzzzyyzzyzzyzzzyzyzzyzyzxzzyyzyzyyzzz{zzzzzyzzzzzyzyzzzzzzyzzyzzzyzzzzyzyzyzyzyzzzzyzzzzzzzz{zzzzz{zzyzzyzzzyzzzzyzzzzzzy{zzzzzyzyzzzzzzzz{zzzz{zzzzz{zzzzz{zzz{z{zyz{{z{zzzyzzzxzzzz{{zyz{{z{z{{zzz{z{zzzzz{zzzzzzzzzzzzyzzzzyzyzzzzzyzyzzyzzz{zzzz{zzzzz{zzyzzzyzyzzzzzzzzzz{zzyzyzzyyzyzzzzyzzzzyz{zzzzzzzzzzzzzzyzzzzyzzzzzzzzzzyzxzzyzzyzzzzz{{zzzzzzzzzzzzzzz{zyz{{z{zz{{z{zzzyzzzyzzzz{{zzz{{z{z{{z{z{z{z{zzz{yzzzzzzzzzyzzzzzyzyzzzyyzzyzzzyyzzz{zzzzzzzzzzzzzzzzzzyyzzzzyzzzzzyzzyzzzyyyzyzzzzyz{zzyzzzzzzzzzzyzzzzzzzzyzzzzzzzzzzyzyzzzzzyzyzzyzzz{zzzz{zzzzz{zzyzzzzzyzzzzzzzzzz{zzyzzzzzyzyzzzzyz{zzyz{zzzzz{zzzzzzzzzzzy{zyzzzy{zzyzyzzzzzyzyzyyzzz}zzzzzz{zzzzzzyz{zyz{{z{zzz{{z{yzyzzz{zzzz{{yzz{{z}z{{z{z{z{z{zzz{yyyzzzzzz{z{{zz{{z{{zz{{z{{{{z{zz{z{z{zzzz{{{{{{{{{{{{{{{z{z{{{{z{{z{{z{{{z{{{{z{zz{z{{{zzzz{{{{{{{{{{{{{{{z{z{{{z{{{{{{zz{{{{{{{{z{z{{{z{{{{{{{}{{{{|{{{{{|{{z{{{{|{{{z{{{|{{z{{{|z{z{{z|{z{z{z{{{|{{{{{{{{{{{{{z{|{{{{{{|{z{{{{|{||{{{|{z|{{{{z{{{||{{{||{|{{||{{{|zzyzzzzzzzzzzzzy{zzzzzzzzzzzzzzyzzzzzz{{zzzzz{zzzzzzzzzzzzzzzzzzzz{{zzzzzzzzzzzzzzz{zzzz{{{zzz{{zzzzzzzzzzzzzzzzzzzz{{zzzzzz{zzzzzzzz{{zzz{{{zzz{{z{zz{z{{{{{{z{{{{{{z|{{{{{{{{{{{{{{{{{{z{{{{{{z{{{{{{{{{zzz{{{{zzz{|{{z{{{|z{{z{{z{{zzz{{z{{{{|{{z{{{z|{{zzzyyzzzzyzzyzzzyzzyzzzzyyzyzzzzyz{zzzzzzzzz{zzyzzzzzzzzzzzyzzzzzzzzyzzzzzzzyzzzyyzzz{zzzzzzzz{zzzzzzzzzzzzzzzzzzz{zzzyzz{{z{zyzzzzyzzz{zzz{zzzzz{zzzzzzzzzzzzzzzzzzzz{{zzzz{zzzzzzzzzzz{{{zz{zzzz{{zzzzz{z{yzzzzz{zzzzzz{{{{zzzz{zyzzzzzzzz|z{zz{zz{z{z{zzz{zyz{{z{zyz{{z{zzzyzzz{zzyz{{yyz{{z{z{{zzz{{zzz{z{zzzzzzyzzyzzyyzzzzyzyzzyzzyzyzyyzzz{zzzzzzzzzzzzyzzzzzzzzzzzzzzzzzyzzzzz{zzzzzzzzzzz{{zzzz{zzzz{zzzzzzzzzzzzzzzzzzzz{{zzzzzzzzzzzzzzzz{{zzz{zzzzz{zzzz{zzz{{z{zzz{{z{zzzzzzzzzzzz{{zzz{{z{z{{zzz{z{z{zz{zzzzzzzzzzzzzzzzzzzzzyzzzzzzzyzzzzyzzz{zzzz{zzzzz{zzz{zyz{{z{zzz{{z{z{zzzzzzzzyz{{zzz{{z{z{{{zz{z{zzzzzzz{{z{zzzz{{{zzz{zzzzzy{z{zzz{zzzz{{zzzz{{{zzz{{{zzzzz{zyzzzzz{zz{zzzz{zyzyzz{{zyzz{zyzz{{zzzz{{zzzz{{zzzzz{yzyzzz{zyzzzzy{yyzzzy{yzyzyz{zzzz{z{zzzzzzz{zzzzzzzz{{zz{zz{{{{zzzz{{zzzzz{{{zzz{zzzz{z{{zz{z|zz{{z{zzzz{z{{z{z{z{z{{|z{z{zz|z{{z|{z|{{|z{{||zzz{{|z{z{{|{|z{zyzzz{zzzzzz{zzzzzz{zzzzz{{{zyzzzyyzzz{zzzzz|zzzzz{zzzzzz{{zzzzzz{zzzyzz{zzzyzzz{zzzyzyzzzz{zzzzz|zzzzz{zzyzzz{{{z{zzz{{{zzz{{zzzzy{z{zzz{zzzz{{{zzz{{|zzz{{{zzzzzz{zzzzzz{yz{zzzz{zzzzzz{{zzzz{zzzz{{zzzz{|zzzz{{zzzzz{{{zzzzz{{zzzzz{{yzzzy{z{zzzz{zzzz{{{zzzz|zz{zz{zzzz{{{{{z{z{{{{{|z{{{{z|z{{{|{z|{{|z{{||{{{{{|z{{{{|{|z{zzz{zzz{zzz{{{zzz{{yzzzz{y{zzz{{zzz{{{zzz{z|zzz{z{zzzzz{zyzyzzz{zzzzzzzzyzzzy{zyyzyzzyzzzz{{zzzzzzz{zzzzyzzz{z{zzzzz{z{zzzzzzzzzyz{zzzzzzzyzzzz{{zzzzzzz{zzzzzyzz{z{{z{zz{z{{{zz{zzzzzy{z{zzz{zzzz{{{{zz{{{zz{{{{zzzz{{|{zzzz{{|{z{zz{{zyzz{{{{zyzz{{yzz{{{zzz{|z{{z{{zzz{z{{z{z{{z{{{{zz{z{z{z{z{{{z{z{{z{z{{{|zz{z|{z{{z{{z{zzyyz{zyz{zz{{{|{{{{zz{z{{{{{{zz{{{{zzz{{z{zzzzzzz{|{{{z{|{z{{{|{zzz{{{{{zz{z{{{{{{zz{{{{zzz{{z{zzzzzzz{|{{{z{||z{{{|{zzz{{{{{zz{{{{{{{{z{{{{{{z{{{z{z{{zz{z{|{{{z{||{{{{|{{z{{{{{{{{{z{{{{{{zz{{{{z{z{{{{{z{{{z{{||{{{{|{{{{{|{{zz{{{|}{||{{{|}{|{{{{|{{{{{|||{{{|{{{||{||{||{|{{||{|{{{zzz{{z{zzzz{{{zzzzzzzzzz{z{zzz{{zzzz{zzz{{|zzz{{{zzzzz{{{{z{zz{{{{{zzz{zzzzzz{z{zzz{{zzzz{{zz{{|zz{{{{zzzzzz{{{z{zzz{{{{zzzz{zzzzz{{{zzz{{zzzz{z{z{{{zzz{{{z{zz{{z{{z{{{{z{{{z{{{{zzz{{{z{zzz{{zzz{{zzz{{{|{{{{{{z{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|{{{{||{{{{{|{{{z{z{z{{z{{z{z{{{z{z{{zz{{z{{{zzz{{zzz{{z{z{{{{z{{{{{z{zz{{{zzzzz{{{zzzzz{zzzzzz{z{zzzzzyzzzz{{zzz|zz{zz{zzzzzzz{zzzzzzz{zzzzzz{zzzzzz{{zzzzzyzzzz{zzzz{zzzzz{zzyzzzz{zz{zzzz{{zzzz{{zzzzz{zzzzz{zzzz{zzzzz{{zzz{z{{zzzz{{{{z{zz{{{{{zz{{{{zzz{{{{zzz{{{zz{{{{{z{{zz{{{{zzzzzz{{{{{z{z{|{{{z{z{{{{z{{|{{{{{{zz{{{{z{{{{|{z{{|{{{zz{zz{{yzzzzz{{z{{zzz{zz{zz{{{zzzz{zzzz{|z{zz{{z{z{{z{zzzzz{zzzyzzz{zzzyzz{zyzyzz{{zyzyzyyzzz{zzzzz{zzzz{zzyzzzzzzz{zzzz{{zzzz{{zzzzz{zzzzz{zzzz{zzzzz{z{zzz{{zzzzzzz{{z{zzzz{{{zzzzzyzzzz{z{zzz{{zzz{{{zzz{{zzzz{{zzzzz{z{zz{zz{z{{{zzz{{zzzzz{{{zzz{{zzz{{{{zz{{zz{{{{{zzzzz{{{z{zzz{{{{zz{z{z{zz{{{{z{z{{zzz{{zz{z{{|zzz{{|{zzzzzzzz{{z{zzzz{{{zzz{zzzzzz{z{zzz{{zzz{{zzzz{{{zzz{{{zzzz{|{|zzz{||{{zz{{|zz{{z|}z{{{|z|z{{|{|z{{|{|{zz|{|{{zz{{{{|{{z{|{}{{{z{|{{{{{z}{{{{|}z|{{|}{z{{|}{{{{|}{{{{{{{zz{{{{z}{zz{{|z|{{{}{|{{z}{|{|{zz|{}{{z{{}{z{{{{{z{{{|}{{{{|}}{{{{{|}||{{}{|}{{}{|{|z{{|{}|}{{{}|{|{{||{{{{|}|||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~||||}~|||{{|{|}z{z{z{|z{{z{|}||z{z{|}z{z{z{|zz{z{|z}{z{|z{|z{|{{z{{|}|{|zz{||{{z{|}||z{{{|}z{{{|{|z{{|{|z}{|{|{{||{|{{z{{|}{{|{{{|{}{{{|}||{{{{|}{{{{|}||{{|}|z}{|}|{{||}|{{{{{|}z{{{{|}{{{{{|}||{{}{|}{{}{|{|{z{|{}{}{{{}{{|{{|{{{{{|}z{{z{|}z{{z{|}|~z{z{|}z{z{{{~~z{{{~{}{{{~z{|{{~z{z{}|}|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}|zzzzzzzzz{zz{zzzz{zzzzzz}zzzzz{|zzzz{{{zzz{{zzzz{{zzzz{z{z{zz{z{|z{{{{{|zz{z{|}z{z{z{|zz{z{{{{{z{|zzzz{|{{z{{z{|{|z{z{||{{z{{|zz{{z|}z{{{|{|z{{|{|{{{|{|{zz|{|{{zz{{{{{|{{{{|{}{{{{|{{{{{z}{{{{|}||{{|}{{{{|}{{{{|}{{{{{{|{z{{{{|{}{{{{{|||{{}{|}|{}{|{|{z{|{}|{{{{}|{|{{||{{{~|}{{{{~|}~{{~{~|}~{~}~|}{~}~|~~~{~|~~{}{{~~{~|{{~{~{~zyzz{yzzz{y{|}z|}z}{}{{{{{{{{{{{{{{{{{{|{{{{{{}{z{z{z{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|{{{{{{}{{{{{{{{{{{|{{{{{|{{{{{|{{{{{|{{{{{{|{|{{{{{|{|{{{{{|}{{{{{|{{{{{}|{{{{}|{|{{}|{{{{|}{{{{{|}|{{{{{|}||{{{{|}{{{{{|{{{{{|{}{{{|{{|{{|{{{{{{{|||{{{|}|{{{||||{{|}||}||}||||{||{}|{||{}|{{|{||{{{{{{|~|{{{~~{}{{~|~~~{~}~|}{~}~|}~{~|}~{{~|}~{{{|}~{{{{{{{{{|{{{{|z}{{{{{|{{{{{|}z{{{|}z|zz{{z{{|}{{{{|}{{{{{{|{{{|{{|{|z}{{{|{|{{{{{|}z{{{|}||{z{||{{|}||{||}||{{{{|}{{|{{|}|z}{{{|}||{{{{|}z{{{|}||{{{|z}{|}|{{||}|{{{{{{{{{|{{{{}z}{{{|{|{{{}{|}z{}{|}||{{|}{{{|}}{{{|}{{{{{{{{{{|{{{{~{}{{{{{~~{{{{|}{{{{|}|~{{|}{{{|}~{{{|}~{{{{}|}|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}|{|{|{|z{|{||{{z{|{|zz{{{|}z{{{|{|z{{|{||{z{||{||{||{z{{|}|{|z{|}||{{z{|}||z{{{|}z{{{|{|z{{|{|z}{{|z{||{|{{z{{{{|{|{{{{}|{{{{|{|z{{}{|}z{}{|{|z{{|{}{{{|}{z{|{|{{{{{z{|{|{{z{~|{{{{{{~~{{{{|}{{{{|{|~{{|{|z{{|{{{z|{~{{{{{{{|{|{{{{}|}{{{|{|{{{}{|}{{}{|}||{{|}}{{{|}}{{|}|{{{{||}||||||}~|}||||}~~|||||}|||||}~~|||}~|}||}~|||}~|||||{{|}z{zz{|}|z{{z{|}||z{z{|}z{z{z{|zz{z{|z}{z{|{{|{|z{z{{{{z{{{{{{}z{{{{|{|z{{}{|}z{}{|{|zz{|{}{{{{{}{z{{z{z{{{z{{{{{{z{~{{{{{{{~~{{{{|}{{{{{{|~{{{{|z{{{{|{{z{{{{{{{{{z{|{{{{|z}{{{{{|{{{{{|}z{{{|}||{{|}|{{{|}|{{{|}|{{{{{{|{|{{{{}|{{{{|{|{{{}{|}{{}{|{|z{{|{}{{{|{}{{{|{|{{{{|}|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{||}~||{z{zz{z{{~}||{|~}||}|~}|||~~}|||||}|||||~~}|||{}|~}|{||||~}|{{z|{|z|z|{|{{{}{|{{{|{|{{{{}|{}{{{|{|{{{{|}{{{z|{||{{{{z{{zz{zz{zz{z{{zzz~z{z{zz{}z{z{z~~{z{z{{{~{z{zzz{~{z{zzz{zzzz{zz{zz}{{{zz|{|{{zz{|{}zzz|{|zzz|{}zzzzzzzzzzz{{||{||z|{z{}{|{z{{{|{y{{{z}z{{{{|z}|{{{{{|}|{{{{{|}|{{|{|{~}|||~}|{}|~}|{|~~}|{|{|}|{|{|~~}|{|{}|~}|{||{|~}|{{z||}|z||}|{{{}}|{{||}|{{{{}|{}{{{|{|{{{}|}{{{z|{||{{{{z{~{|z{z{|{{z|{|{{~|{|{{{{}|{{{z~~{{{z{{|~{z{z|{|~{z{z{{|||zz{{|{{z}{|{{{|{|{{{{}|{}{z{|{|{{{||}{z{{|{||{z{{{||{|||z|{{}{|{|{{{|{|{{{{}|{{{{||}|{{{{||}|{{|{||}|{{z{|{||{||{{{||{|{{z|{|{{{z}|{{{{{|{|{{{{||{|{z|{||{|{|}|}~}||}|~}|}}~}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}||}|~}|}{z{~}|z{z~}|{{z}|{{~|}|{{{{}|{{{z~~{{{z{}{~{z{z|{{~{z{{z{{}|z{z{}|{{z}|{{||}|{{{{}|{}{zz|{|{z{}{}{z{z|{{|{z{{{||}|||z|}|{}{|{{{||}|{{{z}|{{{{||}|{{{}{|}|{{|{{|}|{{z{|}||{||}|{{||{{{||}|{{{z}|{{{{{|{|{{{}{|{|{z|{{|{|{{z{z}|z{z{}|{{z{{zz|{}|{{{z}|{{{zz|{{{z{}z|{z{z|{z|{z{{{|~}|z|{~}|~{{~}|~{~}|~{~{}|~}~{~~~|~{{}{~~{{{|~{~{{{zz{|||{zz|||{{{}||{{|||{{{|}|{}{z{|{|{z{||}{{{z|{||{{{{{||{{||z|{{{}{|{{{{{|{{{{{}|{{{{||}|{{{{{|}|{{{{{|}|{{z{|{{|{||{{{{||{{{{z|{{{{{}|z{{{{|{|{{{{{|{|{z{z{|{|{z{z{{zzz{{{zz{z{{zzzz{{{zz{}zz{zz{|{zz{zz{{{zz{zz{z{zzzzz{zzzzzzzzz{z{zzzzz{zzzz{}zzzzz{|{zzzzz{{{zzzzz{z{zz}{}z}|{}|{zzzzzz{zzzz~{~~|{|~|~~{{}|~~{~|~~~|~|~|}|~}~|~}|~|~|{~}|~{{{|~}|~|{|||{|||||{{{|}|{{{||||{{{|}||}{{||||{{||}{||{{{||{||{z||}|z|z|}|{{{|}|{{||}|{{{{}{{{{{||{{{{}{|{{{z|{{|{{{{z||||z|z|||{{{|||{{{|||{{{{}|{{{{{|{{{{||}{{{z|{|}{{{{z|||{z|z||{{{{{|{{{{||z{{{{}|{{{{{|{{{{|{|{{{z{{{|{{{{z|{|{z|z{|{{{{{|{{{{||z{{{{}{{{{{{{z{zz|{|{{{z{{{|{{{|}|}~}||}|~}|}}|~}|}|~~}|}|}|}|}|}|~~}|}|}}~}|}||}|~}|}{{|~{{||{~{{{}{~{{{{~~{{{{{z}|{{{{~|}|{{{{{}|{{{{{~}|{{{{|{{|{{|{{{}{}{{{{{|{|{{{z}|{}{{||}|{{{{{}|{{{{{|}|{{{{|}||{{|}|{}{|}|{{||}|{{{{}|{{{{||}|{{{}{|{{{|{{|}|{{{{|{||{{|{|{}{|{|{{{|{|{{{z}|{{{{||}|{{{{||{z{|{||}|{{{{|{{|{{|{{{}{|{{{{{|{{{{{z}|{{{{||}|{{{{{|{z{{{{|}|{|{{|{~}||{|~}||}|~}|||~~}|||||}|||||~~}|||{}|~}|{|||~}|{{{||{{||||{{{}|}{{{{{|{|{{{{}|{}{{||}|{{{{{}}|{{{{|}|{{z|~{{|||~{{{{|~{{{{~~{{{{{z}|{{{{~|{|{{{{{|{|{z{{{{|{{z{|{{|{||{{{{|}{{{{z|{|{{{z}|{}{{{|{|{{{{{}{|{z{z{z|{{z{|}||{||}|{{||}|{{||}|{{{{}|{{{{{|{|{{{}{|{|{z|{{|{{{z{|{||{||{|{{||{|{{z|{|{{{z}|{{{{z|{|{{{{||{|{z|{||{zyyy{{yxyy{{yzyx{{zzy{{zzy{y{zzyyyzzyyyy{zzyyy{yzzzyyyyyz{z{zzzzz{zz{{z{zz{z{zz{z{z{z{z{z{{z{zzzz{{zzzz{{{{zyyz{zyyyz{zzzy{{zzzy{zzzz{yzzzzyyzzzyzzz{zyyyzzzzzyyyyyy{zyyyz{yzzyz{yzzy{zzyyy{yzyyy{zyyyz{zzzyy{yzyzzyzyzz{yzyz{yzzyz{yzzz{yzzz{{zzzzyz{zzyzzz{zyzyzzz{zyzzyzz{zzyz{zzzy{{zzzz{zzzz{{zzzzyyzzzyzzz{zzzyzzz{zzzyyz{zz{zzzz{zz{{z{zz{z{zz{z{z{z{z{z{{z{zzz{{{zzzz{{{{z{zz{{{{{z{{zz{{{{zz{{{zzz{{{{zzzzz{{zz{{{z{{z{z{{z{{yyyyz{zyyy{yzzyz{zzzz{zzyyy{zzyyy{zyyyz{zzzyy{yzzzzyzyzz{zyzyz{zzyz{zzzz{zzzz{{zzzzyz{zzyzzz{zyzyzzz{zyz{{z{{z{{{{{z{{{{zz{{{zz{z{{{z{z{zz{{{z{{{{{{zzz{{{{{{zz{{z{{z{{zz{{{zzzy{zzzz{y{{zzzz{{{zz{{{z{{zzz{{z{{zz{{{{{zz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{z{{{{{yzzz{{zyzz{{zzz{{zzz{{zzz{y{zzzzy{zzzzz{{zzyz{zzzzzyzyzz{zyzyz{zzzyz{zzz{zzzz{{zzzzyz{zzyzzz{zyzyzzz{zyz{{z{{z{{{{{zz{{{{z{{{zz{z{{{z{z{zz{{{z{{{{{{zzz{{{{{zyzz{zzzzz{zzzz{{zzy{zzzz{zzzzzzyzzzzzzz{zzzyzzz{zzz{{z{{{{{{{{{zz{{{{z{{{z{z{{{{{z{z{{{{z{|{z{{{{z{{z{{zyzz{{yzyz{{zzy{{{zzz{zzz{{{zzzyz{zzyzz{{zzzy{zz{zzz{{z{{{{{{{{{z{{{{{z{{{z{z{{{z{z{zz{{{z{{{{{{z{z{{{{{zyzzz{zzzzz{zzz{{{zzy{zzzzz{zyzzyzzzzzz{{zzzy{zz{zzzyyyyz{yyyyz{yzyyz{zzyzzyzyy{yzyyyzzyyyy{zzzyy{yzyzzy{{{{zz{zzz{yyzy{{{{|{{{{{|{{{{}|{{|{|{{|{{{{{|{{{|{{{||{{{{{{{|{{{{{z{{{{{{z{{{{{{{{{{z{{{{z{{{{{z{z{{{z{{{|{{{z{{{|{{{{zz{{{{{z{{{z{{{{{z{{{{z{z{{{{{zzzz{zz{{{{{{z{z{{{{{{zz{{z{{z{{zz{{{{zzz{{zzzzz{{{zzzzzzzz{{{{{{zzz{{{{{{zz{{z{{z{{zz{{{{zzz{{zzzzz{{{zzzzzzzy{{{{{{zzz{{{{{z{zzz{zz{zz{z{{{{{z{z{{z{z{z{z{z{z{{z{z{z{{zz{zz{{{z{{{{{{{{{|{{{{{|{{{{|{{{{|{|{{{|{|{{|{|{{{{|{{{{|{{{{{{z{{z{{{{{{z{{{{{z{{{{z{z{{{{{z{z{{{{z{{{{{zzz{{{{{z{zz{zzz{z{zz{{{{zz{z{zz{z{{{z{z{z{{z{zzz{zzzzzz{{{zz{zz{{zz{z{{z{{{{{z{z{{z{z{z{z{z{z{{z{zz{zzyz{zz{{{zz{zzzzzz{zzzz{{{{zz{z{zz{z{z{z{z{z{{z{zzzzzyyzzz{{{zzyzz{zzzzz{zzzzz{zzzz{zzzz{{zzzzzz{zzzzzz{zzzyzz{zzzz{z{z{{z{z{{{{z{{{{{z{z{{z{{{{{z{{{{{{{{z{{{{{z{zz{{{z{{z{{{{{{{{{z{{{{{z{{{{z{z{{{{{z{z{{{{z{{{{{{z{z{{{{{zz{{z{{z{{zzz{{{zzz{{zzzzz{{{zzzzz{{zz{{{z{{zzz{{{{zyzz{zzzzz{zzzz{{zzzz{zzzz{{zzzzzyzzzzzzz{zzzyzzz{zzzyzz{{zzzz{{zzzz{{zzyz{zzz{z{zzzzyzzzzzz{zzzzy{yzzzyyyyzzzyyyzzzzyyzzzzyzyzyyzyyzyyzzyyyyz{zzyyzzzyzzyxyyyzzyxyyzyyzxyyyyyzyyyyyxzyyxyyyxxyyzzzyxzyyyyzxyxyzyzyzzzyzyzzyzyzzyzyyzyzzzzyyzyyzyzyzz{zzzyzzzzzzzyyyyzzyyyzzzzyyyzzzyzyzyyzyyyyyzzyyyyz{zzyyzzzyzzyyxyyxzyxyxyzyyxyzyyzyzyyyyyzyyxxzzyxyzzzzyxzzyzyzyzyzzyzzyzyzzyzyzzyzyzzyzzyyzyzyyzzzyzz{zzzyzzzzzzzxyyyzzzyyzzyzxyzyzzyzyzyyzyzzyyzzyyyyzzzzyyzyzyzzyzyyyzyzzzzyzzzzzyzzzzzzzzzzzyzzzyzzzzyzzzzzzyzzzzzzyzyzzyzzzyzzzyzyzzyzyzzyzzzzyyzyyzyzyzz{zzzyzzzzzzzyxyyyzzyxyxzyzxyzyyzyzyyyyyzyyxyzzyxyzzzzyxzzyzyzyxyyyyzzyyyyzzxyzyyzyzyyyyzyyyyyyz{yyyzzzzyyzzzyzzxzyzzyzzzyzyzzzyzzyzyzzyzzyyzyzyyzzzyzz{zzzyzzzzzzzyyyzyzzzzyyzzzzzzzzzzzzzzzzzzzzyzzzzzzz{zzzzzzzzzzyyyyyzzzyyyzzzzyyzzzzzzzyzyyzyyyzzzyyyzzzzyyzzzzzzyxyyyyzzyyyyzzzzyzyzyzyyyyzyyyyyyz{yyyzzzzyyzzzyzzxzyzzzzzzyzzzzzzzzzzyzzyzzzzzyzyzzyzyzz{zzzyzzzzzzzyyzyzzzzyyzzzzzzzzyyzzyzzxzzzzyzxzzyzz{zzzyzzzzzzyzyzzyzzzyzyzzyzyzzyzzzyzzzzzyzyyzzzyzz{zzzyzzzzzzzxyyyzzzyyyzzzzyyzzzzyzzyyzzyzyzzz{yyyzzzzyyzzzyzzyzyzzzzzzyzzzzzzzzzyzyzzzzzzzyzyzzyzyzz{zzzyzzzzzzzyyyyzzzyyyzzyzyyzyzzyzyzyyzyzxyzzyyyyzzzzyyzyzyzzyyzzzzyzyyyyzzzzz{{{zzz{{zzyz{zzzz{z{{zz{zzyz{{zz{{z{{z{{z{z{zzz{{z{zzz{z{{z|{{{zz{z{z{{zz{z{zzz{z{{|zzzz{{z{zzzzzzzz{zzzzz{zzzz{{{{z{z{zzzzz{zzzzzzz{{|zzz{z{z|zzzzzzzzzzzzzzzzzyz{zzzz{zzzzzzzzyzzzzz{{zzzzzzzzzzzzzzzzzzzzzzzzzzyz{zzzzzzzzzzzzzzzzzyz{{zzzzzzzzzzzzyzyzzzzyyzz{zzzz{yyzz{yzzzz{zzyzz{zyz{zzzyz{zzzzz|zzz{zzzzz{{zzz{{zzzzzzzzz{zzzzzz{z{zzz{{zzz{z{{zzzzyzzzzzzyzzzzzzzzzzzzzzzzzzzzzzyzz{zyzz{zzyzzzzzzzyyzyzzzzyyzzzzzzzzzzyzzzzzzzzzzyzz{zyzzzzzyzzzzzzyyyzyzzzzyyzzzzzzzzyyyzzyzzzzzzzyzz{zyzzzzzyzzzzzzyyxyyyzyyyyyzzyyyzzyzzzzyyyyzzyyyyyzyyyz{zyyxzyzzyyyyyyzzzyyyy{zzyyzzzzyzzyyyzzzzyyzz{yyyzzzzyyzzyzzyz{zzzzzzzzzzz{zzzz{zz{zzzzzzzzzzzzzz{zzz{zzzzzzzz{zzzyzzzzzzyzzzzzzzzzyzyzzyzzzzzzzyzzzzyzz{zzzyzzzzzzzyzzyzzzyzyzzyzyzzyzzzzyzzyzzyzyyzyzyzz{zzzyzzzzzzyyyyzzzyyyzzyzyyzyzzyzyzyyzzyzyyzzyyyyzzzzyyzyzyzzyyyyyyyyyyzzyyyzzzyxyzyyyxxzyyyyyyyxyz{zyyyzyzzyyyyyzyyyyzzzyyyyzyyxzyyyyyyyyyyyyyyyzz{zyyyzyyzyyyxyxyyxyxzyyxxyyyyxyyyxyyxyyyyxyyxyxyyzyyzyyyzyxyyyyyyyyyyzxyyyyzyyyyyyyyyyyyyyyyyyyzyxyyyzyzzxyyyyyyyyyyzzyyyzzzyyyzyyyyyyyyyyyyyxyz{zyyyzyzzyyyyyyyyyyzzzyyyyzyyxzyyyyyxyyyyyyyyyzz{zyyyzyyzyyyyyyyyyyyzzyyyzzzyxyzyyyyxzyyyyyyyxyz{zyyyzyzzyyyyyyzyyyzzzyxyyyyyxzyyyyyyyyyyyyyxyzzyzyyzyyyzyxxyyyyyyyyyyzzyyyyyzyyyyyyyyyyyyyyyyyyyzyzyyyzyzzyyyyyyyyyyyzzyyyzzzyyyzyyyyyyyyyyyyyxyz{zyyyzyzzyyyxxyxyyxyxyyxxyyyyyyyyxyyyyxyyxyyyxxzzzyyzyyzzyyyxyyyyyxyyzyyyyyzyxyyyyyyzyyyyxyyyxyzyzyyzzyzzyyyyyyyyyyyyzzyyzzzyxyzyyyyyzyyyyyyyyyz{zyyzzyzzyxyyyyyyyyxyyzzyyyzzyyyyyyzyyyyyyyyyyyyz{zyyyzyzzyyyyyyzyyyyzyzyxyyyyyzyyyyyyyyyyyyyyyzzzzyyzyyzzyyyyyyyyyyyyzyyxyyyyyyyyyyyyyyxyyzyxyyzyzyyzyyyyyyyyyxxyyyxyzzyxyyyyyyyyyyyyyyxxyzyyyxzyzyyyyyyzyyyyxyyyyyyyzyyyyyzzxyyyyyyzyyyyxyyyyyz{zyyzzyzzyyyyyyyyyyyyyzyyyzzzyyzyyyyyyyyyyyyyxyz{zyyzzyzzyyyyyyzyyyyzzzyxyyyyyyzyyyyyyyxyyzyxyzzyzyyzyyyzyyyyyyyyyyyyyzyyyzzzyyyzyyyyzxyyyyxyxyz{zyyyzyzzyyyyyyzyyyzyzzyzzyzyz|zzyy|zzzyzzzyyzzzzyyzzyzz|{zzy|zzzzzz{zyzzz{zzzzzzzyz{{zzz{zy{zz{zzzzz{zzz{zz{z{z{zzyzzz{zzzy{zzzzzzz{{zyz{zz{zz{yz{zzzzz{{zzzz{z{zyyyzzyzzyzyzz|{yzzzz{zzzzzzzzzzyyzzzzz{{|zyzzzz|yyyyyyzzyyyzzzyyyzzzzyzzzyzzzzzyyzzzyzz{zzyzzzzzyyyyyyyyyyyyzyyyyyzzyyyyyyyyyyyyyyzyyyy{zyyyzyzyyyzyyyyyzyyyzyyzyy{zyyy{yyzyz{yzyyzyzyy{zyzz{yzzy|yzyyzzyzyzzzzyzzzz{yyzzyy{zzzyzzyzyzyyz{yzzzy{zyyyyyyzyyyyzyzyyyzzzyyzzyyyyyzyyyyzyyyzz{zyyzyzzyyyyyyzyyyyzyzyyyyyzyyzyyyyyyyyyyyzyyyzzyzyyzyzzyyyyxyxyyyyxzzyyyyzyyyyzyyyyzyyyyyyyyyxz{zyyzyzzyyyyyyzyyyxy{zyxyzyyyyzyzyyyzyyyyyzzyyzzyzyy{yyzyz{yyzyyzzyyyzz{yyyzyzzyzyyzyzzyyyyzzyyzz{yzzyzzz{yyyyyyyyyyyyzzyyyzzzyyyzyyyyzzyyyyyyyyyz{zyyzzyzyyyyyyyyyyyyzzyyyzzzyyyzyyyxyzxyyyyyyyyz{zyyzzyzzyyyyyzyyyyyzyyyyzyzyxyyyyyxyyyyyyyyyyyz{zyyzyyzzyyxyyzyyyyyyyxyyzyyyyyzyyyyyyyxyyyyyyyzzzyyzyyzzxxxxyyyyzxyyyyyyxxyyyyyyzyyyyxyyyyxyyxyxyyyyxyzyyyzyyyyyzyyyyyzyyyyzyzyyyyyyyyyyyyyyyyyyyz{zyyzyyzzyyyxyzyyyyyyyxyyzyyyxyzyyyxxyyxyyyyyyyzzzyyzyyzzxyxxyyxyxyyyyxxyyyyyyyyyxyyyyxxxyyxyxxzzzxyzzyyzyyyxyyzyyyyzyxyyzyzyyyzyyyyyyyxyyyyyyyz{zyyzyyzzyyyyyyzyyyyyyyyyzyyyyyzyyyyyyyyyyyxyyyzyzyyzzyyzxxyyxyyyzyyyyyyyxyzyyyyzyyyyyyyyyxyyyyxyzyyyyzyyyzyyyxyyzyyyyzyxyyzyzyyyzyyyxyyyxyyyyyyyz{zyyzyyzzyyxyyyzyyyyyyyyyyyyyyyyxyyyyyyyxyzyyxyzyyyyyyyyzyyxyyyzyyyyyyyxyzyyyyyyyxyyyyyyxyyyyxyzzzyyzzyyzyyyyyyzyyxyyzyyyzyzyyyzyyyxyzyyyyyyyyyz{zyyzzyzzxyyyyyyzyyyyyyyyyzyyyyzzyyyyyyyyyyyyyyyzzyyyzyyzzyyyxyyzyyxyyyyyyyyyyyyzyyyzyyyxyyyxyyyzyzyyzzyyzyyyxyxyyyyyxyyyyyzyyyyzyxyyyyyxyxyyyyxzzyyxzzyzyyyxyyyzyyyyyyyyyyzyyyyyxyyyyyyyxyzyyxyzyyyyzyyyzyyyxyyzyyyyyyyxyyzyyyyzyyyyyyyxyyyyyyxzzzyyzzyzzyyyxyyzyyxyyzyyyyyyzyyzyyyzyyyxyyyxyyyz{zyyzzyzzyxxyyyzyxyyyyyyyyzyyyyzxyyyyxyyyyzyxyyzyzyyzyyyzyyyyyyzyyzyyyyyzzyyyzzzyyyzzzzyzzyzyzyzyyyyzyyzz{zzyzzzzzzyyzyyzzyzyzzzzyz|zzzyzzyzzzzzzzzzzyyz|{zzy|zzzzz{zzzyzz{yzzzzzzyzzzzyz{zyzzzzzzzzz{zzz{zzyzzz{zzzzz{zzzzz{z{zyzzzz{zzz{zz{zz{yz{zzz{zz{zzzz{z{zzyyzyz|zyzyzz|yyzzzzzyzzyzyzzyzzyzzzyzz{|zzzzzz|yyyyyyyyyyyyyyyyyzyyyyyzyyyyyyyyyyzyyyzyyyyzzyyyyyyyyyyyyyyyyyyyyzyyyyyzyyyyyyyyyyzyyyzzyyyzzyzyyzzyyyzyzyzyzzyzyzyzzyy{zyzzz{yyzyzyzyyzzyyzzyzz|yyyyzyzyyyzy{yyzyyy{yyzzzz{zyzyyzyzyyzyz{yyzzy{zyyyyyyzyyyyyzyyyyyyzyyyzyyyyyyyyyyzyyyyz{zyyzyzzyyyyyxzyyyyyyyxyyzxyyyyzyxyyyyyyyxyyyyyzzyyzyyzzyyyyyxzyyyyyyyyyyzyyyyyzyyyzyyyyyyyyyyyzzzyxzyzzyyyzyyzyyyyzyzyyy{yyzyzzyyyzzyzzyyzzyyzzyzyy{zzzz{zyyyyy{yxyyyyzyyyzzyzyzyyzyzyyyyyzzyyyyzyzzyzyy{xyyyyyzxyxyyzyxyyzyzyyyyyyyzyyyyyyxxyyyz{zxyzzyzxxyxyyyxyxyzyyyxyyyyyxzyxyyyyxyyxyzzxxyyzzzyyyzyzzzyyyyzzzyyyzyzyyyyyyyyyzyyyyxyyyyyyzzyyzzzyyzyyzzzzzyyyyzzyyyzzyzyzzyzyzzzyyzzyzyyyyzzzyyzzzzyzzyzyzyxyyyxyxyyyyxyzyyyxyyyyyyyyxyyyxyyyxxyyyxyyzzyxyyzyyyyzyyyzyzyyyzyzyyyyyyyyyzyyyyyzyyyyyzzyyzzzyyzzyzzyzyyyyxzyyyyzyyzyxzyyyyyzyyyyyzyyyyzzyyyzzzyxzzyyyzzyxyxyyxyxyzyyyxyyyyyyzyxyyyyxyyxyzzyxyyzzzyyyzyzzyyyyyyzyzyyyyzyyzyyyzyyzyyyyzzzyyyyyyyyzzzyyzzzyzyzzyyyyyzzyyzzyzyzzyzyzzzyyzzyzyyyyzzzyyzzzzyzzyzyzyyyzyyyxyyzyyzyyyyxyyyyyyzyyyyyzyyyyyzzyyzzyyxzzzzyyzyyyyyzzyzyyyzzyzyyyzzyzyyyzyyzyyyzzyyyzzzzyzyzzzzyzyyyyzyzzyyzzyzzzyyzyyzyyyzzzzyyyyzzyyzzzyyzzzyzyzyyyyxyzyyyyzyzyyzyyyyyzyyyyyzyyyyzzyyyzzzyxzzyyyzzzyyyyyzzyyyzyyyyyyyyyzzyyyyyyyyyyzzzyyzzzzyzyzzzzzzyyyyzzzyyyzzzzzzyzyzzzyyzzyzyyyyzzzyyzzzzyzzyzzzyzyyyyyzzyzyyyyzzyzyyzzyzyyyzyyzyyyzzyyyzzzzyzyzyzzzzyyyyyzzxyyzyyzyyyyyyyzyyyyzyyyyyyzzyyzzzzyzzyzyzzzyyyyzzzzyyzyzzzzzyzyyzyyyzzzzyyyyzzyyzzzyyzzzyzzzzzyyxyzzyyyzzyzyyzyzzyzzyyyzzyyyyzzzyyzzzzxzzyzyzzyyyyyzzyzyyzyzzyzyyyzzzyyyzzzzyyyzzyyyzzzzyzzzzzzzzyyyyzzzyyyzyzzzzzyyyyyyyyyzxyyyyzxzyyzz{yyzzyyzzyyyyyyzzzzyzzzyzyzzzzzyzzzzyzzyzzzzzyyzzzzzyyzzzyyzzzzyzzzzzzzzyzzyzzzzzzzzzzyzzzzzzzzyzzzzzzzzzzzyzzzzzyzzzzzzzzzyzyzzzzzyz{zzzzzy{zzz{zyzzzzzyzzzzzyz{zzyzzz{zzzzzzzz{zzzzzzz{z{zzzz{z{zzzz{zz{zz{zzzzzz{zzzz{z{zzzyyzz{zzzz{{z{zyzz{z{zzzyzz{zz{yz{{zz{{z{zz{z{z{zyzyyyyyzzyyyzyyzzzzyyyyyyyyyyzzyyyyzzzyyzzyyzzzyyyyzyyyyyzzyyyzyyzzzzyyyyyzyyyyzzyyyyzzzyzzyyyzzzzyyzzyyyyzzzzyyzyzzzzzzyzzzzyzyzzzzyyzzzzyyzzzyzzzzzzzzzzzzzz{zzzzzzz{zzzzzzzzzzzzzzzzzzzz{zzzzzzzzzzzz{zzyzyy{zzzyzzy{zzzzzy{zzyyzy{zzzzyzzzzyzzz{yzzzy{zyzyyyyyyzyyyzyyyyyyyyyyyzyyyyzzyyyyyzzyyzzyzzzyzyyzyyyyyzzyzyyzyzzyzyyyzzzzyyyzzyzyyyyzyyyyzzzyyzyzzzzyzyyzzzzyzzyzzzzzyyzzyzyyyzzzzzyyzzzyzzzzzyzzzzzzzyyyyyzzyyyzyyzzzzyzyzz{zyzzzzyyzyzzzyyzzzzyz{zzzzzzyyyyyyzyyyyzzyzyyzyyyyyzyyzzzzyyyyzzyyyzzyzyzzzyzzyyyxyzzyyyyyyzzyyyyyyzzyyyyyzxyyyyzyyxyyzzzyyzzyzzyzyzzyzzyzyzzyzzyzzzzy{zyzzzz{{zyzz{zyzyz{zzzyz{zzz{yyyxy{yyyyzyy{yyzzyyy{yzyyyy{yyyyyz{yyyzzz{zxzzyzy{{zzzzz{zyzz{zz{z{{zzzz{zzzzzz{{{zzz{zyzz{z{{yz{z{zz{z{zzzzz{zzzz{zz{zzzz{zz{zzz{zzz{yzz{{zzzz{zzzzz{z{zzyyy{{yyyy{{yyxyzz{{xyzyzz{{yyyzz{y{yyyzyyyyyzz{yyyzzzy{zzzzzzzyz{z{zyzz{{zzzyzzzzzzz{z{zzz{yyzz{{zzyz{{zzzzzzyzyzzzzyzyzzzzzyzzzzz{zyzzzz{{zyzz{zyzyz{zzzyz{zzz{zyyyxy{yyxzzy{zyzzyzy{zzyyzz{yyyyyz{yyyzzz{zxzzzzy{{{zzzzz{{zz{zz{{{{zzzz{{zzzzz{{{zzz{zyzz{z{{yz{z{zz{z{zzzzzz{zzz{zz{zzzz{zz{zzz{zzz{zzz{{zzzz{{zzzz{{{zzyyzzyzyzzzzzyzzzzzzyzzzzz{zyzzzz{{zyzzzyyzzz{zzzyz{zzzz{zzyyzz{zzzzzzzzyzzzzz{yyzzzzy{yyzzzyyyzzzzzyzzzzzzz{zzzzzz{z{z{zzy{{zzzzz{zzzzz{z{zzz{zyzz{{zzyz{{zzzzz{yzyzzz{zyzyzzzzyzzzzz{zyzzzz{{zyzz{zyzyz{zzzyz{zzz{{zyyyz{{yyyzzz{yzzyzz{{zzyzz{y{yyzz{yyyzzz{zyzzzzz{{{{{{z{{{{{zz{{{{zz{{{{{{{{{{{{{{{{{{{{{z{{{{{z{{{z{zz{zzzzzz{zzz{zzz{{{zzzz{yzzzz{y{zzz{{yzz{zzzzz{zzzzz{zyyyyy{zyyyyyy{zyyzyyzzyyyyy{yyyyyzzyyyzzy{yyyzyzy{{zzzyyz{zzzzzyz{zzyzzzzzyyzyz{yyyyzzzyyyzzz{zyzzzyz{{zzzzzz{zz{z{zz{z{{zzzzzzzzzz{z{zzz{zyzz{{z{yz{{zzz{{zyzyzz{zzyzyzz{zzyzzzz{zyzzz{{{zyzz{zyzzz{{zzyz{zz{{{{z{zz{{z{z{{z{{{{zz{z{z{z{z{{{z{z{{y{z{z{|zz{z{{z{yzyy{zzz{zz{{{{zzzzzzzzzzzz{zzzz{{{zzzzzzzzzz{zzyzzzyzz{{zzzz{{zzzzzzzzzzzzzzzz{zzzz{{{zzzzzzzzzz{zzzzzzyzz{{zzzz{{zzzz{{zzzzz{{zzz{zz{{{{{zzz{zzzzzz{z{zzzzyzz{{z{zz{{z{z{z{zzzz{z{{zz{z{z{{{{zz{z{zzzz{{{{zzzzzzz{{{z{z{{{{{z{{{{{{z{{{{{{{z{{{{{z{z{{{{z{{{{{z{{{z{{{{{{{{{{{{z{zzzzzzyzzz{zzzyzzzzzzzyzzzzzzzzy{yzzz{zyyzyzzzz{zzzz{{zzzzy{{z{zzzz{{zzzzzz{zzzzzz{y{yzzz{zzyzz{zzz{zzz{zzzzzzzzzz{zzzzzzzzzzzzz{zzzzzz{{zzzz{zzzz{zzzz{{zzzzzzzzzzzzz{z{zzz{{{zzzzz{zzzzz{z{zzz{{zzz{zzzz{{zzzzz{|z{z{{{{|z{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{z{z{{{{zz{{zzzzzz{zz{zzzz{{zzzzzy{{zzzzz{y{yzzz{zzzz{z{zz{zzz{{{zzyyy{{zzzzzz{{zyzzzz{zyyzzz{y{yyzzzyyyzzz{yyzzzy{zzzzyzzzzzzzzzzzzzyzzzzz{zyzzzz{{zyzzzyyzzz{zzzz{zzzzzzzzzzzzzzz{zzz{{{zzzzz{zzzzz{zzzzz{zyzz{zzzzz{zzzz{zzzzzz{zz{z{zz{z{{zzzz{{zzzzz{{{zzz{{yzz{{{{yz{{zz{z{zzzzzz{{{zz{zz{{zzz{zz{zzz{zzz{zzz{{zzzz{zzzzz{{zzzzzzzzyzzzzzzzzzzzzzyzzzzz{zyzzzz{{zyzz{zyzzz{zzzzz{zz{|z{{{{z{|z{|{{z{|z}{{{y{|{{{{{z}z{{{|}z|{{|}{z{{|}{{{{z{zzzzzzz}zzzzz|z}zzz}{|z|zzz}{|{zzzz|{|zzzzz}{{zzzzzzzz{zzzzzz{zzzzzzz{zz{zzzz{z~zzzzz{{zzzz{~~zzz{~{{zz{~{zz|}|{z{{|}|z{z{{|}|z{{{{|}||z{{{|}z{z{{{|zz{z{|{}{z{|{{||{|zz{{|{}zzz{{|{}z{{}{|{|{z{}{|}{{z{|{|{z{{{}|{{z{||{||}~|{{{|}~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{|z{z|{||{z{z{||{|{{|{||{{{{|{|zz{{{|}z{z{|{|zz{|{||{{|{||{||{|z{{{{{|z{|{{|{|z}{{{|{|{{{{{|}{{{{|}||{{|}||{{|}||{||{|z{zz{|}zzz{{|{}z{{}{|{|{z{}{|}{{z{|{|zz{z{}|{{z{||{||{~z{zz{|{zzz{{|{|z{{{{|{|~z{{{|}{{z{{{~~z{z{~|{{z{~|{||}|z{z{{|}}{z{{|}}z{{}{|}||z{}{|}{{z{|{|{z{{{}|}{z{||{||}~|{|{{|}~|||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{|{||}zz{z{{|}{z{zzzz{y{{{{|}z|z{{{|}z{z{{{|zz{z{|z}{z{|z{||}||{z{{|}||{|{z{||{{{{|}||z{{{|}z{z{|{|zz{|{|z}{|{|{{||}|z{{{{|}|z{|{{{|z}{{{|}||{{{{|}z{{{|}||{{|}|z}{|}|{{||}{z{z{{|}}z{z{{|}z{{}{|}||z{}{|}{{z{|{|zz{z{}{}{z{|{{||}~z{z{{|}~z{z{{|}z{{{{|}|~z{{{|}{{z{{{~~z{z{~{}{z{~{{||}~|}|}}|}~|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||zzzzzzzzzz{zzzzzzz{z{zyzz{zzzzzz}{zzzz{|{zzz{{{yzz{z{zzzz{{z{zzzz{{zzzz{z{z{zz{z{zzz{zz}{z{zz{|{{zz{{{zzz{z{zzz{||{z{{z{||{|z{z{||{{zz{|zz{zz|}{{z{|{|{z{|{|{{{|{|{zz{{|z{{{{{{|z{|{{{{|z}{{{{|{{{{{|}{{{{|}||{{|}|{{{|}|{{{|{|z{zz{|{}zz{{{|{}{{{}{|||z{}{|}|{z{|{|{z{{{}|{{{{||{||}~{{{{~|}~{{z{~|}~z{~}~|}~{~}~|}{{{~|~~~{{{~~{}{z{~{~|zzzz{zzzzzz{|}z|}z}{}z{{z{zzzz{{zzz{zz{{z{z{zz{|{zz{z{}{zz{z{{zz{{{z{zz{{{zzz{|z{z{{z{|zzz{{z{{z{{{{z{|{z{{{|}{{{{{|{z{{{|{{{z{|{{z|{|z{zz{|{|zzz{{|{|z{{{{|{|{z{{z|}z{z{{|{z{{{}|{{z{}|{||}{z{z{{|}{z{z{{|}{z{{{{|}||z{{{{}{{z{{|{z{{{|{}{z{|{{|{{||{{{{{{}|{|{{|{}|{{}{|{|{{{}{|}|{{{|||{{|{}|{{|{|{{{{{~|~{~{{{~|~|{{|~~{}{}~|~~~{~}~|}{~{~|}~{~|}~{{~|}~{{{{{|z{{{{{{|{{|{{{{|z}{{{{{|{{{{{|}z{{{|}||{z{|{{{|}|{{{|{|z{{{{|{|{{|{{|{|z}{{{|{|{{{{{|}z{{{|}||{z{||{{|}||{||}|z{{{{|}|{{|{{|}|z}{{{|}||{{{{|}{{{{|}||{{{|{}{|}|{{|{{|z{{{{{{}{{|{{|{}z}{}{|{|{{{}{|}z{{{|}||{{|}z{{|}{{{{{{~z{{{{{{~{{|{{{{~z}{{{{{~~{{{{|}z{{{|}|~{{|}{{{|}~{{{|}~|}|}}|}~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}|||{||{z{{|{||{|{{|{||{{{{|{|zz{{{|}z{z{|{|zz{|{||{z{||{||}||{z{{|}||{|{{|}||{{{{|}||z{{{|}{{z{|{|{z{|{|{}{{|{{|z{||{z{{z{}|{|z{|{}|{{}{|{|zz{}{|}z{z{|{|zz{|{}z{{|zzzzz{~|{z{{z{~|{|z{z{~|{{z{z{~~z{z{|}z{z{|{|~z{|{|z{{|{zzz{{||{{{{{{}|{|{{|{}|}{}{|{|{{{}{|}{{{{|}||{{|}}{{{|}|{{|}~|{|{{|}~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||{{{{z|||~}{|{|~}||{|~}||}|~}|||~~}|||{|}|||{|~~}|{|{}|~}|{|{{{|{{{{{}{{{{{}{|{{{}{|{{{|{||{{z}|{{{{z||{{{{{{|{{{{{{{z}{{{yz}|{{yz}||{zz}||{|z}||{{z}||{{{z||{{{{}z|{{{{z{zz{{z{zz{zz{zz{{{{zz{{{z~z{{{z{z{z{z{z~~{z{z{{z~{z{z{z{{{{{{{}yz{{{}z|{{{}z|{{z|z||{{z{|{{{{z||{{{z{z{{{{{{{z{{||~}{{|~}||{|~}||}|~}|||~~}|||{|}|||{|~~}|{|{}|~}|{|{{{{|{{{{}{|{{{}{|{{{}{|{{{|{||{{z}|{{{{z||{{{{{||{{{{{{{{|}{{{|}|{{{|}||{z|}||{||}||{{z}||{{{z||{{{{}z|{{{{z{z{~{{z{z{z{{{|{{{{z|{{{z~|{{{z{z}|{z{z~~|{{z{{z~{{{z{{{{|{{{{{}z{{{}{|{{{}{|{{z|{||{{z}|{{{{z||{{{{{z|{{{{z{z{|{{z{z|{|{{|{z{}z|{z{{{|{z{{{z}|{{{z||}|{z{{z|}|{z{||{||~}{|{|~}|||~}||}|~}|||~~}|||{|}|||{|~~}|{|{}|~}|{|{{{{|}{{{{}}|{{}}||{{}}||{||}||{{z}||{{{z||{{{{}||{{{{{{{{~{{{{{~{|{{z{|{{z|{|{{~|{|{{{z}|{{{{~~|{{{{{|~{{{{{{{{|{{{{{}{|{{{}|{{{}{|{{z|{||{{z}|{{{{z||{{{{{||{{{{{{{{|{{{{{|{||{z|{{}z|{|{{{|{|{{{z}|{{{{||}|{{{{||}|{{{{{{|{{{{{|{|{zz{zz{z|{|{{z|{|{{{z}|{{{{z||{{{{{||{{{{||}||~}}|}|~}||}|~}|}}~}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}|{{{{~}{{{{~}|{{{~}||{z}||{~|}||{{z}||{{{~~|{{{{}z~{{{{{{{{|}{{{{}}|{{{}}||{{}||{||}||{{z}||{{{z||{{{{}{|{{{{{{{{|}{{{{|}||{{|}||}z|{|{||}||{{z}||{{{||}|{{{}z|}|{{{{{{z}{{{{{}|{{{{}||{z{zz{||}||{{z}||{{{z||{{{{}z|{{{{{{{{z}{{{{{}|{{{{}||{zzzzz|z}||{{z}||{{{z||{{{{}z|{{{{{{{{~}{{{{~}|{{{~}|~{{~}|~{~}|~{{z}|~{{{~~~{{{{}{~{{{{{{{{|{{{{{}{|{{{}{|{{{}{|{{||||{{|}|{{{{z||{{{{{||{{{{z{z{|{{z{{|{{|{z|{{{}z|{{{{{|{{{{z}|{{{z||}|{z{{z|}|{z{{{{|{{{{{|{{{{{|{{{{z|z{{{z|{{{{{}|{{{{{||{{{{{{|{{{{z{zzzz{z{z{zzz{z{z{{{z{z{{zzzzzz{z}z{z{zz||z{z{zzz{z{zz{zzzz{z{z{zzz{z{z{{{z{z{{zzzzzzzz}z{z{zz||z{z{zzz{z{z}{}z}|z}|{z}|{{z{z{zz{~{{~{~{~{~~{|~|~~|~}{~~|~{~~~|~{~{}|~{~{~}|~{~{{~}|~{{{{{|{{{{{}{z|{{}{|{{|}{|{{{|{||{{|}|{{{{|||{{{{{{{|{{{{{{{}{{{{{}|{{{{}||{z{}||{||}||{{z}z|{{{{||{{{}z|{{{{{{{{|{{{{{|{|{{{|{|{{z|{|{{{|{|{{{z}|{{{{{||{{{{||{{{{z{z{|{{z{{|{z{{z|{z{{zz{z{z{|{z{z{z}|{z{z{||{{{{z|{{{zzzz{|{{z{{|{{{{{|{{{{z|{{{{{|{{{{{z}|{{{z{||{{z{{|{{{z||}||~}}|}|~}||}|~}|}}|~}|}|~~}|}|}|}|}|}|~~}|}|}}~}|}|z{zz~{{z{z~{{|{z~{{{}z~{{{{~~{{{{{z}|{{{z~|}|{z{{z}|{z{{{{|{{{{{}{{|{{}{|{}{}{|{{z|{||{{z}|{{{{||}|{{{{z{|{{{{{{|}{{{{|}||{{|}||}z|}||{||}||{{z}||{{{||}|{{{}z|{{{{{{{|{{{{{|{||{{|{|{}z|{|{{z|{|{{{z}|{{{{||}|{{{{||{{{z{z{|{{z{{|{{|{z|{{{}y|{{{{z|{{{{{z}|{{{z||}|{z{{z|{{{zyyzzyyzyzzzyyyzzzzzyyzzzyyzzzyyyzzzyzyz{yyyzzyzzyyyyyyzyzz{{zyzz{{zzzy|{{{{zz{{{z{{{{zz|{z{zzyz|zzyz{z{{zzyyzyzzyyzyzzzyyyzzzzzyzzzzyzzzzyyyzzzyzyy{yyyzzyzzyyyyzyy{yyzyy{zyyyy{{zzyy{{zyz{{zyy|zzzyzyz{yyyz{zzzyyyzyzzzyzyzzy{zyzzy{z{zzy{zz{y{zzyyz{zzyzz|zyzyz{{{zyzzzzzz{zzzz{{zyzz{{zzzy{{zzz{{zzy|z{zzzzz{zyzz{{{zzyzyyzyzyz{{zyz{{zzzy|{{{{zz{{{z{{{{zz|{z{zzyz|zzyz{z{{zzyzzzz{zzzz{z{{zzzz{zz{{z{zzzz{{zz{{{{zzzz{{zzzz{{z{zzyzyyz{yyzy{zyyyz{{zzyz{{zyz{{zyy|zzzyzyz{yyyz{zzzyyyzyzzzzyzyzz{zyzzy{z{zzy{zz{z{zzyyz{zzzzz|zyzyz{{{zyzzzzz{zzzzz{zzzz{zyzzz{zyzzyzy{zz{{z{zzzy{yzzzzz{zyzzzzzz{zzzzz{zzzz{zzzzy{zzzzzzz{zz{{z{zzzz{zzzzzy{zzzzzzyzzz{{zyzz{{zzz|{{{{zz{{{z{{{{zz|{z{zzzz|zzzz{z{{zzzzzzz{{zzzz{{{{zz{{zz{{{{zzz{{{zz|{{{zzzz{{zzz{{{z{zzzzzzzzyzzzzz{zyzz{z{zzz{zz{z{zzyyz{zzzzz|zyzzz{{{zyzzzzz{zzzzz{zzzzz{zzzz{zzzzyzz{zz{{z{zzzy{yzzzzz{zyzzyzyz{zzyzz{zz{zz|zyz{{zzzzzzzzzz{z{zzzyz{{zyzzyz{{zyyzyzz{yyzzz{z{yzz{{z{y{{zyz{{zyy|z{zyzyz|{yyz{zz{{yyz{{{{{{z{{{{{{zz{|{{{{z{{{{|{{{{{|{{{{{{||z{{{{{|{z{{zzzzz{yzzzz{{zyzz{{z{zz{zz{{{zzy|z{zzzzz|zyzz{{{{zyzzzzz{{zzzz{{zzzz{{{zzz{zzzz{{{zz|{z{zzzy{yzzz{z{zyzzyzyz{{zyzz{{z{zz|{{zz{{zyzz{{zzz|z{zzzyz{{zyz{zz{{zyyzyyz{yyzyz{zyyyz{{zzyyzyzz{{zyy|zzzyzyy{yyyz{zzzyyy{z{{{{z{z{{{{{z{{{{{{{{{{{{{{{{z|{{{{z{{|{z{z{{{{{z{zzzz{zzzzz{{{zzz{{{{{z{{{{z{z{zz{{{{zzzz{zzzzz{{{zzzzzzz{zzzzz{z{{zz|z{zz{{z{zzzzyzz{z{zzzzz{{zzzz{{{{zzzyzzzzyzyzzz{zyzzz{zzzzz{zzzzyzyzz{zzzzz{zyzyz{{zzyzzyzzzzyzyzzz{zyzzz{zzzzz{zzzyyyyzz{zzyzz{zyzyz{{zzyz{{{{zz{zzz{zzzzzz{{{{{{z{{{{{{{|{{z{{{{{z{{{{{{z{{{{{z{z{{{z{{{{{{zzzzz{{zzzz{{z{zz{{zzz{{{zzzz{z{zz{{{{zzzz{zzz{z{z{zzzzzzz{yzzzz{{{yzz{{zz{z{{zzzz{zzy|z{zzzzz{zzz{{{z{yzyzyzzzyyzzzzz{yzzzzzz{yzzzyyzzzyyyz{zyzyz{yyzzzzz{yyyyyzzzyyyzzzz{yzzzzzz{yzzzyzzzyyyyz{zyyyz{yyyzzzz{yyzzzz{zzzzz{z{zzz|z{z{z{{{zz{{{zzz{y{zzzzz|zzzz{{{zzz{{|{{|{{{|{|{{{{{|{{{{{||{{{|{{|{{|{{{{|{{|{{{|{z{{{{zzzz{zzzzz{zz{zz|zzz{{{{zzz{{zzzz{z{zzzzz{{zzzzzz{zzzzzz{zzzzz{zzzzz|zzzzz{zzzzzzz{zz{{z{zzzz{zzzzzy{zzzzzzz{{zzzz{{{zzz|{{zzz{{{zzzz{zzz|z{zzzzz{zzzz{{{zzzyzyz{zzyzz{zzzzz|zzzzy{zzzzyzyzzz{zzzzzyz{zzyzzyzzyyyyyzzyyyyzzzyyyzzzzyzxzzyzzzzyyzyzzyyyzyyyyyyzzyyyxyxyzyyxxyzzzyyxzzyyyyzyyyzyyyxyxzzyxyzyyyyxzyyyyxyyyyyyyzzyyyyyzzyyyzzzzyzzzzyzzyzyyzyzzyyyzyyyyyyzzyyyxyyyzyyyyyzzzyyyzzzyyxyzyyzyyyyyyzzyyyzzyyyyzzyzyxyyyyzyyyyzyzyyyzyyzyzyzzyzzzzyyzyzzyyyzyyyyyyzzyyyyyyyyzyyyyzzzyyzzzyyyzyyyzyyyyyyyyzyyyzzyyyyyyzzyyyyyyzzyyyzzzzyyzzzzyzyzzyzzzzyyzyzzyyyzyyyyyyzzyyyyyzyyyzzzyyyzzzzyyyzzzzzzzzzzzzzzyzzzzyyzzzyyyyzzzyyyyyyyzzyyyyzzyyyzzzzyzzzzyzzyzyyzyzzyyyzyyyyyyzzyyyyyyyzzyyyyzzzyyzzzzyzxyzyzzzzyyzyzzyyyzzyyyyzzzzyyyyyxzzzyyyzxzzyzzyzzzyyzyyzyzyyzxzzyyyzzyzyyyzzyzyyyyyyzzyyyyzzzyyzzzyzyzzyyxzzyyyxzzyyyzzyzyyyzyyzyyyzyyzyzyyyzyzyzzyyzyzyyyzzyyyyyyzzyyyzzzyyyyyzzyyzzyyzzzzyyyzzzzzyyzzzzzzzzzzzzzzyzzzzyyzzzzyyyzzzzyyyyyyzzyyyyzzzzyyzzzyzzzzyzzzzyyzyzzyyyzyyyyyyzzyyyyyyxzzzyyyzzzzzyzyzzzyzzyyzyzyyzxzzyyyzzyzyyyzzyzyyyyyyzyyyyyzzzyyzzzyzzzyyzzyyyyyyzzyyyzyyyyyzzzyyyyyyyzzzyyyzzzzzyzzzzzyzzyzzzzyyzyzzyyyzzyzyyyzzyzyzyzzzzzzyzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzyyyyzzzyyyzzzzzyzzzzzzyzyzzzzyyzyzzyyyzzyzyyzzzzzyyyyyzzyyyyzzzyyyzzzzyzzzyzzzzyyzyzzyyyzyyyyyzzzyyyyyyyzzyyyyzzzyyyzzzzyzzzzzzzzyyzyzzyyyzyyyyyyzzyyyyyyyzzyyyyzzzyyyzzzzyzzzzyyyzyyzxzzyyyzyyyyyzzzyyyyzzzzzzyzzzzzzzyzzzzzzzzzzzzzzzzzzzzzzzzzzyzz{zzzyyyzzzzyyyzzzzzyyzzzzzzzzzzzzzzyzzzzyyzzzzyyyzzzzyyyyzzzzyyyzzzzyyyzzzzyzzzzzyzzzyzyzzyyyzzyyyyzzzyyyyyyyzyyyyyzyzzyyzyzzyzyzzyyzyyyzyzzyyyyzyyyyzzzzyyyzzzzzyyzyyyyyyzzyyyyzzzzyyzzzzyzyyzyzyzzyyzxzzyyyyyyyyy{zzyyyzyyzzzyzyzzzzzyzzzzzzzzzyzzzzyzzyzzyzyzzzyzz{zzzyyyzyyzyzyyyzzzyyzzzzzzzzzzzzzzzyyzzzzyzzzzzyzzzzyyyyyyzzyyyyzzzzyyzzzzzzyzzyzzyzyyzyzzyyyzzyyyyzzzyyxyyxyzyyyyyzzzyyyzzyzzyzyyyzyyyyyyzzyyyzzyyyzzzzyxyyyyzzzyyyzzzzzyzzzzzzzzzyyzzzyyzyyzyyyzyyzyyzzyzyzzyzzz{zzzzz{zzzzz{zzzz{zzzzzzzzzzzzzzzzzzzzzyzzzzzyyyyyzzyyyyzzzzyyzzzzzzzzyyzzzyyyyyzyyyzzyzyyzzyzyyyyyyzyyyyyzzzyyzzzyyzzzyyzyyyyyyyyzyyyzzyyyyyyzzyyyyyzzyyyyzzzyyyzzzzyzzzzyzzyzyyzyzzyyyzyyyyyyzzyyyyyyyzzyyxyyzzyyyzzzyyzzyyyyzyyyyyyyyyyyyyyyzzyzyyyyyyyyyyyyyyyyyyyyzyyyxyyyyyyyxyyyyyxyyyyyyxyyyyyyyyxxxzzyxxxxzzxxxzyyyyxyyxyyyyyxxyyyxxxyyyyxzyyyyyyxyyyzzyyyyyzzyxxzyyzyyyyyyyyyyyyyyyyyyyyyyxzyyyyyyyyyyzyyyyyyzyyyyyzzyyzzyyyyyyyyyyyyyyyyyyyyzzyzyyyyxxyzyyyxyyzyyyyzzyyyyyyxyyyyxyxyyyyxxyyyyxzyyyyyyxyyxyyyxyxyyyyxyyyyzyxyyxyyyyxxyyzyxyyyyxyxyyyyxyyxxxxyyyxxxyyyyxyyyyyyyyyyyxyyxxyyzyxxyyyyyxyyyyyyyyyyyyzzyxyyzzyyyzzzyyzzyyyyzyyyyyyyyyyyyyyyzzyzyyyyyyyyyzyyyyyzyxyyyyyyxyyyyyyyyyyyyyxyyyyyyxyyyyyyxyyyxyyyyzyyyyyzyyxxzyyzyyyyyyyyyyyyyyyyyyyyyyxzyyyyyyyyyyyzyyyyyzyyyyzzzyyzzyyyyyyyyyyyyyyyyyyyyzzyzyyyxyyxyyyyxyxyyyxyyyyzyyyyyyyyyxxyyzyxyyyyyyxyyyyxyyyyxyyzzyyxyyzyyyzzyyyyyyyyxyyxyyyzyxxyyyyyxzyyyyyyzyyyyzzyzxyyzzyyzzzzyzzyyyzzyyyyyzyyyyyyzyyzzyzzyyyyyyyzyzzyyyzyzzyyzzyzyzzyyzzyyzyyzyyyyyzyyyxzzyyyyyyyyyyzzyyyyyzzyyyzzzyzzyyyyyyyyyyzyyyyyyyyyzzyzyyxxyyyyzzyxyyyzzxyyyyzyyyyyyyyyxyyyyyxyyyyyxxzyyyyxyxyyxyyyyxyxyyyyxyyyyyyyyyyyyyxxyyyyyyyyyyyxyyyyyyyyyyyyyzyxyxyyzyxyyyyyyyzyyyyyyyyyzzyyyyyyyxyyzyyyyyxyyyyzyyyyyyzyyyyzyyzyyyzyyyyyyzyzyyyyzyyyxzzzyyyyxyyyyyyyxyyyyyyyyyyyzyyyyyyyyxyyyyyyyyyyyyxyyyyyyyyyyyyzyyyyyyzyyyyzzzyyzzyyyzyyyyyyyyyyyyyyyzzyzyyyyyyyyyzyyyyyyzyyyyzyzyyyyyyyyyyyyzyyyyyyyyyyyyzyyyyyyyyyyyyyyyyyyyyyzyzyyyyyyyyyyyyzyyyyyyyyyyyyyyyyyyyyyzyyyyyyzyyyyzzzzyzzyyyyyyyyyzyyyyyyyyyzzyzyyyyyyyyzyyyyyyzyyyyzzzzyzzyyyyzyyyyzyyyyyyyxyzzyzyyyxyyyyyyyxyyyyyyyyyyyzyyyyyyyyyyyyzyxyyyyyyxyyyyyyyyyzyyyyyyyxxyyzyyyxyyzyyyyzzyyyxyyyyyyyyyyxyyyxyyyyxzzyzyyyyyyyyyyyyyyyyyyyyyzyzyyyzyyyyzyyyyzyyyyyyyxyz{zyyyyyyyyzyyyyyyzyyyyzzzzyzzzzyyzzyyyyyzyyyyyyyzz{zyyxyyyyyzzyyyyyzzyyyzzzyyzzyyyyzyyyyyyyyyyzyyyzzyzyyyxyyyyyyyxyyyyyyyyyyyyyyyyyyyyyxyyyyyxyyyyyyyyyyyyyxyyyyyyyxyxyyyyxyyyyzyyyyyyyyyyyyyzyxyyyyyyxyyyyyyyyyyzyzyxyyyyzyyyyyyzyyyyyyyyyyyyyyyxyzyyyyxyyyyyzyyzyyyzyzyyyyzyyyyzyzzyzyyzyyyyyyzzyyyzyyyyzyzzzyyyxyyyyyyyxyxyyyyxyyyyzyyyyyyyyyyyyyyyxyyyyyyxyyyyyyyyyyyzzyyxyyzzyyyzzzyyzzyyyyzxyyyyyyyyyyyyxyzzyzyyxxyxyyyxyxyyyyyxyyyyxyzyxyxyyyyxyzyyxxyyyyyyxyyyyzyyxyyzyyxyyyzzyyyyyzyyyyxyyyyxxyyyyxyxyyyyxyyyyyzyyyyyyyxyyyyyyxyyyyyyyyyzyyyyyyyyyyyyyyyyyyyyyyyzyxxyyzxxyyyzxxyyyzyzxxyzyyxyyyyyxyyyxxyyyxxxyyyyxyyyyyzyyyyyyyyyyyyyzyyyyyyzyyyyxyyyyyyxyyyyyxyyyyyyyyyyyyyyyxyyyyxyyzyyyyyzyyyyyzyyyyyyxyyyyyyyyyyyyxyyyzyyyxxyxyyxyxyyyyyxyyyxyyzyxyyyyyyxyzyyxxyyyyyyxyyyyzyyyyyyzyyyyyzzyyyyyzyyyzyyyyyyyyyyyyyyyyyyyyyyyzzzyxyxxyzyyyyyyzxxyyyyxyzyyyyyyyxyyyyyyxyyyyyyyyyyzxyyyyyxyyyyyyyyzyyyxyzyyxyyyyyxyyyyxyyyyyxyyyyyyyyyyyyyyyxyyyyyxyzzyyyyzyzyyyzyyyyyyxyyyyyyyyyyyyyyyyzyyyxxxxyyyxxxyyyyxyyyyyyyyxyyxxyxxyzyyxxyyyyyyyyyyyzyyxyxxzyyyxxzyyyxzyyyyzyxyxyyyyxyyyyyxxyyyyxyyyyzzyyyyyyzyyyyyzyyyyzyyyyzzyyyyyyyyyzyyyyyyyyyyyyyzzzyzzxyyzyzyyyzzzyyzyzzyzyzyyzzyxyyyzyyxyyyzyyyyyzzyyzyyzxzyzyyxzyzyzyyzyyyyzzyyyzyyyyyzyyyyyzyyyyzyyzzzyyyxyyzyyxyyzzzyyyyzyyyyxyyxyyxxyzyyyxyyyyyyyyyyzyyyyxyyyyyyyyyyyyyyyyyyyzyxyyyyxyyyyyyyyyyyyyyyyzyyyyxyxyyyyyxyyyyyyyyyyyzyxyyyyyyyyyyyyxyyyyyyyyyyyzyyyyxyzyyyyyyyzyyyyyyyzyyyyyyzyyyzyzyxyyyyyyyyzzzyyyyyyxyyyxyyyzyyyxyzzyyyyyzyyyyyyzzyyyxyyyyyyyyzyyyyxxyxyyyxyxyyyyyxyyyyyyyxyyyyyyyyyyyxxyyyyyyyyyyyyyyyyxyyyyyxyyyyyyyyyyyyzyyyyyyyxyzyyyxxyyyyyyyyyyzyyyyyyzyyyyyyyzyyyyyyyyzzyyyyyyyyzyyyyxyyyyyyyyzzyyyyyyyyyyyyyyyyyyyyyyyyzzyyyyyyyyzyyyyyyyyyyyyyzyyyyyyyyyyyyyyyzyyyyyyzyyzyyzyyyyyyzyyyyyyyyyyyyyyyyyyyyyyyyyyyyzzyyyyzyzyyzyyyyyyyyyzyyyyyyyyyyyzyyyyyyyyzyyyyyyxyxxyyyyxyyyyyyyyyyyyyyxyyyyyyxyyyyyyyyyyxyyyyyyyyyyyxzyyxyyzyzyyyzyyyyyzyyyyyyxyyyyyyyyyzyxyzyzyyyyyyyyyyyyyyyyyyyyyzzyyzzyzyyyzyyzyyyyyyyyyyyz{zyyyyyyyyyyyyyyyzyyyyyzzyyzyyzyyyyyyyzyyyxyyyyyyz{zyzyyyxyyzyyxyyyzzyyyyyzyyyyyyyyyyxyyyxxyxyyyyyyzyzzyyyyxyxyyyxyxzyyyyyzyyyyyzyxyyyyxyyyyyyyxyyyyyyyzyyyyxyxyyyxyxyyyyyxyyyyyyzyyyyyyyyyyyyyyxyyyyyyyyyyzyyyzyyzyyyyzyyzyyyyyyyyzzyyyyyzzyyyzyyyzyyyyyyyzzzyzyyyyyyyyyyyzyyyyyzyyyyzyyyyyyyyyyyyyyxyyyyzyyyyyyyyxyxyyyxyxyyyyyxyyyyyyzyyyyyyyyyyzyyyxyyyyyyxyyyzyyyyzyzyyyyzyyzyyyyzzxzyyyzyzzyyyzzxzyyyyyyyyyzzyzyxyxzzyyyyyyzzyyyyyyyxyyyyyyzyxyyzzxyyyyyyzxyzyzzzzyyyyzzyyyyzyzyyyzyzyyzzyyzzzzyyyzzyzyyyyzzyyyzzyyyyyzyxyxzzyxxyyyzzxyyzyyzyyyxyyyzxyxyzzxyxyyyyzxyyyyzzzyyyzzzyyyyzzzzyyyyzzxzyyyzyzzyyyzzxzyyyyxyyyyzzyzzyyyyxzyyyyzyzzyyzyzyyzzyyzyzxyyyzzxzyyyyzxyyyzzyzzyyyyzzyyyyzzzzyyyyzyxzyyyzyzzyyyzzxzyyyyyyyyzzzzzzyyyyzzyyyyzzzzyyyyzzzzyyyzyzzyyyzzyzyyyyyzyyyzzyzzyyyyzzzyyyzzzyyyzzzzzzzyzzzzzzyyzzzzyyyyzzyyyzzyyyzzzyyyyzzzyyyzzzzyyzyzzyzyyyzyzzyyyzzxzyyyyyyyyyzzyzyyyyyzzyyyyyzzzyyzyyyzyyyyyyyzyyyzyyyyyyyyzyyzzyyzyyyyyzzyyyyyzzzyyzyyzzzyyyyyzzyyyyzyyyyyyyzyyyzyzzzyyyyzzzyyyyzyzyyzyzzyzzyyzyzxyyyzzxzyyyyzzyyyzzyzzyyyyzzzyyyyzzzyyzyzzzzyyyzyzzyyyzzyzyyyyyzyyyzzyzzyzyyzzzzyyyzzzyyzzzzzzzyzzzzzzyyzzzzyyyzzzyyzzzzzzzyyzyyyzyyyzyyyzzyzyyyzyzyyyyzzyyyzzyyyyyzyzyyzzyyzyyxyyzzyyyyyyzzyyyyyyyzyyyyzxxxyyzzxyyyyyzzyyyyyyzzyyyyzzzyyyyzzzzyyyyzzzyyyzyzzyyyzzxzyyyyyyyyyzzyzzyyyyzzzyyyyzzzzyyyyzzzyyyzyzzyyyzzyzyyyyyzyyyzzzzzyyyyzzzyyyyzzzzyyzyzyzzyyzyzzyyyzzxzyyyyzyyyzzzzzzzzzyzzzzzyzzzzzzzzzzzzzzzzzzzzzzzzzzzyzzzzyzzzzzzzzyyyyyzzyyyzzyzzyzzyzyyzyyzzzzyyyzzxzyyzyzyyzyzzyyzyyyyzyzyyyyzzyzyyyyzzyzyyyyzyyyyzzyzyyyyyyyyzzzzzzyzyyzzzzyyyzzzzyyyzzzzzyyyzzyyyyzzyzyyyyzyyyyzzzzzyzyyzzzzyyyzzzzyyzzzzzzzyzzzzzyyzzzzyyyzzzyyzzzzzzzzzyzzzzzyzzzzzyzzzzzzzzzzzzzzzzzzzzzyzzzzyzzz{zzzyyyyzzzyyyyzzzzyyyyzzzzyyyzyyyyyzzxzyyyyyyyyyzzzyyyyyyzzzzyzyyyxxzzyxyyyyzzyyyzyyzxzyyyyyzyyyyyzyyyyyyzxyzyyzzzyyyyzzzyyyyzzzzyyzyzzyzyyyzyzzyyyzzyzyyyyyyyzzzyzyyyyyzzyyyyyyzzzyyzzyzzzzyzyzzzzyzyzyyyzzzzyyzzzzzzzyzyzzzyzyzzzzzyzzyzzzzzzyzzzzyzyzzyzzyzzzyzzz{zzzyyyyzzzyyyyzzzzyyyyzyyzyyyzyyzyyyzzxzyyyyyyyzz{yzzyyyyzzzyyyyzzzzyyyyzzzzyyyzyzzyyxzzxzyxyyyyyyzzyzyyyyyzzyyyyyyzzzyyzyyzzzyyyyyyzyyyyyyyyyyyyzyzzyyyyyyyyzyyxyyyyzyyyyzyyzzzzyyyzzyxyyzyxyyyyyzyyyyzzzzzyyzzzzyzzyzzzzzzzyzzzzzzyzzzzyzzzzzzyzzzzzzyzzzzyzyyyyzyzyyyyzzyzyyzyzzzzzyyzzzyyyyzyxzyyyyyyyyyzzzyzyz{yzzyzyz{yzzyzzz{yzz{yzz{yzzyzz{zyyzyz|zzyz{{{z{zyzyz{yyzyyz{{yyyyyz{{yyzzyz{{zyzyzzz|zyyy{yyyyzzz{z{zzz{z{yzzzz{zzzz{zz{z{{zzzz{yzzzzz{{{zzz{{zzz{z{{z{{zzyz{|zzyz{{{|yzzy{{{zz{zy{{{{yzy{z{|zyzz|zyzz{{z{yyyzzzzyzzzzyzyyzzzzyyyyzzzyyzzyzzzyyzyzzzyzyyy{yyyyzzyzz{zzzzz{zzzzzyz{zzzyzyz{zzzyzyzyyzzzz{{zzzy{yzzyzzyzzzyzyz{zzyzyz{yzzyzzz{yzz{yzz{yzzyzz{zyyzyz|zzyz{{{z{zzyzyz{yzyyz{{zyyyyz{{zyzzyz{{zyzyzzz|zyyy{yyyyzzz{z{zzzz{z{zzzz{zzzz{zz{z{{zzzz{zzzzzz{{{zzz{{zzz{z{{z{{zyzyz{|zyz{{{|yzzz{{{zz{zz{{{{yzz{z{|zyzz|zyzz{{z{yyz{zzzzz{{zzzzz{{zzyzzz{{yzzzzz{{zzzzz{z|zzyz{zzyzz{{{z{zyzyzz|zzyyyz|zy{yzzz{{zzyzzzyyzyz{z{zyy{{yyy{{zyzz{zzzzzz{zzzzzz{zzzyzzz{zzzyzzzyyzzzz{{zzzy{yzzyzzyzzzzzzz{zzzzzyz{zzyzzz{zzz{zzz{zzzzzz{zyzzyz|zzyz{{{z{{zzzz{{{zzzzz{{zz{zz{{{{zzzz{{zzzzz{{|zzz{{zzz{z{{{{{zzzyz{|zzyz{{{|zzz{{{zz{zz{{{{zzz{z{|zzzz|zzzz{{z{zzz{zzzzzz{zzzzzzz{zzyzzz{yzzyzzzzyzzzz{{zzzz{yzzzzzyz{zzyzyz{zyzyyz{{zyyyyyyyyzzyz{{zyzyzzz|zyyy{yyyyzzz{{{zyzyz{|zzyyz{{|zy{yyy{{zzyz{{zyzyz{z|zyy{{yyy{{zz{{{zzzzz{{zzzzz{{{zzzyzz{zzzyz{{zyzzzz{|zzzy{yzzyzzz{{zzzzz{{zzzzyz{{zzyzzz{zz{zzz{{zzzzz{z|zzyz|zzyz{{{{{{{{{{{{|{{{z{{{|{zz{{{{z{{{{{{|{{{{{{|{{{z||{{z{|{{z{zzyzyz{zyzyyz{{zyy{yz{{y{zyz{{zyzyz{z|zyy{|zyy{{zz{zzyzyz{zzzyzyz{zzzyzzz{zzzzyyyyzzyzz{zzyzyz{zzyzz{{zzzyzyz{zzzyzyz{zzzyzzz{zzzzyzyzzzyzz{zzyzyz{zzyzz{{zz{zzyz{z|zzzyz{z|zy{zz{z{{zzzyzzzyzz{z{yzy{{zzy{{{{zz{zzzz{z{zzzz{{z{zzzz{{z{z{zz{z{zzz{{{{zzzz{zzzz{{{z{{z{z{{{{{z{z{{{{{z{{{{{{{{z{{{z{z{{{{|z{z{|{{z{{{{{yyzz{yzz{zz{{{{zzyyyyyzzyyyyzzzzyy{yzzyy{zyyyzzyyyyz{zyyyy{yyy{zzzzzzzyzyzzzyzyyzzzzyy{yzzzy{zzyzzzyyzyz{zyzyy{zyy{zzzz{zzzzz{{zzzzyz{{zzy{zz{{z{zzzz{zzzzzy{z|zzz{zzy{z{{{z{zzzzzz{zzzzzz{{zz{yzz{{{zzyzz{zyzzz{{{zzz{zzz{z{zz{{z{zz{{|{z{{z{{|{{{{z{{{{{z{z{{{{z{{{{{z{{{zz{{{{{{z{zyzyzz|zzyyzzz|zyyyzzz{yzzyzyzyyzyzzz{zyyz{yyyzzyz{{zzzz{{|zzzyz{{|zyzzz{{{zzzzz{yzzzzz{z|zzyz{zzzz{{{z{zzzzyz|zzzzzyz|zzzyzyz{zzzyzzzzyzzzz{{zzzz{yzzzzyzz{yzyzzz|zzzyzz{|zy{yzz{{{{yzzz{zzyzz{z{yzy{{zzy{zzz{||{|zz{|{|{{{{||{{{{|{||{{|{|{{|z|{{{{||z{{|{z{{{z{zz{yzyz{z|zzzyz{{|zyzzz{{{z{yzz{{zzyzz{y{yzyz|yzyz{{{z{{z{zyz{{{{zzz}{z{z||z}{{z{||z|z{z{{|{zz{{{||z{{{{{z{{{z{zz{zz{z{{{{zz{zz{{{zz{{z{{{z~z{z{z{z{z{z{~~z{z{~z{{|{{{|{|{{{{{|{|{z{{{|{|z{{{{|{|z{{{{|}z{{{{||z{{{{||{{|{{{z{|{{{{{{{}{{{z||{}{{{{||{|z{{{{|}z{{{{||z{{{{|z{}~{|||}~|{|{||}~|{||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{{{z{|{z{z{|z{z{{z{|{{|z{z{|z}{z{z{|zz{z{|}z{z{|}||z{|}|z{{|{{{{zz{{{{{z{}{z{z||{}{{{{||{|z{{{{|}z{{{{||z{{{{|z{{~{z{zz{z{z{{{{|{{{z{{{|z{{z{{{|~z{z{|}z{z{{|~~z{{{~z{}|{{{{|}|{{{||}|{{{{||}|z{{{||}||{{{||}z{{{{||z{{{{|z}{|{{{{|{|{{{{|{}{{{{||{}{{{{||{|z{{{{|}z{{{{||z{{{{||{}~{|{{|}~|{{||}~|{||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{{z{|{{{{|{|{{{{zz{zy{{{|{|z{{{{|{|z{{{{|}z{{{{||z{{{{||{{|{{{{|{|{{{{{{|z{|{{|{|z}{{{|{|z{{{{|}z{{{|}||{{|}||{{|{{{{|{|{{{{{|}{z{{||{}{{{{||{|z{{{{|}z{{{{||z{{{{||{{~{{{{|{~{{{{{|{z{{{{|{|z{{{{|{|~{{{{|}z{{{{|~~{{{{~|{}|{{{{|}|{{{{||}}{{{||}}{{{{||}||{{{||}z{{{{||z{{{{||}}~{|{||}~|{|{||}~|||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{|}z{{{{|}z{{{{||}{{{{zzzzy{{{||}z|{{{||}z{{{{||z{{{{|z}}z{{{{|}z{{{{||}{{{{{zz{z{{{||}||{{{||}z{{{{||z{{{{|z}}|{{{{|}|{{{{||}|{{|{|{|z}{{||}||{{{||}z{{{|}||{{|}|z}}|{{{{|}|{{{{||}}{{{{||}{{{{||}||{{{||}z{{{{||z{{{{|z}}~{{{{|}~{{{{||}~{{{{||}z{{{||}|~{{{||}z{{{{|~~{{{{~z}}~}|}||}~|}|}}|}~|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}|zz{z{zzzzz{z{{{z{z{zz{{z{z{zzzzzzz{z{z}z{z{z||zz{z{zzzzz{z{zzzzz{z{{{z{z{zz{{z{z{{zzzzzz{z{z}z{z{z||zz{z{zzz{|{{{{z{|{{{{{{{|{{{z{{z|z{{{{{|z{{{{|}{{{{{||{{{{{|z{{|{z{zz{|{{z{{{{|z{|z{{{|z}{z{{|zz{z{|}z{z{|}||z{|}|z{{|{{{{|{|{{{{{|{}{{{{||{}{{{{||||{{{{|}|{{{{||z{{{{||{}~{{{{|}~{{{{~|}~{{{{~|}~{{{{~|}~{{{~|}z{{{{~~~{{{{~{}zyzz{yz{|}z{|}z|}z}z}{|{zzzz{|{{z{{z{|{z{z{z{|z{{zzz{|zzzz{|}zz{{||zz{{{|z{{|{z{zz{|{{z{{z{|zz{z{z{zz{{z{z{|zz{z{|}z{{{||zz{{{|z{{|{{{{|{|{{{{{|{|{z{{{|{|z{{{{|{|z{{{z|}z{{{||z{{{{||{}z{{{{|}z{{{{||}z{{{{||}zz{{{||}||{{{|z}z{{{||z{{{{|z}{|{{{{z{|{{{{zz{}{z|z||{}|{{{||{|z{{{{|}|{{{|||{{|{{{{{~~{~{z~~{~{~~{~~{~|{~|~~{}~{~|~~~{~{~|}z~{~|}~{~|}~{{{|{z{zz{|{{z{{z{|z{|z{z{|y}{z{z{|zz{z{|}z{z{|}||{{{|z{{|{{{{|{|{{{{{|{|{{|{{|{|z}{{{|{|z{{{{|}z{{{|}||{{{||{}|{{{{|}|{{{{||}|{{|{||}|z}{{||}||{{{||}z{{{|}||{{{|z}{|{{{{z{|{{{{{z{}{{|z||{}{}{{||{|z{{{{|}z{{{|}||{{|{z{{~{z{zz{~z{z{{z{~z{|z{z{~z}{z{z{~~z{z{|}z{z{|}|~z{|}z{}~}|}||}~|}|}}|}~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}|z{|{|||||~|{|||~}||||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{}{}}}{z{}}{{}{}}{}|{|}{}{{}}{}{}}|{}{}{|}|{}{}}}{|{}{{|{|||{|y||{{|y||{||y||{|{{{|{|{|||{|{|{y}|{|{|{}{|{|{|||||||||{|}|||{z}|z|{|}||{{|}|||}{}||||{}|||||z}{||||{|{{||{|{||{{|{||{|{{||{|{{||{|{|~{{|{|{|{|{|{|~~{{{|{{|{||||||~||||~}||||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{}{{}}}{{}}{{}{}}{}|{|}{}{{}}{}{}}|{}{}{|}|{}{}}}{|{}{{|{{|||{|||{{|{||{||z||{|{{{|{|{|||{|{|{z}|{|{|{}{|{|{|||||||||||}|||||}|||||}||{{|}|||}|}||||{}|||||z}{||||{|{{|~|{|{|{{|{||{||{||{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{z}{{}|}z}z}}{}{}}{}|z}}{}{{}}{}{}||{}{}{z}|{}{}z}{|{}{|{||||||~|||||~}|||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{}{{}}}{}{}}{{}}}{}|{|}{}{{}}{}{}}|{}{}{|}|{}{}}}{|{}{||||||||||||}||||}|||||}||{{|}|||}|}||||{}|||||z}{||||{|{{|~|{|{|~{{|{|{||{||{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{{}{{}|}{}{}}{{}{}}}|z}}{}{{}}{}{}||{}{}{z}|{}{}z}{|{}{{{{{||z{{{||{{z{{|{|z||{{{{{|{{{z||{{{{{z}|{z{{z}{|{z{{}|||||~|||||~}||||~}}||~}}|}|~}}||~~}}|||}}}||||~~}|||||}||}}}|}|}}}|}|}}}}||}}}|{}}}}|}}|}}|}||}||}|}}}{||}|{|{{|~|{|{|~{{|{|~{||{|{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{{}{{}|}{}{}}{{}{}}{}|z}}}{{}}{}{}||{}{}{z}|{}{}z}{|{}{{|{{|||{|{||{{|{||{||z{|z{{{|{|{|||{|{|{z}|{|{|z}{|{|{{|{{|||{|{||{{|{||{||y{|zz{{|{|{|||{|{|{z}|{|{|z}{|{|{}}|}}|~|}|}|~}}|}|~}}|}|~}}}}~}}}|~~}}}|}}}}}|}|~~}|}|}|||||~|||||~}||||~}||||~}||{|}|||~|}|||||}|||||~~{|||||}||}|}|}|}}}|}|}}}}||}}}}|{}}}|}}|}}|}|{}||}|}{}{||}|||||||||||||}|||||}|||||}||{{|{||}|}||||{}|||||{}{||||||||||||||||}|||||}|{|||}||{{|zz|}|}||||{}|||||{}{||||||||||||||||}|||||}|{|||}||{{|zzz}{}||||{}|||||{}{|||||}||}~}|}|}~}|}|}~}}||}~}}||}~}}|}~}}|}|}}}|}|}~~|||}|{}{{}}}{}{}}{{}{}}{}|{}}{}{{}}{}{}}|}{}{|}|{}{}}}{|{}{{|{{|}|{|{|}{{|{|}{||{|}{|{{|}{|{|}|{{|{|}|{|{|}}{|{|{{|{{|}|{|{|}{{|{|}{||{|}{|{{|}z|{|}|{||{|}|{|{|}}{|{|{{|{{|}|{|{|}{{|{|}{||{|}{|{{|}{|{|}|{|{{|}|{|{|}}{|{|{{|{{|}|{|{|}z{|{|}z|{{|}z|{{|}z|{|}|z|z||}|{|{|}}{{{|{}|}z}|z}|{z}|{zz}|{z{~}~~}~}~}~}~~~}~}~~}|~}~~}~{}~~}~}~~~}~}~|}|~}~}~{|~}~{}{{}|}{}{}}{{}{}}{}|z}}{}{{}}{}{}||{}{}{|}|{}{}|}|{}{|||||}|||||}}||||}}|{||}}||{|}}|||}|}|||||}{||||}}{|||{|{{|||{|{||{{|{||{||z||{|{{{|{|{|||{|{|{z}|z|{|z}{||{{{{{||z{{{||{{z{||{{|z{|{{{{{|{{{z||{z{{{z}|{z{{z}{|{{z{{{||zz{{||{{zz||{{|z||{{{{{|{{{z||{{z{{z}|{zz{z}{|{zyyyzzyyyy{zzyyy{zzzzzzyz{yz{zz{yyyzzyyyyy|zyyyyz{zyyyyy{{z{z{zzz{z{z{zzz{z{{{z{z{{z{|y{{zzz{{z{zyz|zzz{z{{zzzzzzzzzzzzzzzzzz{zzz{zzzz{zz{zz{zzyzzzzzyy|yyzzyz{zyzzzzzzyzzzzz{zyzzz|zzzzz|{zz{z|{zz{{zzzzyy{zzzz{zzzzzzzzz{zzzz{z{zzz{z{{zz{z{{z{{z{{zzy{{zzzyy{zzzzy{zzzzzzzzzzzzz{zzzyz{zzzzzzzz{zz{zz{zzyzzzzzyy|zzzzyz{zzzyy{{zzzz{zzzz{z{zzz{z{{{z{z{{z{|z{{zzz{{z{zzz|zzz{z{{zzzzzzz{{zzz{|zzzz{|z{{z{zz{zz|{z{zzzz{zzz{{|zzzzyz{zzzzzzzzzzzzzz{zzz{z|zzzzz|{zz{z|{zz{{zzzzyy{zzzz{zzzzzzzzz{zzzzz{{zzz{z{{zz{z{{z{{z{{zzy{{zzzyy{zzzzy{zzzzzzzz{{zzzz{{zzz{{z{zz{{z{z{{{z{zzzz{zzzyy{zzzzz{zzzzzzzz{{zzzz{{{zz{{{{zz{{{{zz{z{{zzz{{zzzyy|zzzzyz{zzzz{{z{zz{zzz{z{z{zz{z{{{z{z{{z{|z{{zzz{{z{zzz|zzz{z{{zzzzzzz{{zzzz{|{zzz||{{z{z|{zz|{|{zz{{{zzz{{{zzzz{z{zzzzzzz{zzzzz{{{zzz{{{zz{z{{z{{z{{zzy{{zzzyy{zzzzy{zzzzzzzz{{zzzz{{zzzz{{{zz{{z{z{{{z{zzzz{zzzyy{zzzzz{zzzzzzzzz{zzzzz|zzzz{|zzzz|z{zz{{z{zzyzzzzz{{{zzzzyzzzzzzzzzz{zzzz{|{zzz{||zzz||{zz{{|{zz{{zzzz{{|zzzz{z{zzz{{z{zz{zzz{z{z{zzz{z|{{zz|{z{|z|{zz{{{z{zzz|zzz{{{{zzzzzzz{{zzzz{|{zzz{|{{{z{{{z{|{{{zzz{{zzz{{{zzzzy{{zzzzzzz{{zzzz{{zzzz{{{{zz{{{z{{{z{zzzz{zzzyy{zzzzz{zzzzzzzzz{zzzzz|zzzz{|zzzzz|zzz{{z{zzyzzzzz{{{zzzzyzzzzzzzzzzzyzzzzzzzyz{zzz{yzzz{z|zz{zzyzzzzzyy{zzzzyz{zzzzzzz{zzz{z{{{z{z{{|||z{{||z|{||z{{{|z{zyy|z{zz{{|zzz{{|{{|{|{|{|{{z|{|{||{z|{||{{|||{|{{|{|{y{|{|{|{{{{|{zzzz{{zzzz{{{zzz{{|{{z{{|{z{{{{zz{{{zzzyy|zzzz{{{zzzzzzz{{zzzz{|{zzz{||{{z{||{zz{{zzz{{{zzz{{|zzzz{z{zzzzzzz{zzzzz{z{zzz{z|{{z{z|{zz|zz{z{{{zzzyy|zzzz{z{zzzzzzz{zzzzz{z{zzz{z|{{z{z|{zz{zz{y{{{zzzyy|zzzz{z{zzz{|{{|{|{|{||{{|{||{|{{||{|{{|{{|{|{|{|{{{|z|{|z{{z|{z{zz{{zz{z{|zzzz{|z{{z{|z{z{|{z{z{zzz{z{{|zzz{z{{zzzz{zz{{zz{z{{zzzz{{z{{z{{z{z{|{z{z{zz{{zzz|zzz{z{{zzzz{zz{{zz{z{{zzzz{{z{{z{{z{z{|{z{z{zz{zzzz|zzzzz{{zzzz{zz{{zz{z{{zzzz{{z{{z{{z{z{|{z{z{zz{z{zz|zzz{y{{zzz{{{{{z{{yy{{yyyzzzz|{zz{z||zz{z||{{|z||{{z{|{{{z{z{{z{z{{|z{zzz|zzzzzzzz{zzzzz|{zzz{||z{zz||{zz|{|{zz{{zzzz{{{zzzz{zzzzzzzz{{zzzz{{{zzz{{{{{z{{{{zz|{{{zzzz{zzzyy{zzzzyzzzzzzzzzzzzzzzzzzzz{zzz{zzzz{zz|zz{zzyzzzzzyy{zyzzyzzzzyyyyzzyyyyzzzzyy{zzz{zzzz{yz|zz{yyyzzyyyyy{zyyyyzzyyzyyzzzyyzyzzzyyyzzz{zzzyz|y{zz|yzzz{yzyyyyyyyzz{zyyyyyyyyzyyxyyzz{yyxzzzzyyzyzy{{zyyyyzyxxyyyy{yyxzyz{yyyyyz{yzyzz{yyzyy{{yyyzy{zzyz{yzy{z{zyzzzyyzyzyzyyyz{|zyyyyzyyzzyyzyzyz{yyzzz{{{zzz|y{{z|yzzz{yzyyyy{yyzz{z{yxyyyyyzzyyyzyzyzyzyz{zyzyz{y{zz{yzy{{yzyyyyyzyyz{zyzyzyzzz{yzyzz{yzyzz{yz{zz{yzz|{yzzy{zzzyz{zzzyzyzy{zyzzzzzz{{zzzz{{zyzz{{{zzy{{|z{{y|zz{z{zzz{zzzyzz{|zzyzyzyyzzzyzyzzz{yxzzzzzyzzzzy{{zzyzzzyyzyyyy{yyzzyz{yyyyz{zyzzz{zyzyz{zzyzy{zzzzzyzzz{{zzzy{zzzyz{zzzyzyzzzzyzyzyyzz{yyzy{{{yyzy{{{{z{y|y{{{|yzzz{yzyzyz{yyz{|z{yyyzyyzzzzyzyzzyzyzzz{zyzzz{y{zz{yzz{{yzyyyyyzyzz{zyzyzyzzz{zyzyzz{zyzz{yz{zz{yzz|{yzzy{zzzyz{zzzyzyzy{zyzyyyyyyzzyyyzyzzyzyz{zzzyz|y{zz|yzy{{yzyyyzyzyyz{yyzyzzzzz{{yzzzz{{{zz{{zzzy{{zz{{zzzz{zzzzz{zz{yzz{|z{yzzz{zyzzz{zyzyzz{z{yz{z{{{zyz|z{{z|zz{z{zyz{zz{yzyz{z{yzyzyyzz{zyzyz{{yzyz{{zyz{z{y{z{{yzz{{yzyzyzyzyz{|zyzyzzzzz{zyzzzz{zzyzz{z{zz{zzz|{zzzz{zzzzz{zzzyzzzy{zyzyzyyzz{yyzyz{{yyyz{{zyz{{zy{z{zyzzzyyzyzyzyyyz{|zyyyzyzzyzzyzyzyzz{yzyz{{{yz{|z{{{|zyyx{zyzzzz{yzyz{{{yzyyyyyyzzyyyzzz{zyzzz{zzzz{y{{z{yzy{{yzyyzz{zyyz{z{zy{{zzzz{{zzzzz{{zzzz{{z{{z{z{z{{z{zz{{{zzz{z{zzzzz{{zzzzzzzz{{yzzzz{{zyzz{{z{zz{zz|{{zzz{zzzzz{zzzyzz{|{zyzyzyyzz{yyzyz{{yyyz{{zzyz{{y{z{zyzzzyyzyzyzyyyz{|zyyyyzyyzzzyyzyzzzyyyzzzzzyzzzz{zzzyzzzyyzyyyzyyyzzyzyyyzy{{z{zz{y{z{z{z{z{{{{{z{{|{{{|{z{{{{z{{zz{z{yz{{{zz{{z{{{{{z{z{{{{{z{{{{{{{{{{{{|{{{z{{{{z{{{z{z{z{|{{z{zzzzz{{zzzzz{{{zzz{{{z{z{{{z{{{zz{{{zzz{zz{zzz{|z{zzzzzzz{zzzzzz{z{zzz{z{z{z{z{z{{zzz{{{zzz{zz{zzzz{z{zzzyzzz{zzzyzz{z{zzz{z{z{z{z{z{{yzy{{{zzz{zz{zzyz{z{zzz|zz{z{{z|z|{{{{z|{||{{{{||z|{{|z|{|z|zz{|{{z|{|{{{z{{{{{{{{{{{{{{z{{{{{{{z{{{|{|{{|{{|{{{{{||zz{{{|{zz{zzzz{z{zzzz{{{zzz{{{{{z{{{|z|z{|zz{{zzzzz{zzyz{|{zzyyzyy{z{yyzy{{{zzy{{{{{z{{{|y|z{|yz{{zyyzz{zzyz{|{zyyyzyy{z{yyzy{{{zzy{{{{{z{{{|y|z{|yz{{zyzzz{zyyz{|{zyyyzzzzyyzyyyzyzzz{zyzyzz{zzyzz{{{{zz{{|z|{{|zy{y{zyz{yzzyzy{{zyzyzyyzz{yyzyz{{{yyz{{z{{z{{zy|{{zyzzzzyzyzzz{yyz{|{yyyzyyzzzzyzyzzzzzyzzz{zzzzz{y{zz{yzz{{yzyyyzyzyzz{zzyzzzzz{{yzzzz{{zyzz{{zzzz{{zz{{{zzz{zyzzz{zzzyzz{|zzzyzyyzzzyyzyzzzyyyzzzzzyzzzzy{zzzyzzzyyzyyyyyyyzzzzyyyyyzy{yyyyzy{{yzyzz{{zzy{{yyz{yyyzyyyyyy{yyyyy{y{zyyyyyzyyzyyyzyzz{yyyyzzyzyyzzy{zzzyyyyzxyyyyyyyxyy{zyyxyxyyy{xyxyyyyy{xyxzyzzyzyyyy{zyyyyyyxxyyxx{xyyxyy{xxyyyy{yxyyyy{zyyxyy{zyzyyzyyz{yyyyyyyyyy{yyyxy{yyyyxyyyyyzzyyyzyz{zzyzzy{zzzzyyyzz{yyzyyyyyyyyyyyyzy{zyyyyyyzy{yyyzyyz{{yzyzy{{yzzzyy{zzyyyyzyyyyyx{yxyy{z{yzyzyyyyzyzyyyzzyzyzyzzzzyzzyzzzzxyy{zxzyyyyyzyyy{zyzzxzyyyyzxzyyyyzzzyzyyzzzyzzyzzzzxyy{zxzyyyyyzxyy{zyzyyyyzy{zyyzy{{{yyzz{{yzy{{zy{{yzyzyyzyyy{yyyyy{y{zyyxyyyzyy{yyzyzzy{yxyzzzzyzzyyz{zyyyyyyxyyyxy{yxyyyy{xyyz{yyyyyy{zyyyy{zzzyyy{zzzyyzyyz{zyyyyyyyyy{yyyyy{yyzyyyyyyzyz{yyyzz{{{yzzy{{{zzyzyy{{zyzyyzyyyyyy{yyzy{z{yzyzyzyyyzyzzyzzyzzzzzzzzzzzyzzzzyyy{zxzyyyyyzxyy{zyzxyyyyy{yxyyyy{zyxyy{yzzy{yyy{{yyyyyyyyyy{yzyxy{yyzyxyyyyyyy{yyyyyyy{yyyyyz{yy{yxz{{yyyxyyyyyyyz{yyyyyz{yzyzyyyyzzyzyyyy{zyzyyzzzyzzy{zzzxyy{zxzyyyyyzxyy{zyzyyyyzy{{yyyzy{{y{zz{{zzx{{yyy{zyyzyyyyyy{yy{yy{y{z{yyz{yyyyyy{{yyyyy{z{{yy{z{{yyzzyz{yzyyyyzyyy{yy{yy{y{z{yzyzyzyzyzyzzyz{zyzzz{zzzzzzyzz{zyzy{zyzyyyyyzyzy{zyzxyyyzy{yyyyzy{zzyyzy{zzy{zyy{{zyyyyyyyyy{yzyxy{yyzyxyyyyyyy{yyyyyyz{{yyyyz{yy{zy{{{zyyyyzyyxyyz{yyyy{z{yzyzzyyy{zyzyyyzz{zyzzzzzzzzzz{zzyyy{zyzyyzz{zxyz{z{z{{zyzzzz{yzyzzz{zzyzzz{zzzzzzyz{zzyyz{zyzz{zzyzy{z{zyzyyyyzy{yyyyzy{{zyyzz{{zzz{yy{{{yyzyyyyyy{yzyxy{y{zyyyyyyzyzyyyyzyz{yyyzzz{zzzz{yzz{xyzyyyyyyyxyyxyzy{yyyzyzyyy{{zyzyy{y{{zyz{y{{z{zz{{zzyyy{zyzy{yy{zy{y{z{zz{zy{y{{z{z{y{y{{z{z{y{{z{{zy{{z{{y{z{zy{yz{z{{y{z{z{z{zy{y{{z{z{y{{z{z{z{{z{z{{zy{{z{{y{z{zy{yz{z{{y{z{zzyzyzy{{zyzzy{{z{zzz{{z{z{{zyz{{yzy{zyzy{yy{zy{y{z{zzyzyzy{{zyzzy{zz{zzz{zz{z{zzyz{zyyy{zyzy{yy{zy{y{z{zyzzzzzzzzzzzzz{{zzzzz{{zzz{zz{z{zzzzzzzzzyzzzzzy{zzyzz{{z{z{{z{z{z{{{{z{z{{{{z{{{{{{{zz{{zzyz{{{zzzy{{{z{{{{{{{z{{{{{{{{z{{{{{{{{{{{{{{{{{{{{{{z{{{zy{{{{zzyzzzzzzzzzzzzzz{{zzzzz{{zzz{zy{z{zzzyzzzyzzzzzyzz{zzzyzyyzyzzyzyzyz{{zyzzz{{zzz{zy{z{zzzyyyzyzyzzyzzy{zzyyyyyyyyyyzxzyyyyzzxzyyyzzzzyzzzzzzzzzyzzzzxyy{zxzyxxyyzxy{zyzyyyyyy{zyyyyy{y{zyyy{y{zy{{zy{{{zyyyyzyyy{yzyyy{{zyyyyyyzyz{yyyzyz{z{yzzz{z{zz{yy{{{yyzyyyyyyyyy{xyzy{{xzyzyzyyyzyzzyzzzyzzzzzzzzzzzyzzzzyyy{zxzyyyyyzxyy{zzyyyyzy{yyyyzy{{yyyzz{{yzz{{yyy{{yyzyyyyyy{yyyxy{y{yyyyyzyzzyyyzyzyzyzyzyzzzyzzzxzzzzyzxz{yyyzyyyyyzyz{yyyzyyyyzyyzyyy{yzyzy{{zzzy{{yzz{yyyyzyyyxy{xyyyy{z{yyzyyyyy{zyzyyyz{yzzyzzyyzzzzyy{zzyyyyyyzyyyyyyyyyz{yzxyxy{yyyyyyyyyyyyy{yzxyy{yyyzyzzyyz{yyxxyyyyyx{yxyyy{yyxyyyzyyyzzyzyyyzzzyyyy{zzyyzyyzzz{yyxzyyyxyyyyyyyyz{yy{yzyyy{{yzyyyy{{zzyzyy{{yzzyyy{zyyyyyyzyyyyy{yyyz{y{{yyyyyx{yyyyxyy{yyxyzyy{yzzyyy{{yyyyyyyyxyzy{yxyzyy{yyzyzyzzyzzyzyzzzzzyzzzzzzzyzzzzyzxz{yyxzyyyyyzyz{yyzyzyyyy{zzyyy{{yzzy{{zyzz{{yz{{yyyyzyyzyy{yyyyy{z{yz{yyyyyyz{yyyyzz{yyyzzyzyyzzyyz{zyyyyyyyyyyyy{yyyzyy{yyz{yyzyyyyzzyzyy{zzyxy{yyzzyzzyyz{zyyxyyyyxy{yxyyy{yyyy{yzyyyy{{yzyyz{{zzyy{z{{yzyyzy{{yyyzyyzyyyyy{yyyz{y{yyyxzxzyyyyzxzyyzyzzzzzyzzzxzzzzyzxz{yyxzyyyyyzyz{yy{yzyyyxz{yzyyyy{yzxyzyz{yzzyyz{{yyyyyyyyxyzy{yxyzyy{zyzyzyz{zyzzyzy{zzzyzzzzzzzyz{zzyzyz{yzyzyyyyyzyz{yz{yyyyyyz{yyyyy{z{yy{{zzyy{{yzy{zyyyzyyyyy{yy{yy{z{y{yz{{yzyyyy{{yzyyy{{{zz{yy{{yzzyyz{yyyyyyyzyy{yy{yy{z{y{yyyyzyzyyyyzyzzyyzyz{zzyzzzxzzz{yzxz{yyxzyyyyyzyz{yyyyyxyxyyyyyyxy{yyyyy{y{yy{zxy{{zxyxyyxyxy{zyyyy{zyyyzyzyyyy{zyzyyyy{zzzyyy{zzzzyy{zzyyyyyyzyxyyxyyxyy{yz{yzyyyy{{yzyyyy{{zzyyzy{zzzyy{{{yyyyyyzyxyzy{yxyz{y{{zzyzyzz{zzzyzyz{zzzyzzzzzzyzz{zyzyz{zyyzyzz{zzyz{z{{{yyyyzyzzyyyzyz{zzzyz{zzzzzzyzz{zzzyz{yyxz{zzyyz{z{zyyyyyyyyzyyyyyy{zyyyy{{z{yy{yz{{{yyyzyyyyy{zyyxy{z{yy{yzyzyzz{yzzyz{z{zzz{zzz{z{zyz{zyzyz{yyyz{yy{yz{z{y{{yzyzyz{{yzzyz{{{zzz{zz{{z{zy{{zyzyz{yzyz{yy{yz{z{y{{y{{z{z{{y{z{z{{{z{z{zz{{z{z{z{{yz{z{y{{z{zy{yz{z{y{{{y{{z{zy{y{z{z{y{z{z{{z{{z{{{z{{yz{z{y{{z{zy{yz{z{y{{yyyzyzy{yyzyz{y{zyz{{zz{z{{yzz{{zyz{yyyz{yy{yz{z{y{zyzzyzy{zyzyzyz{zzzyz{z{zzz{zz{z{yzyyyzzyzzyzyyzz{yzzzzzzzz{zzzzzzz{zzzzz{z{zzz{zz{z{yzzzyzyzzzzzyzzz{zz{{{{{{{{{{{{{{z{{{{{z{{{{{{{{{{{{{{{{{{{yz{{{zyzz{{{z{zz{zz{z{z{z{{{z{z{{{{{z{{{z{{{{{zz{{zzz{{{zyz{{{yzzzzzzzy{zzzzzzz{zzzzz{z{zzz{zz{z{zzzzzzzzzzyzzyzz{yzyyyyyyyyy{yzyyyy{{yzyyyy{{zzyyyy{{zzyyy{{yyyyyyyzyxyyy{yyy{y{yyzyzyzzzyzzyzyzzzzzyzzzzzzzyzzzzyzxz{yyxzyyyyyzz{yyzyzyyyy{zyzyyy{{zzzy{zy{zz{zyy{{{yyyyyyzyx{yyyyy{{yz{yyyyyyy{yyyyyzy{yyyz{z{{yz{yz{{{yyyzyyyyyyzy{yyyz{{yyyxzxzzyyyzxzzzzzyzzzzzzzzzxzzzzyzxz{yyxzyyxxyzyz{y{zyzyzy{zzyzyzy{zzyzzzy{zz{yzzy{|zyzzz{yzyzzz{zyz{yzzyyyyyzyzyyyz{zyzyzyy{zyzyzzy{zz{yzy{{yyyzyyyyyzyz{zzzzyzyzyzyzyy{zzzyy{y|zzz{{zy|z{{yzy{zzzyy{yyyxy{z{zz{zzyzz{zyyzyzz{yzyzzzzyzzzyzzy{{zyzzz{yzyzzz{zyzzzzyyyz{zyyyyyzzyyxyyzzzxyy{yzyzyyzyyyz{{yxxyzyxyy{yxyyy{zyzzzzzyzzzzyzyy{zzzyyyy|zyzzzzy|zz{yzy{zzzyyyyyyxyyz{zz{zyzyz{zzyzyzy{zzyzzzy{zz{yzzy{|zyzzz{yzyzzz{zyz{yzzzzzyzyzzyzyz{zzzyzyy{zzzyzzy{zz{yzy{{zzyzyyyyyzyz{z{zzzyzy{zyzyy{{yzyy{y|y{z{{zy|{{{yzy{zzzyy{zyzyy{z|{z{zyzyzz{zyzyzz{yzyzzzzyzzzyzzz{{zyzzz{yzyzzz{zyzzzzyyz{zzzzyzyzzzyzyzzzzxy{yzzzzyzzyzz{{yzyyzzzxy{yyyxy{zyz{{zzzzz{{zzzz{{{zzyzz|{{yzzzz|y{{zzz{z{zzyzzz{zyzz|{{zzzyzy{zzyzyy{{zyyyyz{{zyzzyz{z{yzyyzzzyyyzyzyyyz|{z{zzzzzz{zzzzyz{zzyzzzz{zz{zzzz{|zzzzz{zzyzzz{zyz{yz{zzzyzy{zzyzyz{{zyzyy{z{zyzzy{{z{yzy{{zzyzyzyzyzyz|{z{zzzyzz{zzyzy{z{zy{z|zyz{{zz|z{{zyz{z{yzy{zz{zy{z{zzz{{{zzzzz{{zzzzyz{{zz{zz{{yzzzzzz{{zzzzz{zzy{zz{zy{z|{zyyyyyyzyzyyyz{zyzyzy|zyzzzzy|zz{yzy{{yyyzyzyyyzyy{zzzzzyzyzzzyzyyzzzzyyyzzzzyzzyzzz{yzyyzzzxyyzyyxyyzyz{zzzyzy{zzyzyyz{{zyyyy{{zyzzyz{z{yzyyzzzyyyzyzyyyz|{{{zzzzz{{zzzzyz{{zzyzzz{zz{zzz{{|zzzzz{zzyzzz{zyz{|{z{{zzzzz{{zzzz{z{{zzzz{z{z{zz{z{{zzz{{{zzzz{z{zzz{{z{{zyyyyyyzzzyyyz{zzzyz{y{zzzzzy{z{{yzy{{yyyz{zzyyz{z{zzzyyzyzzzyzyzy{{zyzy{z|{zy{yz|{{{zyz{xyyzy{zzzzy{{{zz{zyzyzz{zzyzz{z{zzz{z{z{z{zyzy{{zzz{{{yzz{zz{zz{z{zz{zzzzzz{zzzzz{z{zzz{z{z{z{zzzz{{zzz{{{zzz{zz{zz{z{z{{zzzzz{{zzzzz{{{zzz{z{{{z{zzz{{{zzz{{{zzz{zz{zz{z|{{{{z{z{{{{{z{z{{{{{z{{{{{{{{z{{{|{z{{{{z{z{z{{{z{{|{{z{zy{yzz{z{y{z{{{z{z{{|{{z{{z{|{{{z{{{{y{z{zz{zz{{{z{z{zyzy{z{yzyy{{{{yzzy|{{{z{zy|{z|zyz{{zyyz{zzyyz{|{{z{zyzy{z{yzyy{{{{yzzy|{{{z{zy|{z|yyz{{zyzz{zzyyz{|{{z{zzzz{z{zzzz{{{{zzzz|{{{z{zz|{z|zzz{{zyzz{zzyzz{|{{{{{{{{{{{{{{{{{{{{{zz|{{{z{{{|{{|{{{{|{{zz||{{zz{|{{z{|z|z{z|z|z{||{|z{{z||{{{{|z|{{|z|z|{|z{{|{zz{{{|{yyyzyyzzzzyzzzzyzyzzzyzyyzzzzyyyyzzzzyzzyzzz{yzyyzzzyyyyyyyyzzz{{zzzzz{{zzzzyz{{zzyzzz{{zzzzzz{{{zzzyz{zzyzzz{zzz|{zzzzyzyzzzyzyz{zzzyzzy{zzzzzzy{zz{yzy{{zzyzyzyyyzz{z{zzzyzy{zzyzyyz{{zyy{yz{{z{{zyz{{|yzyzzzzyy{zzzyy{|{z{zyzyzz{zzyzy{{{zzyzz|{{zz{yz|{{|zyz{y{yzyzzy{zyz{{{zzzz{y{zzzz{{z{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{yzzzzz{zzzzzyz|zzzyzz{|zzzzzz{|z{zzzzz{{zzzz{yyzzzzz{{{zzzz{{yzzz{z|{zzzz{zz{z{zz{z{|zzzz{zyzzzz{{{zzz{zyz{{{z{z{z{zz{{z{zzzz{{z{z{{z{{y|{z{z{{z{zzz|zyzzz{{zyyy{{zzyyyzz{yyxyzzz{yyyy{zyzzzyy{zz{zyyyzzyyyyz|yyyyz{zy{{zzzz{{zzzz{z{{zzzz{z{{zzzz{z{{{zzz{zyzzzz{yyzzzz{zz{zzzz{{zzzz{{z{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{yzzzzzz{zzzzzz|z{zzzz{|zzzzzz{|z{zzzzz{{zzzz{yyzzzzz{{{zzzzz{{zzz{z|{zzzz{zz{z{zz{z{|zzzz{zyzzzz|{{zzz{zyz{{zzz{z{zzz{{z{zzzz{{z{z{{z{{z|{z{z{{z{zzz|zzzzz{{zyy{{zzzzzzzz{zzzzzz{zyzz{zzzzzzz{zz{zzzzzzyzzzz|yyzzz{zy{zzzzzz{{zzzzz|{zzzy{z|zzzzz{z{{zzzzzzyzzzz{{{zzzzzy{{zzzzz{{zzzz{{{zzzz{z{{zzzz{z{{{zzz{zyzzzz{yyzzzz{zz{zzzz{{{zzzz{{{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{y{{zzzz{{{zzzz{||zzzz{|z{z{zz{|{|zzzz{{{zzzz{{{zzz{z{z{{z{z{z{z{zz{{z{zzz{{z{z{{z{{z|{z{z{{z{zzz|zzzzz{{zz{{{{zzzz{{{zzzz{{{{zzz{{{{zzzz{{z{zzzz{{yzzzz|yyzzz{zyzzzzzzzz{zzzyzzz{zyz{zzzy{zz{zz|zzzzzzyzzzz{yyzzz{zy{zzzzzz{{zzzzzz|{zzzzz|zzzzz{z{{zzzzzzyzzzz{{{zzzzzy{{zzzzz{{zzzz{z{{zzzz{{{zzzz{z{{{zzz{zyzzzz{yyzzzz{z{{zzzz{{{zzzz{{|{zzzz{{{z{zz{{{|{zzz{{yzzzz{{{zzz{{yz{{z{z{z{z{zz{|z{zzzz{|zz{{z{|z|{z{z{{{{zzz|zzzzz{{{{{{zzzzz{{{zzzzz||{zzzz{||zzzz{|{{zzzzz{{zzzz|{{zzz{z{z{zzzz{z{zzzz{|z{zzzz{|z{z{y{zz{zzzz{{{zzzz|yyzzz{z{z{zzzz{z{zzzz{|z{zzzz{|z{z{z{zz|zzzz{{{zzzz|yyzzz{z{{{zzzz{{{zzzz{||{zzzz{||{z{zzz{{zzzz{{{zzzz|{{zzz{z{{{zzzz{{{zzzz{|{{zzzz{|{{z{zz{{{{zzz{{{zzzz|yyzzz{{{{||{|{{{|{|{|||{|{|z{||{|z{|{|||{{|{|{{|{|{|{y{|{{{{{z{{zzz{{{z{zz||{{z{zz||{{z|{z||{|z{z|{{zz{z|yyzzz|{{{{{z{zz{{z{zz{z{{zzzz{z{{z{{z{z{|{{z{zz{zzz|zzzzz{{y{{{z{zz{{z{zz{z{{zzzz{z{{z{{z{z{|{zz{zzzzzz|zzzzz{{z{{{z{zz{{z{zz{z{{zzzz{z{{z{{z{z{|{z{{zz{zzz|zzzzz{{z{{{z{zz{{z{zz{z|{zzzz{z|{z{{z{z{|{z{zzz{zzz|{{zzz{{z{||{|{{{|{|{||{||{|{{|{||{{|{|{{|{{|{|{|{|z|{{{|z{{zyyy{{yy{{z{{{{{zzyyyyzz{yyyyzzz{yyzy{zzzz{yy{zz|zyyyzzyyyyz{yyyyzzyzzzzzzzz{zzzzzzz{zzzz{zzzz{zz{zz|zzzzzzyzzyz{yyzzzzy{{zzzz{{{zzzz{{{{zzzz{{{{z{zz{{{|zzzz{zyzzzz{yyzzzzy{zzzzz{{{zzzzz||{zzzz{||zz{zz{|{|zzzzz{{zzzz{{{zzzz{{|{zzzz{|z{zz{z||z{zz{{||z|{z{{{|{z{z{{yzz{z|{{zzz|z||{|{{||{|{||{||{|{{|{||{{|{|{||{{|{|{{~|{|{|{|{|{{{~~|||||}|{|||||}z{|||||}|{|z|||}|{{||||}{}|||||}{||||{}z||{{{{||{{{{{{||{{{{{{||z|{{{{|{{{{{{{||{{{{|}z{{{|{}z}}}}{{}}{z{}}{}}{}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}~||||}~|||{|}}~|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~z{|{||}}{}z}}z}z}}{}}{}{{}{}}z|}{}{}}{{}{}{||}{}{|}z{}{|{}z~||{|{{|{|{||{||{|{{|{||{||{|{||{{|{|{|~|{|{|}|{|{|{~~||||||}||||||}|||||||}|||||||}|{{||||}|}|||||}{||||{}z|||{|{{|||{||{||{|{{|{||z||{|{|{{{|{|{|||{|{|}z{|{|{}{}}}{}{{}}{{}}{}}{}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}~|||||}~||||}}~|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~{|{|||{{{{{||{{{zz|{{z{{{{||z|{{{{|{{{{{{{||{{z{|}z{z{|{}z|}}{}{{}}{}{}}}}z}{{}{}}z|}{}{}}{{}{}{||}{}{|}z{}{|{}z~||{|{{~|{|{||{|{|{{|{||{||{|{||{{|{|{|~|{|{|}|{|{|{~~||||||}|||||||}||||||}|||||||}|{{||||}|}|||||}{||||{}z}}}{}{{}}{}{}}{}}}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}~|||||}~|||||}}~||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~|{||||{|{{||{|{||{||{|{zz|{y||{|{|{{{|{|{|||{|{|}z{|{|{}z|||{|{{||{|{||{||{|{{z|{z||{|{|{{{|{|{|||{|{|}z{|{|{}z|}}{}{{}}{}{}}{}}{}{{}}}z|}{}{}}{{}{}{||}{}{|}z{}{|{}z~||{|{{~|{|{||{~|{|{{|{|{||{|{||{{|{|{|~|{|{|}|{|{|{~~}}}|}|}}}|}|}}}}}|}||}}}||}|}}}}{|}|}}|}}|}||}||}||{}}~|||||}~|||||}}~|||||}}~||||}}~|}|||}}~~||||}}}||||}~~{}||||||}|||||||}|||||||}|||{zzz|{{||||}{}|||||}{||||{}{||||||}|||||||}|||||||}|||{|zz|{{||||}|}|||||}{||||{}{||||||}|||||||}|||||||}||||||{|{{||||}|}|||||}{||||{}{|}}|}|}}}|}|}}}}}|}||}}}}||}|}}}{|}|}}|}}|}||}{|}||{}{~|||||}~||||||}~||||||}~||||||}|{||||}|~|||||}|||||{~~~||}|}}~|}|}|}}~|}|}}}}~|}||}}}~}}|}}}~~|}|}}}}}|}|}~~}}||{|{z}|{|{||z}|{|{{|z}|{{|{|z}|{|z|z|}|{|{|}|{|{{{}}}||{|{{}|{|{||{}|{|{{|{}|{||{|{}|{{{|{|}|{|{|}|{|{|{}}}||{|{{}|{|{||{}|{|{{|{}|{||{|z}|{{||{|}|{|{|}|{|{|{}}}||{|{{}|{|{||{}|{|{{|{}|{||{|{}|{{|{{|}|{|{|}|{|{|{}}}}}{}{{}}{}{}}{}}{}{{}{}}{|}{}{}}{{}{}|}}{}{|}|{}{|{}}~}}|}|}~}|}|}}}~}|}||}}~}||}|}}~}||}|}}~}|}|}}}|}|||~~{z{|}zz{|}z{|}z|}z}|}||{{{z{||{{zz{{||zz{{{{||z|{{{{|{{{{z{{||{yz{|}zz{|{}z||{{{{{||{{{z{{||{z{{{{|{z|{{{{|{{{{{z{||{{z{|}z{{|{}z|||{|{{||{|{||{||{|{{|{||z||{|{|{{{|{|{|||{|z|}z{||{}z}|||||}}||||||}}||||||}}||{|||}}|{||||}|}||||{}||||{}}|}}{}{{}}{}{}}{}}{}{z}{}}z|}{}{}}{{}{}{||}{}{|}|{}{|}|~}}~}~~~}~}~}}~~}~}~~}~~}~|}~}~~}{~}~}~~~}~}~|}|~}~|{~{{{|}z|||}|}|}|}|~|}|}|~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}|}|~|}|}|~}}|{|~}|{}|~}|}||z}|}|}~}|}|}y||}|}|z}|{}|}{{{||{{{{{||{{{|{||{{||||{|||||{{}|||{{{y||{{{{z}|{{{{}|}}}|}|}|}~}|}|}~|{}|}~|}||}~|}|}|~|}|}z~|}|}|{}|{}|}{|{{||{|{||z{|{||{|{{||{|{|||{|z|}|z|{|{z|{z|z|~}|{{|{{{|}z|}||}|}}|}|~|}|}|~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}|}}|~|}}|~}}|{|~}|{}|~}|}|||}|}|}~}|}|}z||}|}|z}|{}|}|{||||{|{||||{|{|||{||{|||||||||{}||||{|{|||{|{z}|{|{|}|}}|}|}|}}~}|}|}~|{}|}~|}||}~|}|}|~|}|}z~|}|}|{}|{}|}{|{{|~|{|{||{|{||||{{||||{|||||{|}|||{|{z||{|{|~}|{{|{{|{{|||{|{||{|{||||{{||||{|||||{|}|||{|{~||{|{|z}|{{|{{|}z|}||}|{|}|}|~||}|~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}|}}|~|}|}|~}}||~}|{}|~}|}|||}|}|}~}|}|}z||}|}|z}|{}|}}|}}|}|}|}|}~}|}}~|{}|}~|}||}~|}|}|~|}|}{~|}|}|{}|{}|}{|{{|~|{|{|~|{|{|||{{||||{|||||{|}|||{|{z||{|{|~}|{{|{{|{{|||{|{||~{|{|||{{||||{|||||{|}|||{|{~||{|{|z}|{{|{}|}}|~|}|}|~}}|}|~}{}|~}|}||~}|}|}~}|}|}{||}|}|z}|{}|}|}{|}||}|}|}|}|~|}|}|~}}}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}|}}|~|}|}|~~}|}|~~|{}~~|}||}~|}|}~~|}|}z~|}|}|{}|{}|}|||||~|||||~|||||~||{||||||||||||}||||||z||||||~}|{|||{|{{|||{|{||~{|{||~|{{|||{|||||{|}|||{|{~||{|{|z}|{{|{}|}}|~|}|}|~}}|}|~}|{}|~}}||~}|}|}~}|}|}{||}|}|z}|{}|}{{{{||{{{{|||{{{||||{{||{{|||||{{}|||{{{z||{{{{y}|{{{{}z}}}}}}}}}}}}~}}}}}~}{}}}~}}|}~}}}~|~}}}}~~}}}}}|~|}}}}}|}}|~|}|}|~}}|}|~}|{}|~}|}||}|}|}~}|}|}z||}|}|~}|{}|}||||||||||||~|||||~|{|||~||||||||}||||||~||||||z}|{|||}|}}|~|}|}|~}}|}|~}|{}|~}|}||~}}|}~}|}|}{||}|}|{}|{}|}|{||||{|{|||||{|||||{|||||||||{{{}||||{|z|||{|{{}|{|{||{||||{|{|||||{|||||{|||||||||{{{}||||{|z|||{|{{}|{|{|}}~}}~~~}~}~~~}~}~~~~~}~~~~}|~~~~}~~~~}~}~~~}~}~~~|~}~}}|}}|}|}|}|}~}|}|}~|{}|}~|}||}~|}|}||}|}~~|}|}|z}|{}|}}|}}|~|}|}|~~}|}|~~|{}|~~|}||~~|}|}~}}|}{~|}|}|z}|{}|}}|}}|}|}|}|}~}|}|}~|{}|}~|}||}~|}|}||||}z~|}|}|z}|{}|}}|}}|}|}|}|}~}|}|}~|{}|}~|}||}~|}|}|||{}z~|}|}|z}|{}|}}|}}|}|}|}|}~}|}|}~|{}|}~|}||}~|}|}|z|{|z~|}|}|y}|{}|}}~}}~~~}~}~~~}~}~~~~~}~~~~}|~~~~}~~~~~}~}~~}~}~~~|~}~}}}}}}~}}}}}~}}}}}~}}}}}~}}}|}~}}}}~~}}}}}||}}}}~~|{}}}|}||}~}|}|}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}}|}~~|}|}||}||}~}|}|}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}||}~~|}|{||}||}~}|}|}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}|}}~~|}|}||}||}~}|}|}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}|}|~~|}|}|}z}{}|z}|{z}|{{z}|{{{{{{{{|zy{{{{|{zy{{|||{{{||{{|{||{{}}||y{{z{zzy{z|{|{zz{z{|}y{|{|z}|{|{|z}{|z|z}|{{|z}|{{|z}|{|}}||{|{||{|{|}}{{{|{{|{|{||{|{z{|{|{|z|||{|{||{{|{||{|}}|{{|{z{y|{|z|{|{|{{{{{{|z{{{{{|{z{{{|||{{{||{{|{|{{{}}||{{{z{zz{{z|{|{z{{}{{}|}{}{}{}{}{}{}}|{}{}}{{|{}}z}}}|}{}{z}z}z}z|{|{}z{|{{|{|{|{|{|{|{|{|||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{{{{{{{|{{{{{|{z{{{|||{z{||{{|{||{{}}|{{{{z{zz{{z|{|{z{z{|}y{|{{|{}|{{|{}{|{|{}||{|{}|{{|{}|{|}}||{|{||{|{|}}{|{|{|||||}|||||}||||z}|||||z|||{|}||||}}|||||{{||||{}{{|||{|{{|{||{|{{|{|{|z|||{|{||{{|{||{|}}|{{|{z{z|{|z|{|{|{{}{{}{|}{}{}}{}{}{}}|{}{}}{{|{}}{}}}|}z}{z}z}{}z|{|{}{{|{{|{~|{|{|{{|{|{|||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{{|{{|{||{|{|{||{|{|||z|{||{{|{||{|}}||{|{z{z|{|z|{|{|{{|}z{|{{|{}|{|{|{}{||{}||{|z}|{{|{}|{|}}||{|{||{|{|}}{|{|{|||||}||||||}||||}|||||{|||{|}||||}}|||||{{||||{}{||||{}{{}{|}{}{}{}{}{}}}|{}{}}{{|{}}{}}}|}{}{z}z}{}z|{|{}{{|{{|{~|{|{|{~{|{|{||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{|||||}||||||}|||||}||||}|||{|}||||}}|||||{{||||z}{|||||||||}}|||||}}||||}}|||}}||{{}}|||}}|||||||||||}}{{||||}z{|{{|{}|{|{|{}{|{|{}||{{}|{{|{}|{|}}||{|{||{|{|}}{|{|{|}||}}|}|}|}}}|}|}}}}||}}}|{|}}}|}}}|}|}|{}|}|}{}{||}|{|{{|{~|{|{|{~{|{|{~||{|{|{{|{||{|~}||{|{||{|{|~~{|{|{|||||}||||||}|||||}|||||}||{|}||||}}|||||{{||||z}{||||{|{{|{||{|{|{|{|{|{|||{|{||{|{||{|}}||{|{y{y|{|{|{|{|{{}{{}{|}{}{}{}{}{}{}}|{}{}}{|{}}{}}}|}{}{|}z}{}||{|{}{}|{}{{}{}}{}{}{}{}{}{}}|{}{}}{{|}}{}}}|}{}{|}{}{}}}{|{}{|||||}~|||||}~||||}~||||}~||{|}|||~}|||||||||||~~{|||||||||}||||||}|||||}|||||}|||{|}|||}}|||||{{||||z}{||||{|{{|{||{|{|{|{|{|{|||{|{||{{|{|||}}||{|{z{z|{|{|{|{|{{{{{{{|{{{{{{|{{{{{|||{{{||{{|{||{}}||{{{z{z{{{z|{|{{{~}~~}~~}~}~}~~~}~}~~}|~}~~}~{|~~}~}}~}~}~|}~}~}~~{|~}~}|}||}}~}|}|}}~|}|}}~}||}}~}||}}~}|}~}}|}|}}|}|}~~|||}||}||}}}}|}|}}}|}|}}}}||}}}}|{|}}}|}}}||}||}|}|}}}{||}|{}{{}{}}{}{}{}{}{}{}}|{}{}}{{|{}}{}}}||}{|}{}{}}}{|{}{{}{{}{}}{}{}{}{}{}{}}|{}{}}{{|{}}{}}}||{{|}{}{}}}{|{}{{}{{}{}}{}{}{}{}{}{}}|{}{}}{{|{}}{}}}||{z|}{}{}}}{|{}{}|}}}}~|}|}}}~}|}}}~||}}}~|}}}}~|}|~}~|}|}}}|}|~~}|}|}||||}}~||||}}~|||}}~|||}}~||}}}~|||~}~||||}||||~~}||||||||}}~||||}}~|||}}~|||}}~||}}}~|||~}~||||}|{||~~}||||||||}}~||||}}~|||}}~|||}}~||}}}~|||~}~||||}|{||~~}||||||||}}~||||}}~|||}}~|||}}~||}}}~|||~}~||||}|{|{~~}||||}}{|{||{|{|{|{z{zz{z{{z{z{z{|{{z{z{|{|{z{|{|}|{|{{|}|y{zzzy{z{{|z}|{zzzz{z{{zyz{z{|{{zzz{|{{{z{|{|||{|{{|}|{yzzzzzzy{zz{{{zyyzz{y{{{||}{{{{z|}z{{{|z}{{{||z{{|||}z{{|}z{{{zzy{{{}z|{{{{{{{{|{{{{{{z{|{{{{|z|{{{|{{{|||{|{{|}|z{{|zzy{{{zz{{{{z{zz{{{z{z{z{||{z{z{|}|{z{|{|}|{|z{|}|{{zzzz{z{{|z}|{z{{{{{z{{{{||{z{{{||{}{{{|{}{|||{}{y|}|{{{zz{y{y{zz{{{{{{{{{|{{{{{|{|{{{{|{|{|{|{|{|}|{|{{|}|{{{|zz{{{{|z}|{{z{zz{z{{{z{z{|{{z{z{|{{{z{|{|||{z{{|}|z{zzzzzz{{zz{{{zz{|}zz{zz{zz{z{{{zzz{zz{z{{z{zz{zz|zz{z{|}zz{zzzz{z{zzz{z{z{{{{||}{{{{|}z{{{|z}{{{||z{{|||}{{{|}|{{{zzz{{{}z|{{{{{{{{{|{{{{{{{||{{{|{|}|{|{|{|}|{|{{|}|z{{|zz{{{{|z}|{{{{{{{z{{{{{|||{{{||{}{{{|{}{|||{}{{|}|{y{zz{y{{{zz{{{{z{zz{z{{z{z{{{{{z{{{|{{{{{|z~||{|{{~}|{{zzzz{z{{~~{{{z{{{{||}{{{{||}|{{||}|{|||}|{|}|}|{{|}|{{{zzy{{{}||}|{{{{{{{|{{{{{{|{|{{{|{|{{z|{|{|||{|{{|}|{{{|zzz{{{zz{{{{{|}z{{{{{z{{{{{{{{|{{{{{|{{{{z|{|||{|{{|}|{{{z{z{{{{{z{{{{{{{{||}{{{{||}||{{|}|}|||{|{|}|}|{{|}|{{{zzz{{{}||}|{{{{{{{|{{{{{||{|{{{||}{{{|{}{|||{}{{|}|{{{|z{z{{{zz{{{{z{zz{z{{z{z{{{~{{z{{{{{{{{|{~||{|z{~}|{{zzzz{z{{~~{{{z{{{{{z{{{{{||{||{{||{}|{|{}{{}|{}{{|}|{{{zz{{{{{|z}|{{{{{{||}{{{{||}z{{{||}z{||}z{||z}z{{|}|{{{zzz{{{}z|{{{{|}zz{zz{z{{z{z{{{||{z{{{|}|{{|{|}|{|{{|}|z{zzzz{z{{|z}|{z{{{{||}{{{{||}|{{{||}}{{||}{|||}}{{|}|{{{zz{{{{}z|{{{{{{{{{|{{{{{{|{~{{{{|{~{{{|{{~||{|{{~}|z{{|zz{{{{~~{{{{{{{{||}{{{{||}|{{{||}|{{||}||||}|{{|}|{{{zzy{{{}y|{{{{z{zz{z{{z{z{z{~|{z{z{~}|{z{~z}|{~z{|}~z{zzzz{z{{~~}|{z{{{{zz{{{{{||{||{{||{}{|{|{}{{|{}{{|}|{{{z||z{{{|z{|{{}z{{{{{|{{{{{||{|{{{||{}{{{|{}{|||}{{|}|{{{||{{{{{z|{{{{{{{{||}{{{{||}~{{{||}~{{||}~{~||}{{~}|{{{zzz{{{}~~{{{{{{{{||}{{{{||}|{{{||}|{{||}|{|||}|{|}|{{{zzz{{{}z|{{{{{{{{{|{{{{{{|{|{{{{|{|{{{|{|{|||{|{|}|{{{|zzz{{{zz{{{{{~{{~z{~{~{~|~~|~{~|~~}|~|~~{~}|~~{~}~{~{zz{~{~{~~}|~{}{{{{~|}{{{{~|}~{{{~|}~{{~|}~{~~|}~{{~}{{{{z{{{{}~~{{{{{{{{||}{{{{||}|{{{||}}{{||}}{|||}}{{|}|{{|z{{{{}y|{{{{{{{{{|{{{{{||{|{{{||{}{{{|{}{|||{}{{|}|{{|z{{{{{zz{{{{{{{{{z{{{{{||{|{{{||{}{{{|{}{|||{}{{|}|{{zz{{{{{yz{{{{|}||}|}}|}|}|}~|}|}|}~}|}|}~|~}|}~|}~}~|}|||}|}}~~}|}||}||}|}}|}|}|}~|}|}|}~}|}|}~|~}|}~|}~}~|}|||}|}}~~}|}||{||||}{|{|||}~|{|||}~}|||}~|~}|}~|{~}~|{|||||{}~~}|{||{||||}{|{|||}~|{|||}~}|||}~|~}|}~|{~}~|{||||{{}~~}|{{|{||||}{|{|||}~|{|||}~}|||}~|~}|}~|{~}~|{||||{|}~~}|{||||{z{{z{{{z{{{{|z{z{{{|{{|{{{|{||{|{|{||{|{||||}||{{|z|{z|{zz{|{{{{z{z|{z{z{z{}z{z{z{||{|{z{||}|{|zz|}|x{{zyy{zz{|z}|{zzzzzzzzzzzzz{zzyzzz{zzzzzz{zzzz{zzzz}|zzzzzzzzz{zzyzzzzzzzzzzzzzzzz{zzzyzzzz{zzzz{{{zz{z{|}zzzz{{zzzzy{z{zz{z{{{|z{z{{y|}{z{{{z}z|{{{|z{|{|}{zz|}zz{{yyy{z|}z|{z{{z{{{||{z{{{z{{|{{{|{||{|{|{||{|{||||}||{{|z|{z|{zz{|{{z{{z{|{z{z{z{}|{z{z{||}|{z{||}|{|zz|}|z{{zzz{zz{|z}|{{z{{{{|{z{{{|}{|{{{|}||{|{|}||{|}||{|}||{{{{|{z|}{|{|{{z{{{{||z{{{|{}z{{{|{||{|{|{||}|{|z||}|z{{|yz{z|{|z}|{{z{{z{zz{{z{z{{z{z{z{||{{{z{||{|{{zz|}|z{{zzzzzz{zz{z{yyzzyz{zzzzzzz{zzzz{zz{y{z{z{zz{z{{{zz{{{|}{{zz{{zz{zz{z{zz{z{{{{||{z{{|}{|{{{z}||{|{|{||{|}||z|}||{{zy|{z|}z|{|{{z{{{{||{z{{{{}|{{{|{||}|{|{||}|{|z||}|z{{|zz{z|{|z}|{{z{{z{zz{z{}{z{z{}{|{z|{|{|{}}{|{}zz|}|zz{zzzzzz{zz{z{{z{{z{z|{z{}{z{|{}{|{|z{|{|{}}{|{}|z|}||{zzz|{zz{zz{|{{z{{{{||{z{{{|}}{{{|}||{|{|}||}|}|z{|}|z{{{{y{z|}||}|{{z{{{{|z{z{{{|{{z{{|{||{{z|{||{|{|z||}|z{{|zzzz|{zz{zz{|}z{z{{z{z|{z{z{z{{|{zz{||{|zz{||{|{||{|}||{z{{|{zz{{z{|{{z{{{{||{z{{{|}}|{{{}||}|{|{||}|}|zz|}|z{{yzz{z|}||}|{{z{{{{|z{z{}{|{{z{}{|||{|{|{}}{|{}z||}|z{{|zzzz|{zz{zz{z{{z{zz{z{z{z{{z{z{z{~{{{z{|~{|{|z{~}|zz{{{zzzz{~~{z{{z{{z{z|{z{z{z{{|{z{z{~{|{z{~|{|{~|z|}~|{zzz|{zz{~~{|{{z{{z{z|{z{}{z{}|{}{|{|z|{|{}}}|{}zz|}|z{{zzz{zz{|z}|{{z{{{{|z{z{{{|}{z{{{|}z|{{|}{|{z}{z{|}|z{{{{z{z|}{|{z{|}z{z{{{{z|{z{{{z{}|{{{z{||}|{{||}|{|z{|}|z{{{{z{zz{|{}|{{z{{{{|z{z{}{|}{z{}{|}z|{|{|}}{|}}zz|}|z{{zzz{z|}z|{z{{z{{{{|z{z{{{|{{z{{{|{~~{{{|{~{|{|z|~}|z{{|{zzz|{~~{zz{z{{z{z|{z{z{z{}|{z{z{~~}|{z{~}|{~zz|}~z{{zzz{zz{~~}|{{z{{z{z|{z{}{z{{|{}{|{||{|{|{}}|{}|z|}||{zz||{zz{|z{|{}{{z{{{{|z{z{}{|{{z{}{|{||{|{|{}}{|}z||}|z{{||zzz|{{|{zz{z{{{{|z{z{{{|}{z{{{|}~~{{{|}~~{|}z{~}|z{{{{z{z|}~~{z{{z{{{{|z{z{{{|}{z{{{|}||{{{|}||{|}|z|}|z{{zzz{z|}z|{z{{z{{z{z|{z{}{z{}|{}{|{||}|{|{}}}|{}||}||{{{{|{zz{|z}|{~z~~z{z|~z~}~z{}|~}~|~~~}|~|~~~}|~~z{}~z~{{{z~zz{~~}|~}{{{~{~|z{{~}~|}{z~}~|}~~~|~|}~~~|}~{{~}{{~{{z{{|}~~{z{{z{{{{|z{z{}{|}{z{}{|}||{|{|}}}{|}}z||}|{{|{z{z|}{|{z{{z{{{{|z{z{}{|{{z{}{|{||{|{|{}}{|{}z||}|z{|{zzz|{{z{z{{|{{|{||{|{|{|}}|{|{|}~~}|{|}~~}|}~||~}~|{|||{||}~~}|{}|}}|}||}|}|}|}}|}|}|}~~}|}|}~~}|}~||~}~|}}||}||}~~}|}}|}}|}||}|}|}|}}|}|}|}~~}|}|}~~}|}~||~}~|}}||}||}~~}|}{|{{|{||{|{|{|}}|{|{|}~~}|{|}~~}|}~||~}~|{{|||||}~~}|{{|{{|{||{|{|{|}}|{|{|}~~}|{|}~~}|}~||~}~|{{|||{|}~~}|{{||||{z{z{zz{z{{z{z{z{||{z{z{|}|{z{|}|z|{|}|{z|}|zz{zzz{{|}z|{z|{z{z{{z{{{z{||{|{{{|{|{|{|{|||{|{|{||}||z{|z|{{|{zz{||{z{z{}|y{{z{zz}z{{{z{{z|{{{|z{}|{|{zz}|zz{yyy{{z{|z}|yyyz{yzzzzzz{zzzzzzzz{zzzyzzz{zzzzzzz{zzzzz|}zzzzzzzzzzyzz{zz{zz{{{z{z{z{||{z{z{z}|{z{|{|z|{|}|{x|}|zz{yyz{{|}z|{z|{{z{z{|{{{z{z|{|{{{|{|{|{|{|||{|{|{||}||z{|z|{{|{zz{|z{zz{z{z{}{z{zz{|{}{z{}{|{|{|z}{|{}zz|}|zzzzzz{{z{zz{z|{{z{z{{{{{z{||{|{{{|}|{|{|}|z|{|}|{z|}||z{zz|{{|}z|{||{{z{z{}|{{z{||}z{{{|{|{|{|{|||}|{|{||}|zz{|yz{{|{|z}|zzzzz{zzzzz{zz{z{y{zz{{z{zz{z{{zz{{z{{}|{{zz{{zzz{z{zzyyzzyz{zz{z{{z{z{{z|{z{z{z{|{z{{{|z{{|{|{z|}|zzzzzz{{z{zz{z|{{z{z{{|{{{z||{|{{{z}|{|{|{|z|{|}|{z|}||z{zy|{{|}z|{||{{z{z{}|{{{z{|}|{{{|{|}|{|{|||}|{|{||}|{z{|{{{{|{|{}|z{zz{z{{z{z{z{z{z{z{z{|{z{{{~z|{|{~zz|}~{zzz{{{{z{~~{z|{{z{z{{|{}{z{z||{}{z{}{|{|{|z}{|{}{z|}||zzzz|{zz{zz{||{{z{z{}|{{{z{||}{{{|}|{|{|}|z|}|}|{z|}|zz{zzy{{|}||}|z{zz{z{{z{z{z{||{zz{|{|{zz|{|||{|{|{||}|{z{|{{z{|{z{{z{|}z|{{z{z{{|{{{z{z|{|{{z{|{|z{{|z|{|{|{z|}||zzzz|{zz{zz{||{{z{z{}|{{{z{||}|{{{}|}|{|{|z|}|}|{z|}|{z{y{{{{|}||}|z{zz{z{{z{}{z{||{|{}{|}{|{|{z|}{|{}{||}|zz{|zzz{|{zz{z|{{z{z{{|{{{z{z~{|{{{z{{|{{{~z|{|{~{z|}~|zzz{|{zz{~~{||{{z{z{}|{}{z{zz}|{}{z{}|{|{|z}}|{}{z|}|zz{zzz{{z{|z}|z{{z{z{{z{{{z{||{z{{{|}|{{|}|z|{|}|{z|}|{z{z{{{{|}{|{z|}z|{{z{z{}|{{{z{zz}|{{{z{{}|{{|z{}z{|{z|}|{z{z{{{{z{|{}|z{zz{z{{z{}{z{||{|{}{|}}{|{|zz}{|}}{z|}|zz{zzz{{|}z|{zz{zz{z{{z{z{z{|~{z{z{|{~{z{|{|~{|{|{|~}|zz{|zzz{|{~~{z|{{z{z{}|{{{z{z|}|{{{z{|}|{{{||}|{|{z|}|zz{zzz{{z{|z}||{{z{z{}|{{{z{z~}|{{{z{~}|{{{~z}|{~{z|}~{z{z{{{{z{~~}||{{z{z{{|{}{z{z|{|{}{z{}{|{|{|z}|{}{z|}||zzz||{zz{|{{|}{z{zz{z{{z{}{z{||{|{}{|{}{|{|{||}{|}{||}|zz{||zz{|{z|{zz{zz{z{{z{z{z{|~{z{z{|}~{z{|}~z~{|}{z~}|zz{zzz{{|}~~{z|{{z{z{{|{}{z{z|{|{}{z{}{|{|{|z}{|{}z|}||zzz{|{{z{z{{||{{z{z{}|{}{z{z|}|{}{z{}}|{|{|z}}|{}{|}||z{z{|{{z{|{}||~{{{{{}|~}~{{z~}|~}~z{~}|~|~~{~}|~~{{}~{{{z{{~{z{~~}|}z{zz~z~{z~}~z~|~~|~}~|}~~|~|}~z~~|}~~z~}{z~z{{{~|}~~{zz{zz{z{{z{}{z{||{|{}{|}}{|{|}||}{|}}{||}|z{|{{{{|}z|{z|{||{|{}|{|{|{|~}|{|{|}~}|{|}~|~}|}~{|~}~|{|||{{|}~~}||{||{|{}|{|{|{|~}|{|{|}~}|{|}~|~}|}~{|~}~|||||{{|}~~}||}||}|}}|}|}|}|~}|}|}|}~}|}|}~|~}|}~}|~}~||}||}}|}~~}||}||}|}}|}|}|}|~}|}|}|}~}|}|}~|~}|}~}|~}~||}||}}|}~~}||{||{|{}|{|{|{|~}|{|{|}~}|{|}~|~}|}~{|~}~||{|||{|}~~}|z{z{||||{z{{{{{z{||{{{{}{||{{{{}{|{{{y{}{|||{{{|}|y{y{zz{{{{zz{{{{z{z|{z{z{z{|{z{z{|{|{z{|}{z|{|}|z{{|}|{z{zzzz{|}z|{{|{{{{|{z{{{{{|z|{{{{{{{|{{{{{|{|||{{z|}|{{yzz|{{{{zz{zz{z{zzzz{z{z{{z{zz{zz{zz{z{{z{zz|zz{zz}|{z{zzzz{z{zzzyyzz{y{z{{zz|{z{zyz{|{zzz{{{|{z{{{{{|{|||zy{|}|yzzzzzz{{{zz{{z{{z{|{z{z{z{|{z{z{{{|{z{|{{{|{|}|z{y|}|{z{yzzz{|}z|{{z{{z{z{z{z{z{|{{{z{{z|{{{{{{{|{||~z{{|}~{z{zzzz{{{~~{{z{{{{{|||{{{{}{||{{{{}{|{{{{{}{|||{y{|}|{{y{zz{{{{zz{{|{{{{{|{{{{{{|{|{{{|{|{|{|}{{|{|}|{{z|}|{{{zz|{{|}z|{}||{{{{z}|{{{{{}z|{{{{{z||{{{{{}|||{{{|}|{{{zzz{{{{|z}zz{{z{zzzz{{z{{z{zz{zz{zz{z{{z{zz|zz{zz}|{z{zzzz{z{zzzz{|}z{z{{z{z|{z{z{{|{z{z{{{|{z{{{{{z{|||z{z|}|{zzzzzz{{{zz{{|{{{{{|{|{{{{|{|{{{{{|{|{|{{{|{|}|{{{|}|{{{zz|{{|}z|{{z{{z{z~{z{z{z{{{{z{{{|{{{{{{z|{||~z{{|}~{z{zzzz{{{~~{{|{{{{{|{||{{{{}||{{{{}{|{{{{{}{|||{{{|}|{{z{z|{{{{zz{}||{{{{|}||{{{{|}|{{|{|{|||}{{|}|}|{{{|}|{{{zzz{{|}||}{z{{{{{|{{{{{{{|{{{{{{|z{{{{{{|{|||{{{|}|{{{z{z{{{{z{{{|}z{|{{{{{|{|{{{{{|{|{{{{|{|z{{{{|{|||{{{|}|{{zzz|{{{{zz{}||{{{{|}||{{{{|}||{{{|}|||{{{|}|}|{{{|}|{{{yzz{{|}||}}||{{{{|}||{{{{|}||{{{|}||{{{{|}|||{{{|}|{{{yzz{{{{|y}{|{{{{{~{|{{{{{~{|{{{{{{|{{{{{|{||~{{z|}~{{{zz|{{{{~~{}||{{{{|}||{{{{}}||{{{{}||{{{{}}|||{{{|}|{{{{zz{{{{|z}{z{{z{z|{z{z{z{|{{{z{|{|{{|}{{|{|}|z{z|}|{z{zzzz{|}z|{|}z}||{{{{z}||{{{{z}||{{{{z}||{{{z}z||{{{|}|{{{zzz{{{{|z}{z{{{{{|{||{{{{}{||{{|{}{|{|{{}{|}{{{{|}|{{{{zz{{|}z|{{|{{{{{|{|{{{{{|{|{{{{{|{|{{{{|{|||{{{|}|{{zzz|{{{{zz{}||{{{{|}||{{{{|}||{{{{|}||{{{|}|||{{{|}|{{{zzz{{{{|z}}||{{{{~}||{{{{~}||{{{{~}||{{{{}||~{{{|}~{{{zzz{{{{~~}{|{{{{{|{||{{{{}{||{{{{}{|{{{{{}|||{{{|}|{{{{||{{{{|z{}z{zz{{{{|{||{{{{}{||{{|{}{|{|{{{}{|{{{{|}|{{z||z{{|{z|{{z{{z{z~{z{z{z{~{z{z{|z~{z{|}{z~{|}z{z~}|{z{zzzz{|}~~{{z{{{{{|{||{{{{}{||{{{{}{|{{{{{}{|||{{|}|{{{{zz{{{{zy{{|{{{{{|{||{{{{}{||{{{{}{|{{{{{}{|||{{|}|{{{{z|{{{{zz{}||{{{{|}||{{{{}}||{{{{}}||{{{{}}|||{{|}|{{{{z|{{{{|y}}|~{{{{~}|~{{{{~}|~{{{{~}|~{{{{~}|~~{{{}~{{{{z{{{{{~~}}{z~~{~{~~|~{~{~~~|~{~|{~~|~|}~{~~|}~{~{~}~{~{zz{~|}~~{}||{|{|~}|||{|{~}|||{||~}|||}{|~}|}~|{|~}~|{||||{|}~~}}||{|{|~}|||{|{~}|||{||~}|||}{|~}|}~|{|~}~{{|||{{|}~~}}||{|{|~}|||{|{~}|||{||~}|||}{|~}|}~|{|~}~{|||||{|}~~}}|}}|}|~}|}|}|}~}|}|}||~}|}|}}|~}|}~|}|~}~}|}|||}|}~~}}|}}|}|~}|}|}|}~}|}|}||~}|}|}}|~}|}~|}|~}~}|}|||}|}~~}{{{z{{z{|||{||{|{|{|{|{|||{|{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|}}{}{}{}{}{}}}{}{}{{}}{}{|}z}}{|{{}{}|}}}z}z}zz}{|{|z|{{{{{|{{{{{z||{{{z{{||{{{|{{{|{|{{{{||}}{{zz{z{z{|{|z|}|||||}|z|||||}z||||||z|||||||}|{||||{}}||||{{|||{{}{}z|||{}z|{|{||}z|z|{{|}z|{{|{|}z|{{|{||}}|{|{||{|{{{}}{z{|}y|{{{{{|{{{{yz||{{yz{{||{{{|{{||{|{{{y||}}{yzz{zzz{|{|z~{||{|{{|{|{|||{|{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|{}}{}{}}{}{}}}{}{}{{}}{}{|}{}}{|{{}z}|}}}{}z}z{}{|{|z|{||{|{|{{|{|||z|{|{{||{|{||{||{|{{|{{|}}|{|z{z{|{|{|z|}||||||}||||||}z||||||z|||||||}|{|||||}}||||{{|||{{}{}{||{|{}{|{{||}{|{|{{|}{|{||{|}{|{{|{||}}|{|{||{|{|{}}z{|}y|{{{{{{|{{{{{||{{{z{{||{z{|{{||{|{{{{{|}}{{zz{z{z{|{|z|}||||||}||||||}|||||||}|||||||}|{|||||}}||||{{||||{}z~{||{|{~{|{|{||{|{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|{}}{}{}{}{}{}}}}{}{{}}{}{|}{}}{|{{}{}|}}}{}z}z{}{|{|z|}||||||}|||||||}||||||{|||||||}|{|||||}}||||{{||||{}{}{||{|{}{|{|{||}{||{{|}z|{||{|}{|{{|{||}}|{|{||{|{|{}}{|}z|{||{|{|{|{|{|||{|{|{||{|z||{||{|{{|{||}}|{|z{z{|{|{|z|{||{|{|{|{|{|||{|{|{||{|{||{||{|{{|{||}}|{|y{y{|{|{|{|}||||||}|||||||}||||||}|||||||}|{|||||}}||||{{||||{}z~{||{|{~{|{|{||~{|{|{{|{|{||{||{|{{|{||}~|{|{||{|{|{~~|}}}|}|}}}|}|}}}}}|}||}}}||}|}}}|{|}|}|}}}|}|}{|}||{}{}{||{|{}{|{|{||}{|{|{{|}{{||{|}{|{{|{||}}|{|{||{|{|{}}|}z}}|||||}}||||||}}||||||}}|||||}}{{|||||}}|||||||||{{}}|{{{{{{|{{{{{{||{{{{{{||{{{|{||{|{{{{||}}{{{z{z{{{|{|z|{||{|{|{|{|{|||{|{|{{||{|{||||{|{{|{||}}|{|z{z{|{|{|{|}||||||}|||||||}|||||||}||||||}|{|||||}}||||{{||||{}z~}|||||~}||||||~}||||||~}||||||}|{|||||}~||||||||||{~~}{}}{}{}{}{}{}}}{}{}{{}}{}{|}{}}|{{}{}|}}}{}{}|{}{|{}}}||{}}{}{}{}{}{}}}{}{}{{}}{}{|}{}}{|{}{}|}}}{}z}|{}{|{||}{}}{}{}{}{}{}}}{}{}{{}}{}{|}{}}{|{z{||}}}{}{}|{}{|{}}}{}}{}{}{}{}{}}}{}{}{{}}{}{|}{}}{|{{{||}}}{}{}|{}{|{}}}{}}{}{}{}{}{}}}{}{}{{}}{}{|}{}}{|{{}||}}}{}{}|{}{|{}}}}}}|}|}}}|}|}}}}}|}||}}}}||}|}}}|{|}||}}}|}|}||}||{}}~}}}|}|~}}|}|}}~}}|}||}~}}||}|}~}}||}|}}~}|}|}}|}|||~~}~~}}~}~~~}~}~}}~~}~}~~}~~}~|}~}~~|{~}~}~}}~}~}|~}~|{~~~}}||||~}}|||||~}}|||||~}}|||||~}}}||||~}~{|{|}||||}~~~}}||||~}}|||||~}}|||||~}}|||||~}}}||||~}~||{|}||||}~~~}}||||~}}|||||~}}|||||~}}|||||~}}}||||~}~||{|}||||}~~~}}||||~}}|||||~}}|||||~}}|||||~}}}||||~}~||||}||||}~~~}}|}|}~}}}|}||~}}}|}}|~}}}||}|~}}}}|}|~}~|}|}}}|}|}~~z{|{|{|{||{|{}}||{|{z||{|{||{||{|{{|{||{{|z|{|||{|{|z|}|z|z{|z{|{{|}~}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}|}|~|}|}|}|~z}|}{|}{|||{||||{{|{|||{|{||||{||{{|||||||{||||}{|{|||{|{|{|}z~|||}}~|}|}||}~|{|}}|}~|}{|}|}z||}|}|}~}|}|}||y}|}{|}z|}}||~|}|}|}}~|}|}||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{{{|}z|||{|{||{|{|||||{|{{||||{{|{|||||{|{|||}|{|{||~{|{{|}z~||{|{||{|{|||||{|{{||||{{|{|||||{|{|||}|{|{||z{|{{|}~}||}|}~}}|}||~}|}|}}|~}|}{|}|~}||}|}|~|}|}|}|~z}|}{|}{||{|{||||{|{|||{|{||||{||{{|||||||{||||}{|{|||{|{|{|}z~||}|}}~|}}||}~|{|}}|}~|}{|}|}|||}|}|}~}|}|}||z}|}{|}z|}}|}|~|}|}}}~|}|}||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{{|}z~||}|}}~|}|}|}~|}|}}|}~|}{|}|}~||}|}|}~}|}|}||{}|}{|}z|||{|{~||{|{||||{|{{||||{{|{|||||{|{|||}|{|{||~{|{{|}z~||{|{|~|{|{||||{|{{||||{{|{|||||{|{|||}|{|{||z{|{{|}~}||}|}~}|}|}||~}}|}}|~}|}{|}|~}||}|}|~|}|}|}|~{}|}{|}{~||}|}}~|}|}||}~||}}|}~|}{|}|}|||}|}|}~}|}|}||z}|}{|}z|}}|}|~|}|}|{}~|}|||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{|}z||{{{{|||{{{{||||{{{{{||{{{{|||||{{{|||}{{{{||z{{{{|}y~||}|}}~|}|}||}~|}|}}}~|}{|}|}~||}|}|}~}|}|}||{}|}{|}z|||{|{~||{|{||~||{|{{|||{{|{|||||{|{|||}|{|{||~{|{{|}z~||||||~|||||||~|||||||||{|||||||||||||}||||||z|||{|}~~||}|}~~|}|}||~~|}|}}|~~}{|}|~}||}|}|~~}|}|}|~z}|}{|}{|}}|}|~|}|}|}}~|}|}||}~|}}}|}~|}||}|}~|~}|}|}~~|}|}|~||}{||{|{|||||{|{|||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{||{|{|||||{|{|||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{~||}|}}~|}|}||}~|}|}}|}~|}{|}}~||}|}|}~}|}|}||{}|}{|}{||||||~|||||||~|||||||~|||{||||||||||||}||||||~|||{|}z~||}|}}~|}|}||}~|}|}}|}~|}{|}|}||}|}|}~}|}|}||z}|}{|}~}}}}}}~}}}}}}}~}}}}}}}~}}}{}}}~}|}}}}~|~}}}}}~~}}}}|~|}z}||}|}~}|}|}||~}|}|}}|~}|}{|}|~}|||{|z|}|}|}|~z}|}{|}y}||}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}{|||}|}|}|~z}|}{|}z}||}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}||||}|}|}|~z}|}{|}z~||}|}~~|}|}||~~|}|}}|~~|}{|}|~~||}|}}~}|}|}|~{}|}{|}z}||}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}|}||}|}|}|~~}|}{|}z~~~}~}~~~}~}~~~~~}~}}~~~~}~~}~~~~|}~}~~~~}~}~~~}~}~|~~}~}}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~|}|}|||}|}|~~~}}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}}|}|||}|}|~~~}}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}||}|||{|}|~~~}}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}|}}|||}|}|~~~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}|}}}}}~~}}}}||}}}{|~~~~~}~}~~~}~}~~~~~}~}}~~~~}~~}~~~~|}~}~~~~~}~}~~}~}~|~~{{{|}z{{|}z{|}z|}{}z}z||~|}|}|||||}|||}}||}}|}}}}|||}}}|||||}|||||||||||||||||||||||}~~~~}~~~~}}~~~~~~~}~~~~~}~}~~~}~}~}~~}~}~}~}~~}~}~}~}|}~~~||}|}}}~~~~}~~}}~~~~}}}}~~}}}}}}~|}}}}}}}}}}}}}}}|}~~~|}}||}|~~~~}~~|}~~~~|}|}~~|}|}|}~|}|}|}|}}|}|}|}|||||}|{||~|}{}|~|~}}|}~~}}|}|}}}|}|}||||}|}|}|{}|}|}|}||~~~|~|{~~}}~~~~~~}~~~~~}~}~~~}~}~}~~|~}~}~}|~}~}~}|}~|~~~~|~~~~~}}~~~~~~}~~~~~}~}~~~}~}~}~~|~}~}~}~~}~}~}~}||||}|||~~|}}~}|}~}}|}~~}}|}}}}}|}}}}|||}}}}}||}}}}}|}||~|}||||~|}}~}~}~}}|~~~}}|}|~}}|}|}|~||}|}|}||}|}|}|}{|~~}|~||~~||~}~~~}|~~~~}|~|~~}|~|~|~~|~|~|~|{~|~|~|||{|~}~}}||~}}|~~~~}~}}~~~~}}}}~~}}}}}}~}}}}}}}|}}}}}}|||}}}}}~}}}~~}}}~~}~}~~}}~~~}}}}}~}}}}}}|}}}}}}}}}}}}}}}}||~~~||||}}}}~~~}|~~}|}~~}|}|~~}|}|}|~||}|}|}||}|}|}|}{|||}|{|~}|||~}|||~}|||~}|||||}|||||||||||||||{|||||||{{~~}|~||~~{|~}~~~~}|~~~}|~{~~}|~|~|~~|~|~|~|{~{~|~|||{|~|~|}||~}}|~}~~}~}|}~~~|}}}~~|}}}}}~|}}}}}}|}}}}}}||{{|{~||||~|||~~|~|~}|{|~~~||||~|||||{||||||||{|||||||||}}}}}}~}}}~~}}|~~|~}~~}}|~~~}}}|~}}}}}}|}}}}}}}}}}}}}}}}||~|}||||~|}}~}~~|~}}|}~~}}|}~}}|}|}|~||}|}|}||}|}|}|}||~~~|||||}||~~|||~~||||~~||||~||||||~||||||||||||||||{|~|~|}||~}}|~}~~}~}|}~~~}|}}}~|}}}}}~|}}}}}}|}}}}}}{|{{|z}|{||||{{{}|||z}|{||{}||{{|}|{|{{|||{|{|{{{{|{|{|{||||~||||~||}~~|~|~}}||~~~}|}||~}}|}||||}|}|}||||}|}|}|}||}}}|~}}}~~}}|~~|~}~~}}}~~~}}|}}~}}}}}}}}}}}}}}}}}}}}}}||~|}||||||}}~}~}|~}}||}~}}|}|~}}|}||~||}|}|}||}|}|}|}||||}||||~|}|~}|~|~}||}~~}||}|}}||}|}|||}|}||||}|}||||{|~~~|{|||}{|~~|||~~||||~~|||||~||||||||||||||{|||||||{{|z}|{||||{{{}|||{}|{||{}||{{|}||{|{{||{|{|{{{{|{|{|{||||}||||}||}~}|||~}}|||~}}|}||}}|}|}|||}|}|}||||}|}|}{|||~||||~||||~|~|~}|||~~~|||||~|||||||||||||||||||||||}|||}}}|~}}}~~}}|~~|~}~~}}|~~~}}|}|~}}}}}}|}}}}}}}}}}}}}}}||~|}||||}|}}~}~}|~}}||}~}}|}|~}}|}|||~||}|}}||}|}|}|}||||}||||||||~}|||~}||||~}||||{}||||||||||||||||||||||{||{}|{||~|}|~}|~|~}||}~~}||}|}}||}|}||||}|}||{}|}||||||||}||||}||}~}|||~}}|||~}}|}||}}|}|}||||}|}|}|||}|}|}{|||}||||||{{|}|||{}||||{}||{||}||{||||||{|||{|||||{|{{{|{~|{||~|||~~|~|~}|{|~~~|||{|~|||{|{||||||||{{|||||||}||{|}}}|~}}}~~}}|~~|~}~~}}|~~~}}|}|~}}}}}}|}}}}|}}}}}}}}}}||~|}||||||}}~}~}|~}}|{}~}}|}|~}}|}|||~||}|}|}||}|}||}||||}||||}|||~}|||~}||||~}|||||}|||||{|||||||{||||||||{||{}||||||{|~}|||~}||||~}|||||}||||||{|||||||{|||||||zzz{||}}||{{||}|{z}||{}}|}{}}|||}}|||||}}||||{|}||||{|{||||{|{|||}~~}||||}}|~}~||~}|}~~}|}|}~~}|}|}|}}|}|}|}||}|}|}|}}}}~~}}}}}}}}~}~}}~}}}~~}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}|}}~~}|}}}||}~}~}}~}}}~~}}}}}~~}}}}}}}}}}}}}|}|}}}}|}|||{}}|||}|}|{|}|}|}}|{}}}|}}{}}}|}}}|{||}}}|}|||}}|}|}||{}}}||}|}|}|}|}|}}|{}}}|}}{}}}|}}}|{}|}}}|}|||}}|}|}||{~~}||}|}~}|}~}|~}|~~~}|~}~~~}|~}~|{}|~}~|}||~}~|}|}}}}}~~}|}}}}}~}~}}}~~}}~~~}~}}~~~}~}~}}}}~}~}~}|}}~}~}~||}}}|||}|}|}|}}||}}|}}}}|}}}}}}|}}}|}||}}}|}|||}}|}|}{{{|}}|{|{|{{{}}|{|}|{|}}|{{{|}}|{{{{{}|{{{{{{|{{{{{{{{{}~~}|{|{|||{}}~{{}|}~~}||{}~~}||{|{}}||{|{|{||{|{|{|{|{|}}|{||}{{{}}|}{}|{}}}|{}{}}}|{}{|{}|{}{{{||{}{{{{{|}|}|}}}|}}}}|}}}}|}}}}}}}}}}}|}}}}}}}}{}}}}}}}}||}}}}}}||}~~|||}|||}|~}|||~}|}~}|}|}~~}|}|}|}||}|}|}||||}|}|}zz}~~}{z{{{|{{|}~{{|}{}~}{|{}~~}{|{|z}}{|{|z{z{|{|z{z{z{{|}}|||}}{{|}}|}}}}|{}}|{}{|}}}{}{{{}}{}{|{{|{}{}{|{||}}}|{|}|||}|}}|||}}{}}}}}|}}}}|}|}|}||}|}|}||||}|}|}{}||||}}}||}|||}|}}|||}}||}}}|}|}}}|}|}||}|}|}|}||||}|}|}{|}{}||||{}||{}}|}{}||}}}|||}}}|||}||}|||}||||||}|||||||{~~|||}|||}|~}|||~}|{|~}|}|{~}|}|}|{||}|}|}||||}|}|}zz}~~}zz{{{|{{|}~{{|}{}~|}{|{}~}{|{|z}}{|{|z{zz|{|z{z{z{{||}||||}{z|}}|}|}||{}}||{}{}}|{}z{{}|{}z|z{|{}{|z|z||}}}}||}|||}|}}|||}}|}}}}|}|}}}}}|}|}}|}|}|}||||}|}|}{|{{}||||{|{{|}}|||}||{}}||{|{}}|||{|{||{|{|{||{|{|{|{{}{{|||}}}||}}||}|}}}}|}}|{}}}|}}|}}}|}}}|}|}}}}}|||}}}}|}{|}|}}|||{{||{}}||{}}|}}}}|||{}}}||||}}|||||||||||||||{|{{}||||{}{{|}}|}|}||{}}||{}{}}||{}{|||{}{|{||{}{|{|{z{{||}||||}{z|}}|}|}||{}}||{}{|}||{}z{{|{}z|z{|{}{|z|z||}}}|{|}|||}|}}{||}}{}}}}{}|}}}}{}|}|}|}|}|}||||}|}|}{|{|}}|||{|{{|}}|||}}|{|}||{|{|}}|{|{|{}||{|{||{|{|{|{z{{{||{{{{|{{{|}|{{||{{|||{{{{|||{{{{{{|{{{{{{{{{{z{{{{{{{{|||}}}||}|||}|}}|||}}|{}}}|}||}}}|}||||}|}|}}||||}|}|}{|}{}|{||{|||{}}||{}||}}}||||{}}|||||z}|||||||||||||||{|{||}|||{{{{|}}|{|}}|{|}}|{|{|}}|{|{|{}|{|{|{|{|{|{|{||}}}|{|}|||}|}}{||}}{}}}}{}|}}}}{}|}|}|{}|}|}|||}|}|}{|{{}||||{|{{|}}|||}||z|}||{|{|}||{|{|{||{|{|{|||{|{|{z{{||}|{{{{{{{|}|{{|}|{|}||{{{|}}{{{{{{}|{{{{{{|{{{{{{zz{z|{{z{{|{z{|}|{{||{{}||{z{{}||{{{z{{|{{{zzzz{{{zzzz{}{{zz|||}}}||}|||}|}}|||}}|{}}}|}||}}}|}||||}|}|}|}||||}||}{|}{}|{||{{||{}}||{}||}|}||||{|}|||||z}||||||{||||||||{|{{|||||{|{{|}}|{|}||{}}||{|{}}||{|{|{||{|{|{{|{|{|{|zyzz{{z{|||{{{{|z|zzz|{{{}}|{{}||||{}|||{{}|||{{{}|||{{{{|||{{{{{{||}~~}|||||||~}~||~}|}~|~}|||}~}|||||~}||||||}|||||||{}|}~~}}}|||}|~}~}|~}|}~|~}|}|}~}|}|}|~}|}|}|}}|}|}|}||}|}~~}}}|||}|~}~}|~}|}~|~}|}|}~}|}|}|~}|}|}|}}|}|}|}|{|{{||{||{{|{z{{||{}||||{}|||{{}|||{|{||||{|{|{||{|{|{{|{{||{||{{|{{|}||{}||||{}|||{{}|||{|{||||{|{|{||{|{|{{|{{||}||{{|{||}||{}}|||{}}||{{}}||{|{|}||{|{|}||{|{|{{|{{~~}||{{|{|{}~|{~}|~~{~}|~{{~}|~{|{~}|~{|{|}|~{|{|{}|~|}~~|~~}|||~|~}~|~~|}~|~~|~|}~~|~|~|~~|~|~|~||~|~|~|z{{{z{{{{{{|{{{|}|{|{|||{|{|{{{|{|{{{{|{|{{{{{{|{{{{{{z{{{|{}{{{{{{{{|}|{{}|||{|}||{{|}||{{{{}||{{{{}||{{{{{z{{{~~}{{{z{{{{|}~{{}||~{~}||{{~}||{{{~}||{{{{}||{{{{{z|{{|{|||{||{|{|}||{}|||{}|||{{}|||{|{||||{|{||||{|{|{{}{||{|}|||||||||}}|||}||||}||||{}||||||}|||||||||||||||{||}~~{||{{{{|{~}||{~||}{~||||}~||||||~|||||{|{||||{|{z{{{|z}{{zzz{{z{}|{z{}|||{}||{{{}||{{{{}||{{{{}||{{{{{z{{{~~{{{zz|{{z|}~{{|{||~{{|{{{~{|{{{{~{|{{{{{{|{{{{{{z|{{|{}||{{|{|{|}||{}}|||{}||{{}}||{|{}}||{|{|}||{|{|{{||}||{||{{{{|{|}||{||z}|{||||}|||||||||||||{|{||||{|{{}|{|{{||}||{{{{|{|}||{|}{||{|}||{|}||{|{|}||{|{|}||{|{|{{||}{|{||{{|{|{|}||{}||}{{}||||}||||||||||||{|{||||{|{y{z{~~{{{zzzz{z{}~{z{{z{~z{{{{z{{{{z{z~{{{z{z{{z{z{z{zz|{{z{|||{{|{|{|}||{}{|||{}{||{{}||{|{||||{|{||||{|{|{{||}||}||{{{{|{|}||{|}|}|{|||||}|}|||||}||||{|}||||{|{z{z{z{{{{{{{{{{|}|{{|{z|{{|{{{{{|{{{{z{{{{{{{{{{{{{{{{z{z{{|{{|||||{{|{|{|}||{||||}{||||{{||||{{||||{|{||||{|{|{{||}||}||{zz{|{|}||{|}|}|{|}|||{|}|||||}||||{|}||||{|{y{z{~~{{{zzzz{z{}~{z{{z{~z{{{{z{{{{{z{z{{{z{z{{z{z{z{zz|{{z{|||{{|{|{|{||{}{||{{}{||{{}{||{|{|||{|{||||{|{|{{||}||{||{{|{|{|}||{|||}|{|||||}||||||||||||{|{||||{|{z{{{|{}{{{{{{{{|}|{{|}|||{|{||{{|}{|{{{{}|{{{{}||{{{{{y{z{zz{{{zz{z{z{}|{z{{z|{z{{z{z{{{{zz{z{{{{{z{{z{z{z{zz{z{z{|{{|||||{{{{|{|}z|{||{{|{||{|z{||{|{z{||{|{|||{|{|{|{{||}{|{||{z|{|{|}||{|||}|{|||||{||||||{||||||{{||||{|{z|{{z{|||{{|{|{|{||{}{||{{}{||{{}{||{|{|{||{|{|||{|{|{{||}||{||{{{{|{|}z|{||z}|{||z||}||z||||||z|||{|{|||{|{z{{{z{{{{{{|{{{|}|{{|{|||{|{|{{{|{|{{{{|{{{{{{{{|{{{{{z{{{|z}{{zzz{{{{}|{{{}|||{{{||{{{}z|{{{{}|z{{{{}||{{{{y{z{zz{{{zz{z{z{}|{z{{z|{z{{z{z{{{{zz{z{{{{z{z{{z{zz{zz{z{z{{|{{|||||{{{{|{|}{|{||{{|{||{|z{||{|{z{||{|{|{||{|{|{{{||}{|{||{zz{|z|}{|z|||}zz|||||z||||||z||||||{z{||||{|zyzz|{|{||{|{}}{{{|{|zzz{{{{{||}}{{||||{{||||{|||||{{{|||{{{{|||{{{{{{|||}~~|{|}||||~}~|||~}}}||~}}|||~}}|||~}}||||~}}|||||{|||}~~|||}||||~}~|||~}}}||~}}|||~}}|||~}}||||~}}|||||||}|}~~||}}}|}|~}~|}|~}}}}|~}}}||~}}}|}~}}}|}|~}}}|}|}z}{|{}}}}|}|{z{{{}}{}}{|{{}}{}{|}}{}{}{}{}{}{}}{}{}{}{z}{|{}}}}|}|{{||}}}{}}{|{{}}{}{|}}{}{}{}{}{}{}}{}{}{}{z}{|{}}}}|}|{}||}}}{}}{|{{}}{}{|}}{}{}{}{}{}{}}{}{}{}{{}||{}}}}|}||}||}}}|}}}|{|}}}}||}}}}|}|}}}|}|}}}}|}|}|{}|||~~}}|}}|}|}}~}|}~}}||}~}}||}~}}|}|~}}|}|}~}}|}|}|}|}~||~~}}~}|~}~}~}}~}~~|{~}~~}~|}~~}~}~~~}~}~}~~}~}~}~z{{|{|z{{{{{{{{||}}{||{|{{||{{{|||{{{{{|{{{{{{|{{{{{{{z|{|{|{||{{{{|{||}}|||{|{{||{|{|||{|{|{|{|{|{||{|{|{|{{|||{}z|||{{|||||}}|||}|{|||}|||||}|||||}||||||}||||||{|||{~~||||||||||}~|||}|{||~}||||~}||||~}|||||~}||||||z}{|{}}}}|}|{}{}|}}}{}}|{{}}{}{|}}{}{}{}{}{}{}}{}{}{}{|}z}{|{||}}|}|{}{}|}}}{}}{|{}}{}{|}}{}{}{}{}{}{}|{}{}{}{z|{|{|{||z{{{|z||}}|z||{|{||{|{|||{|{|{|{|{|{||{|{|{|{{||z{}z|||{{|||{{}}||{|}|{|{}|||||}|||||}||||||}||||||z|{|{~~||{||{|{||}~|{||{|{{|{|{||~{|{|{~{|{|{|~{|{|{|{{}||{}{}}|}{|}|}|}}}|}}}|{|}}}||}}}}|}|}}}|}|}|}}|}|}|z|{|{}}|||||{|{||}}|{|}{|{{|}{{||}{|{|{}{|{|{|}{|{|{|{{}|{||{{}}||||||||||}}|||}}{{||}}|||}}||||}}|||||}}||||||{||z{}z|||{{|||{{}}||{|}|{|{|}|||{}|||||}||||||}||||||z|{|{~~||{||{|{||}~|{||{|{{||{|{||{|{|{~{|{|{|~{|{|{|{z}{|{|{}}|}{{}{}|}}}{}}{|{{}}{}{|}}}{}{}{}{}{}|{}{}{}{{||{{}{|||{{||||{}}||||}|{|||{|||||}||||}||||||}||||||z|{{{}}||{||{|{||}}|{|}z|{{|}{|{{|}{||{}{|{|{|}z|{|{|{{}|{z|{|{|{|||{{{|{||}}|{||{|{{||{|{|||{|{||{|{|{||{|{|{|{z|{{{~~||{||{|{|{{~|{||{|{{||{|{{||{|{|{{|{|{|~{|{|{|{z}{|{|{}}|}{{}{}|}}}{}}{|{{}}{}{|}}{}{}{}}{}{}|{}{}{}{z|{|{|z|||{{{|{||}}|{||{|{{||{|{|||{|{|{|{{|{||{|{|{|{{||{{}{|||{{|||||}}||||}|{|||z|||||}z||||}|||||}||||||z|{{{}}||{||{|{||}}|{|}z|{{|}{|{{|}{|z|{}{|{{|}z|{|{|{{{{{zz{{|{|{{{|{{{{{{|}}{{||{|{{||{{{|||{{{{{|{{{{{|{{{{{{{z|{{{~~||{||{|{|{{~|{||{|{{||{|{{||{|{|{|{|{|{|{|{|{|{z}{|{|{}}|}{{}{}|{}}{}}z|{{}}z}{|}}z}{}{}z}{}{}|}{}{}{z{{|{|z{{|{{{{{||}}{{{|{|{{||{{{|||{{{{{|{{{{{{|{{{{{{z|{|{|z||z{{{|{{|}}|{||{|{{||{|{|||z|{|{|{{{|{||{||{|{{||{{}{|||{{||||{}}||||}|{|||z|||||}z||||}|z||||}|||||z|{{{}}||{||{|{||}}|{|}z|{{|}{|{{|}{|z|{}{|{|{|}z|{||{{{{{z{z{z{{|{{{|{{z{z{|}|{z{|{{{z{|{{{z{|{{{{z|{{{{zz|{{{{z{{z{z}z{{|}z{|}z|}{}z}{{{{|}z{{||y{{{|||}{{{||||{||||{{||||{{{|||{{{{||{{{{{{{|}|~~}|}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|{}|}|~~}}}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}||}}{|~~}}}||}}}}}~~}}}}~}|}}}~}}}}}~}}}}}~}}}}}~}}}}}}{~}~|~~~~}~~}~}~~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}{|}{{}z||}|~z|z|{|}|}|~}|{}|~}|}{|~}|}|}~}|}|}|}|}|}|}{|}{|}z||}|~z}{|||}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}{|}{|}z||}|~z}||||}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}{|}{|}z||}|~{}|}}~}|}|~~||}|~~|}{|~~|}|}~~|}|}|~|}|}|}{|}{|}z||}|~~}|}||}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}{~}~|~~~~}~~~}~}~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}}{{|{|}{{{|||z|{||||}{{{|||||||||{|||||{|||||{|{|||{|{|{{|{|}{{{|||z|{||||}{{{|||||||||{|||||{|||||{|{|||{|{|{|}{|}{||}||{}|}|}~}|}}~||}|}~|}{|}~|}|}}~|}|}|~|}|}|}{||{|}{|||||~||||||}||||||||~|||{|~|||||~|||||||||||||{|}{|}~||}||{}|}|}~}|}|}||}|}~|}{|}~|}|}}~|}|}|~|}|}|}|}}}|~|}}}}~~}}}}~|~}}}~}|}}~}}}{}~}}}}}~}}}}}}}}}}}}}{}z{{{|}y{{{||z{{{|||}{{|||||{{||{{||||{{{|||{{{{||{{{{{{|}{|}z||}||{}|}|}~}|}|}~||}}~|}{|}~|}|}}~|}|}|~|}|}|}z|{{|}z||{||~{|{|||}|{|||||{|||{{|~||{|{~||{|{|||{|{|{{||{|}~|||||{||||||}||||||||||||{||~|||||~|||||~||||||{|}{|}{||}|~z}|}|~~}|}|~}||}|~~}{|~~|}|}~~|}|}|~|}|}|}{}|}|~|}}|}~~|}|}~|~}|}~|}||}~|}}}~|}|}|~|}|}|}|}|}|}|{}|{|}{|}z||}||{}|}|}~}|}|}~||}|}~|}{}~|}|}}~|}|}|~|}|}|}z|{{|}z||{||~{|{|||}|{||z{|{||{|z{|{|z|{~{|{|{|z|{|{|{z|{{|}~||{||{{|{|||}|{|||||{||||{{|||{|{|~|{|{|~|{|{|{{|}{|}{||}|~{}|}|~|}|}|~}||}|~}|}{|~}}|}~}|}|}|}|}|}|}z|}{|}z||}||z}|}|}~}|}|}z||}|}~|}{|}~||}}~|}|}|~|}|}|}{}|}|~|}}|}~~|}|}~|~}|}~|}||}~|}|}}~|}||~|}|}|{|}|}|}|z}|{z|{{|}z||{||~{|{||z}|{||z{|{||{|z{||{|{|{{|z|z|z|{|{|{z|{{|}~||{||{{|{|||}|{|||||{||||{{||||{|{||{|{|~|{|{|{{|}{|}{||}|~z}|}|~|}|}|~}||}|~}|}{|~}|}|}~}}|}|}|}|}|}{{|{|}z{{|||{|{||||}{|||||||||{||{|||{|{||||{|{|||{|{|z|}{|}z||}||z}|}|}~}|}|}z||}|}~|}{|}~|{|}}~|}}|~|}|}|}{}|}|~|}}|}~~|}|}~|~}|}~|}||}~|}|}}~|}|}|~|}|}}|}|}|}|z}|{{z|{{|}~||{||{{|{||z}|{||z||{||{|z{||{|{|{|{|{|z||z|z|{{|}{|}{||}|~z}|}|~|}|}|~}||}|~}|}{|~}|}|}~}|}|}|}}|}|}z{{{|}z{{{||z{{{|||}{{|||||{||||{{||{|{{{||{{{{{||{{{{{{|{|}z{{|||{|{||||}{|||||||||{||{|||{|{||||{{|{||||{|z|}{|}z||}||z}|}|}~}|}|}z||}|}~|}{|}~|{|}}~|}|}|~|}||}{}|}|~|}}|}~~|}|}~|~}|}~|}||}~|}|}}~|}|}|~|}|}|}|}|}||z}|{{{z{~{zz|z}{|zzz}|zz~{{|{~{{{{|~{{|z{{{{|{{z{{z|z{z{z{||~||||{~|||zz}}|z~|{|}~|||||~|||||||||||||||||||||||}~|{|~|}|~}|~~~||~}}~~~}|~}~~}|~|~}||~|~|~}{~|~|~|}{}|}|{~||||{||}|||~|}||~||{}|~||||{}||||{|{}|||{|{{{||}}||||}{|}|}}}||~}|}}~}|}|}~}|}|}|||}|}|}||||}|}|}z||}|z|z}{z{yy|{{z||{|{}|{{||}||{z{||{{{{{{|zz{{{{{{}|}{||||}}|{|||}||||~{||}}|~|}}|}|~}}|}|}|||}|}|}|{||}|}|}||}}|{|||~||}|~{||}}|~|}}|}|~}}|}|}|||}|}|}|{||}|}|}}}~~}|}~}}}}~}~}}}~~}~}~~}~}~~~}~}~}}}~}~}~}|}}~}~}~|}}}|{|~|}||}|}}||}}}~|}}|}}~}}|}|}}||}|}|}}{||}|}|}||}}|{|||}||}|}|||}}|~|}}|}|~}}|}|}|||}|}|}|{||}|}|}|||}||||{~|||{}|}|}|{|}}|||||}||||||||||||||||||||||||~~}|||{~|||{}~}|{}{~}~}|||~~}|||||}|||||||||||||||}|}~~}|}}}~}}}}~~}}}~}~}~}}}|~~}}}}}|}}}}}}}||}}}}}}}||~~|||||}||}|~|}||~}|}~}|}|~~}|}|}|||}|}|}||||}|}|}|}|}|||~{}||||}|}||}|}|}|||}|}|||||}|||||||}||||||||z|~~}{{|{}||{{z~}||}}{~}}{||~~}||{||}||||{||{|||||{{z}|~|{|~|~|{{||~|||}|}~{~|{}~~||{|{}||{|{|{}{{|{|{|{}}||~~|}}}}}}||}~~}}}~|}~}~|}|~~|}|}|||}|}|}||}|}|}|}||}}}|||~|~||}|}}}||}}}}}}}|}}}}|}|}}||}|}|}}|||}|}|}||~~|{|||}||}|~}|||~}||{~}|}|~}|}|}|||}|}|}|{||}|}|}z|~~}z{|{}{|{{z~}{z}}{~}}}{||~}{|z||}{|{|{||z|{|{|{{z}|}|{|~|}|{{|||{{|}{}|{}{|{}|}|{|{}||{|{|{}{{|{|{|{||}~|||||~||}|}~}||}}{~}~}{}|~~}}|}|||}|}|}||||}|}|}||{||~~||}}}}}||}~~}}}~||~}~|}||~~|}||||}|}||||||}|}||||}}}|{|~|}||}|}~|||}}}~{}}|}|~}}|}|}||}|}|}}{||}|}|}|||}||||{~||||}|}||}|{{}}||||{}|||||||||||||||||||||z}{}|{|~|}|{z|||{{|}{}|{}{|{}|}||{|{}|{|{|{}{z|{|{|{||}}|||||}||}|}|}||}}{}}}}{}|}}}|}|}||}|}|}||||}|}|}{|{~|{{|{~|{{||~{||}|{~|~|{{|~~||{|{||||{|{|{{|{|{{{||{{||~~||}}}}}||}~~}}}~||~}~|}{|~~|}|}|||}|}}||||}|}|}||}}}|{|~|}||}|}||||}}}}{}}|}|}}}|}|{}||}|}}}{||}|}|}{|{}|{{|{||{{||~{||}|{~|}|{{|~}||{|{|||{|{||{{|{|{{{|||}||||{~|||{}|}|z}|{|}}||||{}|||||||||||||||||||||||}}|||||}||}|}|}||}}{}}}}{}|}}}|}|}||{}|}|}|||}|}|}{||}|{{|{}|{{||}{||}|{||}|{{||}||{|{|||{|{|{|{|{|{{{{|{~|{{|{~{{{{|~|{z}|{~|~|{{|~~||{z{||{{{{{{|{{{{{{{|{{{{||~~||}}}}}||}~~}}}~||~}~|}{|~~|}|}|||}|}{}||||}||}||}}}|{|~||||}|}||||}}}}{}}|}|}}}|}|{}||}|}{}}{||}||}{||}|{{|{}{{{|||{{|}|{||}|{{||}||{|{||{{|{|{|{{|{|{{{|{}|{{|z||z{{|~{||}{{~{}{{{|~}||{{{|||{|{{{|{{|{|{{zyz{zy{yy{zyyyyz{zz||z{z|{zzz|{zzzzz{{zzzzzzzzzzzzzz{{{{{zz{z{{{z{{|{z{||z|{|{{{{|{{z{z{{{{z{z{z{{z{z{z{{{{{{{|zz|{{|{y{{|{||{{{|{{{{|{{{{{z{{{{{{{{{{{{{{{{{|{{|{}{{|{{{{{{|{{|{{{{||{|{||{|{|{||{|{{{||{|{{{{{z{{{|{{||{{z{z||{{z||{{|||z{{||{{{{{|||{{{z{{{{|{z{zzzzz{|{yy}zzyzy{{zz|{z{z||zzz||zzzzz{|zzzzzz|zzzzzzz{}{|{{{{|{{}|||{{||{{{|||{||||||{|||{||{|||{|{|{{{{|{|{|{{{{|{{}|||{|||{{{|||{||||||{|||{||{|||{|{|{{{{|{|{|{{{||{{}|||{|{|{{{|||{||||||{|||{||{|||{|{|{{{{|{|{||}|}}|}}|||||}|}|}|}}|}|}}|}|}}|}|}|}}|}|}|}||}|}|}||{{|||{}|||{|{|||{||||}|||||||||{||||||{|{|{||{|{|{|{{{{{{{|{z|{{|{{{{z|{z{{|{{{{|{{{{{z{{{{{{{{{{{{{{{{{{{{{{{|{z|{{|{{{{||{z{{|{{{{|{{{{{z{{{{{{{{{{{{{{{{{{{{||{|{z}{{|{{{||{|{{{||{{{||{{{{z||{{{{{{|{{{{{{{|||||}||}}|}|||}}}}||}|}|}||||}||||||}|||||||||||||||{{{{|{{}{{|{{|{{{{|{|{{{|{{|{||{{{|{||{{{{{{{{{{{{{{{z{{{{z{{z{{{z{z|{z{|{z||{zz{|{{z{z{{{{z{z{z{{z{z{z{{z{{|{z{{z}{{z{z|{z{||{|{|z{{||{{{z{||{{{z{z{{{{z{z{{z{{|{z{{||||z{||{{||{{|||{{{|||z{z{|||{|z{z{{{|{|z{{{{{||}|{|}|}|||||}{||}||||}|||}||{|{|}||{|{|{||{|{|{|{{{{{|{}{{|{{|{{|||{||{|{||{|||{{{|{{|{{{{{{|{{{{{{{zzzz|{z{zz}zzzzz{{zz||{{z||zzz|zzzzz||zzzzzz{zzzzzzzzzz{|{z{z||{zzz|{{zz|{{{||{zzz|{zzzz|||zzzzz{{{|zzzz{{{{{{{}{{|{{|{{{{|{|{z{{|{z|{|{{{|{{{{{{{{{{{{{{{{{{{{{{|{}|{|}|}|{|{||||{}|{||}|{{|}|||{|}|||{{{{||||{{{{{{{{{{{}{{{{{{{{|{{{||{|{|{{|{||{{{{{|{{{{{{{{{{{{{{{{{z{{{|{z|{{|{{{{|{|{z{{|{{{{|{{{{{{{{{{{{{{{{{{{{{zzzz|{z{zz}zzzzz{{zz||{{z||zzz||zzzzz|zzzzzz{zzzzzzzzzz{|{z{z||{zzz|{{zz|{{{||{zzz|{{zzzz||zzzzz{{z|zzzz{{{{{{{}{{|{{|{{{{|{|{z{{|{z|{|{z{{|{{{{{{{{{{{{{{{{{{{z{{{{{z|{{{{z|{{{|{z|{|{{{{|{{z{{{{{{{{{{{{{{{{{{{{zz{{|{}|{|}|}|{|{||{|{}|{||}|{z|}||{z{|}||{{{{||{|{{{{{{{{{{{}{{|{{{{{{{{{||{{{|{{|z||{{{z{{|{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|{{{|{z|{|{{{{|{{{{{{{{{{{{{{{{{{{{{zzz{|{z{z||{zzz|{{zz|{{{||{zzz|{{zzzz|{|zzzzz{z|zzzz{{{{{{{}{{|{{|{{{{|{|{z{{|{z|{|{z{{|{{{z{{{{{{{{{{{{{{{{{{{{{z{{{{{z|{{{|{z|{|{{z{|{{z{{{{{{z{{{{{{{{{{{yzzz{{z{zz|zzzzz{{zz{{zzz|{z{z|{zzzzz{{zzzzzz{zzzzzz{zzzz{{|{}|{|}|}|{|{||{|{}|{||}|{z|}||{z{|}||{{z{{||{|{{{{{{{{{{}{{{{{{{{{{{{||{{{|{{|z||{{{z{{|{{{{z{{{{{{{{z{z{{{{{zz|zz{zz{{{z|{z{z|{z{{|{z{{{z{{z{{{zz{z{{{z{zyzyzyzzzzzyyyyzzzyz{z{yz{zzyzz{zzyzy{zzyzyzzzzyzyzyyzz|{zyz{z{zzzyz|zzz{{{zz{{zzzz{{zzzz{{zzzzz{{zzzzzzy{z|{{{z{zzz{z{{|{z{{z{z{{z{zz{{z{z{z{z{z{z{{z{z{z{zz{{|{z{{{|{zzz{z|zz{|{|{{|{{{{{|{zz{{|{{zzz{{zz{zzzz{zz{|z|{|{{{z{|z{z{||||{||{{{{||{z{{{|{{{z{z{{z{z{z{yzyzyzzyzzzyyyyzzzyz{z{yz{zzyzz{zzyzy{zzyzyzzzzyzyzyz{{{{{z{|{{|{||{{z{{|{{||{|{||{{{{||{{{{{|{{{{{{{{{{{{{{{{z{|{z|{||{{z{{|{{||{|{||{{{{||{{{{{|{{{{{{{{{{{{{{{{z{|{{|{||{{{{{|{{||{|{||{{{{||{{{{{|{{{{{{{{{{{{{{{zz{|{{|{||{{{{{|{{||{|{||{|{{||{|{{{|{|{{{{{{|{{{{{{|{||{||}||{{|{|{|{||{|{||{||{||{|||{|{|||{|{{|||{|{z{{z|{{{{{{{z{z{{|zz{{{{{{{{{z{{{{z{{{{{z{z{{{{{{z{zz{{z|{{{{{{{z{z{{|{z{{{{{{{{{z{{{{z{{{{{z{z{{{{{{z{zz{{z|{{{{{{{z{z{{|{z{{{{{{{{{z{{{{z{{{{{z{z{{{{{{z{zz{{{|{{{{|||{{{{{|{{{{|{{|{{{{{|{{{{{|{{{{{{{{{{{{{{{{{{{||{||||||{|}{|{|||{||||{{{|||{|{{||{|{|{|{{|{|{|yzyzz{zzzzzzzzz{z{zzz{z{z{zzyzz{zzzzy{zzzzzz{zzzzzzzyzyz|{zzz{zzzzz{z|zzz{z{z{{zyzz{{zzzy{{zzzzz{zzzzzzzyzz{|{zzz||{zzz{z|zzz{{|zz{zz{z|{zzzz|{zzzzz{{zzzzzzy{z{|{{{z{{{z{z{{|{z{{{{z{|{z{{|{{z{z|{{z{z{{{{z{z{z{{z{{{|{{{{{{{z{z{{|{z{|{{{{|{{{{|{{z{{|{{z{z{{{{{{z{z{{{{|{z|{||{{z{|{{z{||{{{||{{{||{z{{{|{z{z{{{{z{z{z{yzyz|{zzz{zzyzyzz|zyz{z{yz{{zyz{{zyzy{{zzzyz{zzzzyzyyzz{z{zzz||{zzzzz{zzz{{|zz{{zz{z{zzzz|{zzzzz{{zzzzzzy{zz|{{{z{{{z{z{{|{z{{z{z{{{{yz{|{z{y|{{z{z{{{{z{z{z{{{{|{z|{{{{{z{|{{z{|{{{{|{{z{{|{{{{{{{z{z{{{{z{z{z{{z{z{{{|{z{{{{{zzz{{|zz{{{{{{{{{{{{|{z{{|{z{zz{{{z{zzzz{{z{|{{|{{{z{{{|{|{{|{{{{|{{{{z|{{{{{{{{{{{{{{{{{{{{yzz{z{zzz||{zyzzz{zzz{{|zz{{zz{z{{zzzz{zzzzz{{zzzzzzy{zz|{{{z{{{z{z{{|{z{{z{z{{z{yz{|z{z{y|{z{z{{{{z{z{z{{{{|{z|{{{{{z{|{|z{|{{{{|{{z{{|{{z{{{{{{z{{{{z{z{z{yzzzz{zzz{z{zzz{z{zzz{{{zz{zzzzz{{zzzz{{zzzz{{zzzzzz{zzzz{{{z{z{{{{{zzz{{{zz{{{{{{{{{y{{|{zzz{|{zzz{{{z{zzzz{zz{|{z|{{{{{z{|z|z{|{{{{|{{{{z|{{z{{z{{z{z{{{z{z{z{yzz{z{zzz||{zyzzz{yzz{{|zz{{zz{z{{zzzz{{zzzzz{zzzzzzy{zz|{{{z{{{z{z{{|{z{{z{z{{z{yz{|z{z{y|z{z{z{{{z{z{z{{{{|{z|{{{{{z{|{{z{|{{{{|{{z{{|{{z{{{{{z{z{{{{{z{z{yzyz|{zzz{zzzzz{z|zzz{z{zz{{zyzz{zzyzy{{zyzyz{zzzzzyyyzzzzyyz{z{zyzzz{yzzz{{zz{zzzzz{{zzyz{{zzyzyz{zzzyz{zzzzz{{zz{z{{{{{zzz{{{zz{{{{{{{{{yz{|{zzz{|{zzzy{{{z{zzz{zz{|{z|{z{z{z{|z{z{|{{{{|{{{{z|{{z{{y{{z{z{z{{z{z{zzyzzyy{z{yzyyyzzyzz{zz|zz{zzzz{{zzzzzzzzzzzzzzzzzzzzyzzzyzyz{zzzzzzzyzz{zz|{z{zz{z{{zz{zzzzz{zzzzz{zzzzzy{zzy{{z{zzz{z{zy{z{{{|zz{{{{z{{{{{z{z{{{z{z{{{z{z{zzzz{{z{{{{{{z{||{z{{|{|{{{||{z{{||{{zz||{{z{z{{{z{z{y{z|y{{z|{{z{z{{y{z{{{|{z{{||z|{{||z{zz||z{z{{|z{z{zyzyzzy{z{yyzyyzzyzz{zz{zz{zzzzz{zzzzzzzz{zzzzzzzzzzzz{{{{{z{z{{y{{z|{{{z{zz{z{z{|{z{z{{z{{z{{z{zz{{z{z{{{z{z{zz{z{{z{{z|{{zz{zz{z{z{|{z{z{{z{{z{{z{zz{{z{z{{{z{z{zz{z{{z{{z|{{z{{zz{z{z{|{z{z{{z{{z{{z{zz{{z{z{{{z{z{zz{z{{z{{z|{{z{zzz{z{z{|{z{z|{z{{z|{z{zz|{z{z{{{z{z{zz|z{{z||z|{{{|{|{|{|{{|{{|{||{{|{||{|{{||{|{|{|{|{|{zzz{{{z{{|zz{z{||{z{zz{{{{|{{z{{|{{{zz|{{{z{zz{{z{z{zzz{{{z{{|zz{z{||{z{zz|{{{|{{z{{|{{{zz|{{{z{zz{{z{z{zzz{{{z{{|{{{z{||{z{z{{{{{||{z{{||{{zz||{{z{z{{{z{z{z{z{{{{{{|zz{{{||{{{{{{{{{|{{z{{|{{{{z|{{{{{{{{{{{{{z|{{{{||{|{{{|{||{|{|||{{||{|z{||{|{|z|{|{|{|{|{|{|{{z{{|{{{{{|{{{{{||{{{||{|{||{{{|||{{{{{|{{{{{{{{{{{{{yzz{zyz{z{zzzzzzzyzz{zz|z{zzzz{{zz{zzzzz{zzzzzzzzzzzyzzzzyz{z{{{zzzzzyzz{z{{zzz|{zz{z|{zzzz|{zzzz{{zzzzzy{zz{y{{z{zzz{z{zy{z{z{{{z{{{zz{{{{z{zz{{z{z{{{z{z{zy{z{{z{{z{{{z{z{{y{z{{{|{z{{{z{{{|{z{z{|{z{z{{{z{z{zzzz{{{{{{|zz{{{||{{{{|z|{{{|{z{{|{{{zz|{{{{{z{{{{{{{{{zzz{{{z{{|{{{z{||{z{{|{{{{{||{z{||{{zz||{{z{z{{{z{z{yzzzzyz{z{{{zzzzzyzz{z{{{z{z|{zzz|{zzzz|{zzzz{{zzzzzy{zz{y{{z{zzz{z{zy{z{z{{{z{z{{zz{{{z{zz{{z{z{{{z{z{zyzzz{zz{z{{{zzz{{yzz{{z{{z{{z{zz{{{zzz{{{zzzz{{zzzzzz{z{{{{{{{{{{{{||{{{{|{|{{{|{{z{{||{{z||{{{{{{{{{{{{yzz{{z{{z|zzz{z{{z{z{{z|{z{{z{z{{{{{zz{{{z{zz{{z{z{z{{{y{z{zz{{z|zzz{z{{y{z{{z{{z{{{{zz{{{{z{{{{z{z{{{z{z{zy{zz{y{{z{zzz{z{zy{z{z{{{z{z{{zz{z{{z{z{{z{z{{{z{z{zyzzz{zz{z{{{zzz{{yzz{{z{{z{{z{zz{{z{zzz{{zzzz{{zzzzzzzzz{{z{{{zy{z{||{z{{|z{{{{|{{zz{|{{{zz|{{z{zz{{z{z{y{z{zz{{z|{{z{z{zy{z{z{|zz{zz{z{{z|{z{zz|{{z{{{z{z{zyzz{{z{{z|zzz{z{{z{z{{z|{z{{{{z{{{{{zzz{{{zzz{{z{zzz{{zzyzz{zzz{z|zzzzzzzyzz{zz{{z{zz{zz{zz{zzzzz{zzzz{zzzzzyzzz{zz{z{{{zzz{{yzz{{z{{z{{z{zz{{z{zzz{z{zzzz{zzzzzzzzz{{z{{{zy{z{||{z{{|z{{{{|{zzz{|{{{zz|{{{z{zz{z{z{yzz{zyz{z|zzzzzzzyzz{zz{zz{zz{z{{zz{zzzzz{zzzzz{zzzzy{z{zy{{z{{{z{z{zy{z{z{|{z{zz{z{{z|{z{zz|{z{z{{{zz{zyzz{{z{{z|zzz{z{{z{z{{z|{z{{z{z{{{z{zzz{z{z{zzz{z{{z{{zzzyzz{zyz{z|zzzzzzzyzz{zz{zz{zz{zz{zz{zzzzz{zzzzz{zzzzzyzz|z{zz{}zy{yz{||{y{{|{zy{{|{z{z{|{yzz{|{z{yz|{y{y{yz{|{}z{z{|}z{{{z{||{{{{|{{{{{|{z|{{||{z{{||{{{z||{{{{{z||{}{||z|}z{|{|{|||{|{|{{{|{||z||{||{|{{||{|{|||{|{|{{||{}}|||{}|||||}|}|||}}|{||}}||{|}}||||}}|||||}||||||y}{|}|}}{|}|{}{}{||}{}{}}{{}{}}z|}{}}{}{{}}{}{}|}{}{}{z}~|{~}}~|}|~}~}~~~}~}~~}{~}~~}~|}~~}~}~~~}~}~}~}~}~}~yz{|{}zz{|}z{y{{{||z{z{|{{{{{||y|{{|z{z{{||{zyz||{z{z{{|}z|}z}|}z|{{{}}||{|}||z|z|}|{|z}|{{|z}|{{|z}|{|{z}|{|{|}|{|{|{z|{|{}}||{|}|{{|{|}|{|{}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{z|{|{}}||{|}|{||{|}|{|z}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{z|{|{}}||{|}|{|{{|}|{|{}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{z}{|{}}}}{|}|{}{}|}}{}{}}{{}{}}{|}{}}{}{{}}{}{}}}{}{}{{}|||~~}}|}}}|}|}}~}|}}~}||}}~}||}}~}|}|}~}|}|}~}|}|}|{|||{}{||||}{||||}{}zzz|{{||}|||{|}|||||}|||||||||||||{|||{}{||||}{||||}|}|zz|{{||}|||{|}|||||}|||||||||||||{|||{}{||||}{||||}|}||{|{{||}|||||}|||||}|||||||||||||{}||{}{}}||}{|}|}}|}}|}}}{|}}}}||}}}}|}|}}}|}|}|}|}|}|{|||{~~||||}|||||}|~|||}|{||}~||||}~||||}~|||||~||||||||}|}~~||}}}}}|}}}~~|}}}~}}}}~|}|}}~|}|}}~|}|}|~|}|}|}}z|{|{}z||{|}z{|{|{|||{|{|{{zz|{y||{||{|{{||{|{|||{|{|{z|{|{}z||{|}z{|{|{|||{|{|{{{z|{z||{||{|{{||{|{|||{|{|{z}{|{}z}}{|}z{}{}{||}{}{}}{{}}}z|}{}}{}{{}}{}{}|}{}{}{z|{|{~~||{|}|{|{|{|~|{|{||{{|{|{||{~|{|{{~|{|{|~|{|{|{{}||{}}}}||}||}|}}|}}|}}}}{|}}}||}}}}|}|}}}|}|}}}|}|}|{|||}~~|||}}}|||}}~~||}}~|}|}}~||}}~||||}~|||||~||||||}{zz{|{}z{z{|}z{{{{{||{{{{|{{{{{||z|{|{{z{{||{{{z||{{{{{z}{|{}z}}{|}z{}{}{||}{}{}}{{}{}}z|}}}z}{{}}{}{}|}{}{}{z|{|{~~||{|}|{|{|{|~|{|{||{{|{||{||{|{|{{~|{|{|~|{|{|{{|||{}z||||}{||||}|}|||}|{{||}|||||}||||}|||||||||||||z}{|{}}}}{|}|{}{}{|}}{}{}}{{}{}|{|}{}}}{{}}{}{}}}{}{}{{|||}~~|||}}}|||}}~~||}}~|}|}}~|{|}}~|||}~|||||~|||||||{|y}{|{}z}}{|}z{}{}{||}{}{}}{{}{}}z|}{}}{}{}}z}z}|}{}{}zz|{|{~~||{|}|{|{|{|~|{|{||{{|{||{||{||{|{{|{|{|~|{|{|{{|||{}z||||}{||||}|}|||}|{{||}|||||}|||||}||||||||||||z|{|{}{||{|}z{|{|{|||{|{|{{{|{||z||{||{|{{|||{|||{|{|{z}{|{}}}}{|}|{}{}{|}}{}{}}{{}{}|{|}{}}{}{{}}{{}}}{}{}{{|||}~~|||}}}|||}}~~||}}~|}|}}~|{|}}~||||}~||||~|||||||{|{z|{|{~~||{|}|{|{|{|~|{|{||{{|{||{||{||{|{{||{|{||{|{|{{|||{}z||||}{||||}|}|||}|{{||}|||||}|||||}||||||||||||z|{|{}{||{|}z{|{|{|||{|{|{{{|{||y||{||{|{{||{|{||||{|{z{{|{}z{{{|}z{{{{{||{{{{|{{{{{||z|{{||{{{{||{{{{||{{{{z}{|{}}}}{|}|{}{}{|}}{}{}}{{}{}|{|}{}}{}{{}}{z{}}}{}}{{|||}~~|||}}}|||}}~~||}}~|}|}}~|{|}}~||||}~|||{|~||||||{|{zzzz{zzz{{zzzzy}zzyyxzzzz{{zzz{}zzzz{{zzzzzzzzzyzzz{}{~}{y~}{{{|y~||{{z|}|{~}{{}~}{{{{~}{{{{{}{{{{{{{{z{|}}|{}}{z|{{~{|}{{||{{{}z{|}}{|{{}}|}z|{}{|{}z|{zz{z{{{|{{z{zz}z{{zzz{z{|{zz{}}z{zz}{{{z{z{zz{{z{zyzz{|zz|{{zzz{}{zzz{{z{{{|zzz}}{zzz||{zzzz{{z{zzzzz{z{{{{|{{zyzz}{zzz{{z{{{{z{z{{{y{{{{{zzz{{{z{zzz{{{{{~|{||{{{||}|||{z|||{~}{{{~}{{{{~|{|{{{|{|{|{{{zzz|~{z{|{zzz|{|{zz||z|{~|zzz~|{zzz~|{zzzz{{z{zzzz{{|{~{||||{||||z|{{{|||{~|{{|~|{|{{~|{|{|{{{|{|{|{z{z}||z{{{{z{~{{|~|{{{||}||{{|z|{~|{{z~|{{{{~|{{{{{{{{{{{{{{{z{|{{||}{{{||~||{{zz|{||{{z|}{{{{||{{{{{{{{{{{{{||||}|~|}~||~||}|~~||||||~|||}~|~|{}~|~|~|||~|~|~|{{{||{{|||{|{||}||{||{||||{{{}||{{{|||{|{{{{{|{|{{{{z{|{{|||{{{||}||{{{z{{||{{{|}{{{{||{{{{{{{{{{{{{zz|{{{|z||z{|{z~{|{{{z|z{{zz||}{|zz{|{|{|z{z|{|{|zzz}{~}|z~}z{|{z~{|{{{|}z{}zz}~}{|zz~}{|{|z}z|{|{|z|{{||}|||}}{{|||~|}}{|{}|{||{}}}{|{{}}{}{|{|{}{}{|{{{|{}{||}|{{|||}||{{{z||{||{|}|{|{{}|{|{|{{{|{|{|{zz|{|{|{||{{|{z}{|{{{z|z{||zz}|{|zz||{|{|z{z|{|{|zz{{{}{{{}{{z{zz}{{{zy{{{{{{z{{|z{{{}{{{z{{{{{{{z{{z{z{~{z{~|{{zz{~{{z{{|{{{{{z{{~{z{{~|{z{z{{{{{z{z{{|{|||}{|{}|{{|{|}||{{|}|||||{||}}{{|}|{|{|{{{|{|{|{{{|{|{||||{{|||~||{{{{||{||{{|}|{|{||{|{|{{{|{|{|{{{{{}{{|}|{{{||}||{{z{{|{|{{{{}{{{{}{{{{{{{{{{{{{{yz{z}{{z}{zz{{z}zz{yyz{zz{{zz{{|z{zz{z{z{z{zzz{z{zyzz{|{zz||{{z{{}{z{{{{z{{{{zzz}{{yzz|{z{zz{{z{{{zz{{|{~{||~|{{|||~||{{{|||{||z{|~|z|{{~||{|{{{|{|{|{{{{{{||}{|{}|{{|{|}||{{||||{||{{|}}{{{{}|{||{{{|{|z|{{{z{|{{|||{{{||}||{{{{{|{|{{{{}|{{{{|{{{{{{{{{{{{{zz|z{{|{||{z|{z~z|{{{z|z{||zz|||z|zz{|{|z|{z|{|z|zyzz{|{zz||{zzz{}{zyz{{z{{{{zzz}{{yzz|{{yzzz{z{yzzz{{|{|{||||{{|||}||{{{z||{||z{|||z|{{||z|{|{{|{|{|{z{z{~{z{~{{{zzz~{{zzz|z{{|{z{z~{{z{{~{{z{z{{{{z{z{{{z{{{||}{|{}|{z|{|}||{{||||{||z{|}}{z{{}|{|z|{{{|{z|{{{z{|{{|||{{{||}||{{zz{|{|{{{{}|{{z{|{{{{z{{{{{{{{z{z{{{z{|{{zzzz}{{zz{{z{{|{z{z|{{z{{{{{zzz{{{z{zz{zz|z{{|z||zz|{z~z|{{{z|z{{|zz|{|z|zz{|{|z|z{z|{|z|yyyyzyyyzzyyyyyyzyxyyyyyyzyyyyzzyyyzzzyyyyzyyyyyyyzz{z{yyy{{{y{yz{zz{yyz{{z{{zzz{{z{z{{z{y{z{{z{z{y{zz{{{z{y|{{z{zy}{z{{zz{{{{zzz{|{zzz|{z{zzz{{z{z{zzyzz{|{z{{|}{z{zz}{z{zz||{z{|z{z|}{{z|}|{z{z{}{{z{z{yzyzzzzy{{zzzzz{zzzzzzzzz{{zzz|{zzz|zzzzzz{zzzzzzzyyyzyzyzzzyxzyz{zyyyyzzyyzzyyy{zyyyzzyzxzyzzzzyyyzzzz{z{yz{{{y{yz{zz{yyz{{z{{zzz{{y{z{{z{y{z{{z{z{y{zzz{{{z{{z{z{z{{{z{{zy|{{{{z{{||z{z|{{|zzz{zz|{{zzyzzyz{zzz|zzzz{{zzzzz|yzz{{zzz{{zzz|{zzzzz{{zzzzzzyyyzyz|{{zzz{{{z{{{{{z{zz{{zzzz{{{{{zz{{{zzz{{z{zzz{{z{z{zzzzz{{{z{{{{{z{zz{{zzzz{{{{{zz{{{zzz{{z{zzz{{z{z{zzzzz{{{z{{{{{z{zz{{z{zz{{{{{zz{{{zzz{{z{zzz{{z{z{zz{|{{||{||||{{{||{|{{||{|||{|{||{{{|||{{{{||{{|{{{{zz{{{{z{{|{{z{{{{{{{{{{{{|{z{{|{{zz|{{{zzz{{{{{{zzzzz{z{zzz{{{z{zz{zz{yzz{yzzzzz{{z{z{{z{z{z{{z{z{z{zzz{z{zzz{{{z{zz{zz{yzz{{zzzzz{{z{z{{z{z{z{{z{z{z{zzz{z{zzz|{{z{zz}{z{zzz{{z{zzz|{z{z|{z{z{z{{z{z{z{{|{{|{|{{{|||{|z{}|{|{|{}|{||{{||{|{||{|{|{||{|{|{|zzz{{{z{{|{{z{z{{{z{{zz{{{{{z{|{z{z|{z{z{z{{z{z{z{yz{zzzz{z{zyzyzz{{zyzy{zyz{zz{zzyyz{z{zzyzzz{zzyzyyz{zz{z{z|{zzyzz{{zzzy{zzz{{z{z{yyz|{{zzyz{{{zzzzyyz{zz{z{z{{yzyz{{{zyzz{zyz{zz{z{zyz{{{zzyz{{{zzyzyz{z{|{||{{{|{{{{{{||{{{{}{{||{{|||{{{|{{{{{{|{{{{{{{zz{{{{z{{{{{z{z{{{z{{z{|{{{{z{{{{{{{{{{z{z{{{{z{z{yzzzy{yzy|{zyzzz{zyzyyyzyyz{zzy{{yyz{yzyzz{{zzyzyzyzzzz{yzz{{yyzy{{zzyyz{zyz{yzzz{zzyz{zyyzz{{zzzyyzzzz{{{z{{{{{z{zz{{z{{zz{{{{{yz{{{y{z{{{z{z{{z{z{z{zz{z{{{z|z{{|{{z{z{|{{{z{|{{{|{z{z|{{z{|{{{{{|{{{{{z{zz{{{zz{{{{{z{z{{{z{{z{{{{{zz{{{{{zz{{{{zzz{{{z{zzzzz{z{zzy{{{z{zz{zz{zzz{{z{{zzz{{z{y{{z{z{{{z{z{z{xzyyy{yzy|{zyyzz{zyzyyyyyyz{zyy{{yyzz{yzyyz{yzyzyyxzzyz{yzz{{yyyy{{zzyyz{yyz{yzzz{zzyz{zzyyyz{zyzyyyzzz{{{z{{{{{z{zz{{z{{zz{{{{{yz{{{y{z{{y{z{z{{{z{z{yz{zzzz{y{zzzzzz{{zzzy{zzz{zz{z{z{yz{z{yzzzzz{zzzzzzyzz{{{z|z{{|{{z{z{|{{{z{|{{{|{z{z|{{y{|{{{y{{|{{{{z{zzz{{zz{{{{{z{z{{{z{{zz{{{{zzz{{{zzy{{z{zzzz{z{z{zyz{zzzz{z{zzzzzz{{zzzz{zzz{zz{z{z{zz{z{zzzzzz{zzzzyyzzzyyyyyyyyyyxzyxyxyzyyzzzyyzzyyyyzzzyyyyzyyyyyyyzzzzzyzyzzzzyzzzzzzzyzzzzzzyzzzzzyzzzzzzzyzzzzzzzyzzzzzzzyzyzyzyz{zyzyzzyzzzzyzzzzyzyzzzyzyzzzyzyzyyzzzzzzzyzzzzzyz{zzz{zzzz{zzzz{zzyzz{z{zzyzzzzzzzyyyzzzzz{zz{yzyzyz{zyzyzzyzzz{yzzzzz{zz{{zzyz{zzzyzyxyzzzzyzyzyyyyzyzyyyyzzyyzzyyyzzyyyyzzzyyyyzzyyyyyyyzzzzzzzzzzzyzzzzzzzzzzzzzzzzzzzzyzzzzzzzyzzzzzzzyzzzzzzzyzyzyzzz{zyzyzzyzzzzyzzzzyzyzzzyzyzzzyzyzyyzzzzzzzzzzzzz{z{zzz{yzzz{z{zz{zzyzz{z{zzyzzzzzzzyyyyyyyzzzz|yyzzzzyzzzzzyzz{z{zzzzzzz{zzzz{zzzyz{zzzyzyzzzzzyzyyzzzzyzzzzzyzz{z{zzzzzzz{zzzz{zzzyz{zzzyzyzzzzzyzyyzzzzyzzzzzyzz{z{zzzzzzz{zzzz{zzzyz{zzzyzyzzzzzyzyzzzzzzzzzzzzzz{z{zzzzzzz{zzzz{zzzzz{zzzzzzzzzzzzzzzzz{{{z{{{{{{{{z{{{{{z{{{{{z{{{{{zz{{{{{{z{{{{{{{yzyzzzzzzyzzzzzzz{zzzzzzyzzzyzzzzzzyzzzzzzzzzzzzzzyzyzzzzzzyzzzzzzz{zzzzzzzzzzyzzzzzzyzzzzzzzzzzzzzzyzzzzzzzzyzzzzzzz{zzzzzzzzzzyzzzzzzyzzzzzzzzzzzzzzyzzz{zzzzzzzzzz{z{zzzzzzzzz{zzzz{zzzzz{zzzzz{zzzzzzy{zz{z{{zz{z{z|{z|{z{{zzz{{z{{{{{z{z{{{z{z{{{z{z{zyyzzzzyyzyzyyyzzz{yyzyzzyzzzzyzzzyyzzzzzyyyzzzyyyyyyzzzzyyzzzyyyzzz{yyzyzzyzzzzyzzzyyzzzzzyyyzzzyyyyyzzzzzzzzyzyzyz{z{zyzyzzyzzzzyzzzyzzzzzzzyzzzzzyzyyzzzzzzzzzzzzzzzz{zzzzzzzzzzzzzz{zzzz{zzzzz{zzzzzzz{zzz{zzzz{z{zzzzzz{zzzzz|zzz{zzzz{z{zz{{{zzz{z{zzzzyzzzzzzzzzzzzzz{z{zzz{zzzz{zzzz{zzzz{zzzzyzzzzzzzyxyyzzzyyyyyyyyzzzzyyzyzzyzzzzyzzzzyyyzzyyyyzzyyyyyxzzzzzzzzyzyzyz{z{zyzyzzyzyzzyzzzzyzyzzyzyzzzyzyzyyyyzzzzzzyzzzzzzz{zzzzzzzzzzzzzzzzzyyzzzzzyzzzzzzzyzzzzzzzzzzzzzzzz{zzz{zzzz{zzyz{zzyzz{zzzyzzzzzzzyzzzyzzzzzzzzz{yzyzzz{zyzyzzyzzzzyzz{{zzzzz{zzzzzzzyzyyyzzzzzzzzzzzzzzzzzzz{yzzz{zzzz{zzzyz{zzzzzzzzzzzzxzzzzzzzzyzyzyz{z{zyzyzzyzzzzyzyzzyzyzzzyzyzzyzyzyyyzzzzzzzyzzzzyzy{zzzzzzzzzzzyzzzzzyyzzzzzzyzzzzzzyzzzzzzzzzzzzzzzz{zzz{zzzz{zzyz{zzyzz{zzyzyzzzzzzyyzzzzzzzzyzyzyzzz{zyzyzzyzzzzyzzzzzzzzzzzzyzzzzyzyyzyzyzzzzzzzzy{yzyzzz{zyzyzzyzzzzyzz{zzyzzz{zzyzzzzzyyyzzzzzzzzzzzzzzzz{zzz{zzzz{zzzz{zzyzy{zzzzyzzzzzzzyyyyyyyyz{yyyyyzy{yyyyzxyyzy{yyyzy|yyyzy|yyyyy{yyyyyyzz{{{zyz{{zzzy{z|zzz{zzzz{{{zzz{{|zzz{{|zzzz{{zzzzzxzzzyzzzz{zyzyzz{{zyzz{zyzz{{yzzz{|yzyz{|yzyzz{yzyzyyy{yzzyy{{zzyzy{y{yzyz{zzyz{{{{yz{|zy{zz|zyzyz{zyzyzy{{{z{|{{|{z|z{{{||z|{{|z|{||{{{{||z{{{{|{|z{{|z|z|zyyzz{{{zzz|yzzzz{z{zzz{{zzz{{{z{z{{|zzz{z|zzzzz{zzzzzxyyzyyzyy{yyxyyzzzyyyyyyyyzyyyzyzzyyyyzzzyyyyzzyyyxyyz{z{{{zz{{zzzy{z|zzz{zzzz{{z{zz{{zzz{{{zzzzz{zzzzzzxz{zzyzzz{zyzyz{{{zyzz{zyzz{{{zzz{{yz{z{{zzyzz{zzyzyyz{{{{zzz{{zz{z{{{z{z{{z{z{{{{{z{{|{z{{z|{z{zz{{z{zzyyyz{yyz{zz{{{{yzzz{{zzzz{{zzzz{z{zzzyzzz{zzzzz{zzzzz{zzzzzzzzzzzzzyzzz{{zzzz{{zzzz{z{zzzzzzz{zzzzz{zzzzz{zzzzzzzzzzzzzyz{{{{zzz{{{zzzz{z{zzzzzzz{z{{zz{z|zz{{z|zzzzz{zzzzzyzz{{{zzzz{{zzz{{{{zz{z{z{{z{z{{{z{zzz{z{zzzzz{zzzzzzz{{{{{zz{|{{z{{{{|z{{{{{{{{{{{{{{{{z{{{{{z{z{{{z{z{yzyzzz{zzz{zzzz{{z|zzz{{zyzzzyzz{{zzzy{{zzzzz{zzzzzzyz{{zz{zz{{zzzz{{z|zzz{{zzzz{{zz{{|zz{{{|zzzz{{zzzzzyzyzzz{zzz{zzzz{{{|zzz{{zzzz{yzz{{{zzy{{{zzzz{{zzzzzyzz{{{{zzz|{zzz{{z|zzz{{zzz{zz{z{{zzzz{{zzzzz{zzzzzzz{{{|{{{{{||{{{{{{|{{{{{|{{{{{{{{{|{z{{{|{{{z{{{{{{{{zz{{z{{zz{|zzzz{{{|zzz{{zzz{{z{z{{{zz{{{{zzzz{{zzzzzyy{{zyzzy{{yyzyz{z{zyzzzyyzzz{{zzz|yy{zz|zzyyz{zzyzyyzyzzyzzzz{yyzyzz{{zyzzzyyzzz{yzzz{yzyzz{zzyzz{zzyzyyzz{{{zzzz|{zzzz{zzzzz{zzzz{zzz{z{zzzz{zzzzzzzzzzzzzyz{z{{{zz{{{zzz{{{|zzz{{zzz{{{{zz{{zz{{{{zzzz{{zzzzzyzz{{z{zzz|zzzz{{{|zz{{{{z{{{zz{{{{|zz{{|zzzz{{zzzzzzzyzzzzzzzzz{zyzyz{{{zyzz{zyzz{{zzzz{{zzz{{zzyzz{zzyzyxzyzyyzyzy{yyyyzz{{yyzyzyyzzz{yzyzz{yzyz{yzyzz{yzyyyyzz{{{zzzz|{zzzz{zzzzz{zzzz{zzz{z{zzzzz{zzzzzzzzzzzzyyyzzz{zyz{zzzz{{z|zzz{{zzz{{zzzz{{zzyy{{zzzy{zzzzzzyz{z{{zzz{{{zzzz{{{zzz{{zzz{{{{zz{{zzz{{{{zzzz{zzzzzyyz{{z{zzz|zzzz{{{|zz{{{{z{{{zz{{{{|zzz{{|zzy{{zzzzzzyzyzzz{{{zzz{{zzz{{z|zzz{{zzz{{yzzz{{zzyz{{zzzz{zzzzzzyzz{{{zzzz|{zzzz{zzzzz{zzzz{zzz{z{zzzzz{yzzzzzzzzzzzyyyzzz{zyz{zzzz{{z|zzz{{zzz{{zzzz{{zzyy{{zzzzy{zzzzzxzyzzyzzzy{zyzyzzzzzyzz{zyzz{zyzzz{zyzyz{zyzyzzzzyzyyz{z{{zzz{{{zzzz{{{zzz{zzzz{z{{zz{zzzz{{z{zzzzz{zzzzyyz{{z{zzz|zzzz{{{|zz{{{{z{{{zz{{{{|yyz{{|zzzy{{zzzzzyyyyyyzzyzzyz{zyzyz{zzzyzzzzyzzzzyzzzzzzyyzzzzzyyzzzzyzyyzzz{{{|}z|z{z{|}x{z{z{|zz{z{|y}{z{|y{|z{|y{z{{|y{z{zz{{||{{{|}||{{{{|}z{{{|{|z{{|{|z}{|{|{{||{|{{{{{|{{{{{z{{|z}{{|}||{{{||}z{{||}||{||}|y}||}|{{||}|{{{{}|{{{{{z{|{z{{{|}||{{{{|}z{{||{|z{||{}{}{|{}{{|z{}{{{{{|{{{{{z{|}z{{{|}|~z{z{|}z{z{z{~~z{z{~z}{z{~z{|z{~z{z{{~z{z{zz}|}~}}}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}}~|}|}||z{{{|z{{{||yzyz{|}z{zzz{|zz{zy|y{{z{|{y{z{|{yy{{|{{zyzz{{{||{{{||z{{{z|}z{{{|{|z{{|{|z{{|{|{z{|{|{{{{{|{{{{{z{{{|z}{{||z{{{|z}z{{||}||{||}zz{||}z{{{|}z{{{{}z{{{{{z{|{{z{{{|||{{{{|}|{{||{|z{||{}|{z|{}{z|z{}{{{{{|{{{{{z~|}~z{~~|}~{~{~|}z~{~|~~~{~|~~{}~|~~{~|{~~{~{~{~{~{~{yyzz{yz{|}z{|}z|}z}z}y{z{zzz{{z||zz{z{{}zzzzzzzz{{z{z{{{z{z{z{z{z{z{zzz{z{zy{z{zzz{{z||zz{z{{}z{zzzzzz{{z{z{{{z{z{z{z{z{z{zzz{z{zz{{{|z{{{{||{{{{{|}{{{{{|z{{{z|z{{{{|{{{{{|{{{{{|{{{{{z{|}|z{{{|}||z{z{|}z{z{{|zz{{{|z}{{{|z{|{{|{{z{{|{{z{zz{{{||{{{{||z{{{{|}|{{||||{||{}{{{|{}{{{|{}{{{{{|{{{{{z{{{~{}{{{~~~{{{~|}z{{~|}~{~|}~{{~|}~{{{|}~{{{{}~{{{{{z{{{|z}{{{||z{{{||}z{{||}z|zzzzy{||}{{{{|}{{{{{}z{{{{{z{{{|z}{{{||z{{{||}z{{||}||{zz{z{||}{{{{|}{{{{{}z{{{{{z{|}|z}{{|}||{{{||}z{{||}||{|{|z}||}|{{||}|{{{{}|{{{{{z{{{|z}{{{||z{{{||}z{{||}||{||}{{||}}{{{|}}{{{{}|{{{{{z{{{~z}{{{|~~{{{||}z{{||}|~{||}z{||}~{{{|}~{{{{}~{{{{{{}|}~|}}}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}}~|}|}||z{{{||{{{{||z{{{{|}z{{{|{|z{{|{|z{zz{zy{|{|{{{{{|{{{{{z{|}||{{{|}||{{{{|}z{{{|{|z{{|{|z}{{|z{||{|{{{{{|{{{{{z{{{||{{{{||z{{{{|}z{{||{|z{||{}{{{|}{z{|{}{{{{{|{{{{{z{{{~|{{{{|~~{{{{|}z{{{|{|~{{|{|z{{|{z{{|{~{{{{{~{{{{{z{{{||}{{{||z{{{||}z{{||}||{||}}{{||}}{{|}}{{{{}|{{{{{{{|}~|}{{|}~~|{|||}|{|||}~~|||}~|}||}~|||}~|{|{}~|{|{||{z{|}|z{{{|}||z{z{|}z{z{z{|zz{z{|z}{z{|{{|{|z{z{{|{{z{zz{{{|z{{{{||z{{{{|}z{{||{|z{||{}{{{|{}{y{z}{y{{{|{{{{{z{{{~z{{{{|~~z{z{|}z{z{{{|~z{{{|z{{{{|{{{{{z{z{{~{{z{zz{{{|z}{{{||z{{{||}z{{||}||{||}|z{||}|{{{|}|{{{}|{{{{{z{{{||{{{{||z{{{{|}z{{||{|z{||{}{{{|{}{{{|{}{{{{|{{{{{z{|}~|}{{|}~~|{|||}|{|||}~~|||}~|}||}~|{||}~|{{}~|{|{{z{{z{{{|z{{{{||z{{{{|}z{{||{|z{||{}{{{|{}{y{z{}{{{{z{y{y{z{{{~z{{{{|~~z{z{|}z{z{{{|~z{{{|z{{{{|{{{{{|{{z{{z{z{zz{{{|z}{{{||y{{{||}z{{||}||{||}|y{||}|{{{|}|{{{{}|{{{{z{{{||{{{{||z{{{{|}z{{{|{|z{{|{|z{{|{|{z{|{|{{{{{|{{{{z{{{|z{{{{||z{{{{|}z{{||{|z{||{}{{{|{}{{{{{}{{{{{|{{{{z{|}~|}{{|}~~|{|||}|{|||}~~|||}~|}||}~|{||}~|{|{}~|{||z{{{yyyyyzyyxyzzyyyzzzyxyxzzyyyxyyyyzzyyyzzzyyyzzzyyyyzzz{zzzyzz{z{zx{z{zzyxzzz{zyyzzz{{zzz{{z{zzzzz{z{zy{zzz~z{xz~zyzz~z{zyyz{zzyzyyyzz~zz{y~{zyz{~zzyzyzyyzz{zz~{zzz~zz{y~{zzzzz{z{{z{z{zz~zyz{~{zz{z~z{zzz{zzzz{zzzzz{z{zzzz{zzz{{zz{zyyzzz{{zzz{{z{zzzzz{z{zyyzyzyyzzz{zzyyzzyyzyy{zzyyyyzyy{{yyz{zyzyyzzyyyzyzz{z{zzzzz{zzyy{{zzzxy{z{{zxz{zz{zyz{{zzzzzzz{zzzzzzzz{z~zzz~z{zy~{{zzyx}zz{zyyzzz~{zzz~{z{zz~zz{z{zzzz{z{zz{zz{{z{y{{zzzzz|z{{z{z{zz|{yz{{}zz{zz{{zzz{z{zzzzzz{zzzzzz|z{zzyy{yzzzyyzzz{{z{z{zzzz{zzzzzzzyyyzyzzyzyz{yzy{zzzyyzzzyyzzzyzz{zzyy{zzyyyzzzyzyyyzyzyz~{zyz~z{y~{zzxzyzzyzzzzyzz~{yzy~zzy{z~z{zzy{zz{z{z~zzzz~zzy~{zzzyy{z{{zxz{zz~}yz{~{zzzz~z{zzzzzzzz{z~zzzz~{{zz{{z{z{{zz{zyyzzz~}zzz~|z{zz~{z{z{zy{yzzz~z{yz~zyzz|{zyyzzzzyzzzyzz~{z{y~zzzz{~zzzzyzzz{z{z~zzzz~z{zy{{zzy{{z{{z{y{zz~{zz{~{z{zz~z{{z{zyyz{{{zzzz{zz{z~z{zz~z{zz~{{zzy{zzzzzyzzz~{z{z~{z{z{~zz{z{zz{zz{zzz{zz{{{zz|}{zzy{{zz{zyzzz{|z{z{{z{z{z{z{z{z{{{{|{|z{{{|||z{||{{|z{|{||{{{{{||z{{||{|z{||{|{|zz{z|{{|{{z||{{{{|{{{zz|z|z{{|{|{|{{{z|{{{{{|{{{{{{z{zz{{|z{zz|{{z{|{{{zz{{z{{{{zz{|{z{z|{{{z{|{{{{{zzz{z{zzzzzz{zzzz{{zzzzy{z{{z{z{zz{yz{{zzzzzzz{zzzzzz{z{z~zz{z~{zzz~|zzzzy}z{{z{z{zz{yz{~{zzzz~{{zzzz{{z|{|{|{z|{||{{z||{{{{{|{||{{z|{{||z|||{{{z||{|{{{z{{z{zzz{zz{z{zz|{{zzz{{z{{z{z{zz{{z{{{z{z{zz{{z{zz{{z{zzz{zz{zzzz|{{zzzz{z{{z{z{zz{zz{{zzzz{zz{zzzzzzzzzzz{zzz{zz{y{zzzzzy{zzzzyzzzz|{yzzzyz{zzz{zzz{yzyzyz~{zyz~zy{y~zzzyzz{zzzzzzzzz|zzzy~zy{z~z{zzy{{{z{{{{{|{{z{|{z{z|{{|z{|{{{{||{{{{|z{{{|{|{{|{{z|z{zz{z{zz{zzz{z{{z{{{zzz{{z{{z{z{zz|{zz{{{z{zzz{{z{{zzzz{zz{zzz{z{{y{z{zzz{{zz{zyzzzz|{zzz{{z{zzz{{z{{yyzyyyzyyzy{zzzy{zyyzyy{yyzzyyzyyz{yyz{zzzyyzyzyzyyyyzyzzyzyz{zyzy{zzzyyzzzyyzzzyzz{zzyy{zzyyyzzyzyyzz{z{z~zzzz~z{zy~{{zzy{{z{{z{z{zz{{yz{~{z{zz~z{z{zzzzzz{{{{|{zz{|{z{z|{{zz{{{{{{z{z{{{|{zz{|{zz{z|{{{z{zzzz{zz{zzz{z{{z{z{zzz{zzz{zzzzzz|{zzz{{z{{zzz{{z{z{{z{zzz{zz{zzzz|{{zzyy{z{{z{z{zz{{zz{{zzzz{zz{zzzxyyxyxyyxyxxxxyzyxxxxyyyyxxyyyyyyxxyzzyyxyzyyxxxx{yzyzy{yzyzyyyzzyyxy{yyzzyy{zzzzyyzzzyzyzzyzyzyyyzyyyyyzzyyyxzzyyyxyzyyyyyyyyyzyyyyz{yyyyzyyyyyyxyyzyzzyzy|zzzy}{zyzyz{zz{zzzzzzzzyyz|{zzz|zzzzzzyy{yzzy{yzyzyzyzzyyxy{zyzzyy{zzzzyyzz{zzyzzzzyzyyyyyyyyzyyzxzyzzyyxxyyzzyzyzyyzzyyyyzyzxzzzzyzxzxy{yzyz{yzyzyxy{zyyxy}yyzzyy{zzzzyyzz{yzyz{yzyzyxyyzyzzzyz{zzzy{{zyzyz|zz{zzzzzzzzyyz{}zzz{{zzzzzyyzzyyyyzzyyyxzzyyyyy{yyyyyyyyyz{yyyzzyyyyzyzyyyxyyyyyyyyyyyxyyzyxyxyzyyyxyyyyyyyxxyzyyyxyzyyxyxyyyyyyxyzyyzzyzzyyxxyyzzyzyzyyzzyyyyzyzxzzzzyzxzxyzyzzzyzzzyzy{{zyzxy{yz{yyyzzzzzyyzzzyzyzzzzyzyyy{yzyzy{yzyzyzzzyyyy{zyzzyy{zzz{yyzz|zzyzzzzyzyyyyzyyyyzz|yyyyzyyyxzzyzyyzzyyzzyyyy{zyyy|zzyyyyxxxyxy{y{yy{zzyzy{zzyzyzzzzyyyy{yyyyy{zzzzyyzzzyzyzzyzyzyyy{zzyzy{zzyzyzzzzyyyy{yyyyy{zzzzyyzzzyzyzzyzyzyyy{zzyzy{zzyzyzzzzyyyy{yyzyy{zzzzyyzzzyzyzzyzyzyzz{{{z{z{z{z{zz{|{z{z{{{z{zz{{z{{zzz{{z{z{{z{z{zzz{zzzzz{z{zzzz|{zzzzz{zzzzzzzz{zzzz{zzzz{zzzzzzyyzzzzzyzzzyzyy{{zyzyy{zz{yzyzyyyyyzzzzzyzzzzyzyyyzzzzzyzzzyzyy{{zyzyy{zz{yzyzzyyyyzzzzzyzzzzyzyyy{zzzzzzzzyzyy{{zyzyz}zz{yzy{zzzyyzzzzzyzzzzyzyzyz|{{{{z|{|z{zz||{z{z{|{z{z{z|{{{|z{||z{z||z{z{zyy{zzzzy{zzyzyz{{zyzyz{zz{zzy{zzzzyzzzzzyzzzzyzyyyyyyyxyyyyzyzyzzyyyxyyzzyzyzyyzzyyyzzyxzyzzyzxzyyyyyyyyyyyzyzyzzyyyyy{zzyzyzzyzzzyyyzyyzyzzzzyzyyyyyyxyzyzzyzy{zyyyyyzzzyzyzyyzzyyyyzyyzzzzyzxzzz{{z{z{z{z{|zz{z|{zzzzz{{z{zz{zz{|zz{{|{{{|{{zzz{yy{yzzzy{zzzzzz{{zyzyy{zz{zzz{zzzzyyzzzzzzzzzzzzxyyyyyyyyyyxyyyyzyxyyy{yyyxyyyyyyzyyyzzyyyzyzxyyyyyyyyyyzyzyyyy{zyyyyyzyyyyyzyyyzyyyyzyyxyzyyyyyxy{yzzzy{zzyzyz{{zyzyy{yz{zzy{zzzzyyzzzyzyzzzyzyyyzyyzyzzzyzz|zzzy|{{yzyz{zz{zzzzzzz{yyz|{zyz|{z{zzyz{zzyzz{zzzzzzzzzyyyy{zzzzyz{zzzzyzzzzzzzzzzzzzyyzzzzzyzzzyzyx{{zyzyy{yz{yzyzzzzzyyzzzyzyzzzzyzyyxyyzxyyxyxxyyxzyxxyxxyyyxxyyxyzzyxyzyyyyyzyyyxxyyyzyyyxyyyyyxyyy{yyyyxzzyyyyzyyyyzzyyyzzxyyyzzxyxyyyzyyzyyyzzyyyyyzyyyyyyzyyyzyyyyzyyyyzyyyyyzyyyyyyxzyyyzyzyyyyyyzyzyyyyyyyyyyyzyyyzyyyyzyyyyyzyyyyyyyxyyyzyzxyzyyyyyyx{yyyyyyzyyyyyzyyzyzyyz|zyyyzzzyyxyyyyzyyyyzzyyyyzzzyyyyxyzyyyzzyyyzyyyyzyyyyyzyyyyyyxxyzyyzxyzzyxyyyzyyxyyyzyyyxyyyyzyyxyzyyxyxzzyyyxyyzyzyyzxzyyyxyyy{yyyyxzzyyyyzyyyzzzyyzzzxyyzzzxyxyyyyyyyzyyyyyyyzyzyyyyyyyyyyzzyyyzyyyyzyyyyyzyyzyyyyyyyzyyzxyyzyyyzyzyyyyyyzyyyyzzyyzyzxyzzzyyyzzzyyxyxzyxyyzyzzyyyyyyzyxyyyyyxyxyyyyyzyyyyzzyxyyzzyyxyyxzyzyyzxzyzzyyyyzyyxyyyzyyyxyyyyzyyxyzzyxyxzzyyyxyxzzzzyzzzzzyyzzz{zyzyzyzyzyzzzzzzzyzzzzyyyzzzyyyyyyzyzyyzxzyzzyxyy{yyyyyzzyyyyzyyyzzzyyzzzyyyzzzxyxyyzyyyzzyzzyyyyyyzyyyyzyyzyyzyyyzzzyyzzzzyyyzzzyyyyyxyyyyyyyy{yzyzyyzyzzzzyyyzz{zyyyzzzzyzyyzyzzyyyzzyyyyzzyzyyyyzyzyyzyzzzzyyyzz{yyyyzzzyyzyyzyzzyyyzzyyyyzzyzyyyyzzzzyzyzzzzyyyzz{zyzyzzzyzzzzzyzzyzyzzyyyzzzyzyyyyzzzzzzyz{zzyyzzz{zzyzzzzzzzzzzzzzzyzzzzyyyzzzzyyyzzz{zz{zzz{zzzzz{{zzzyzz{zzz{zzz{zzzz{zzzzz{zzzzzzyyzzzyzyyzzyyyyzz{yyzyyyzyzyzyzyzyyyzzzzyyyzzzyyyyyyzzzyzyyzzyyyyzz{yyzyyyzyzyzyzzzyyyzzzzyyyzzzyyyyyzzzzyzyzzzzyyyzz{yyzyyyzyzyzzzzzyyyzzzzyyyzzzyyyyyzzzzyzyz{zzzyyzz{yzzyzz{zzzzzzzzzyyzzzzyyyzzzyzyy{zzz{z{zyzz{zzyzzz{zzzzzz{zz{zzzz{zz{{zz{yzyzz{zzyzxyyyyyzxyzyyyyyyyzyyyyyyzyyyyyzyyzyyyzyyyyyzzyyyxyxyyzyyzxyyzzyyyzyzyyyyyyzyyyyzzyyzyyyyyyxyyzzyyyxyxzyzyyzxzyzzyyyyy{yyyyzzzyyyyyzyyzyyyyzyyyyzzyyyxyyzzzzyzyzzzzyyyzz{yyzyzzzyzyzzzzzzzyzzzzyyzzzyyyyyzzyz{zzyzzz{zzyzy{z{zyzyzzzyzyzz{zzzzzzzzzzzzzzzzyzyyzyzyyzyzzyyyyyzz{yyyyzzzyyyzyzyyzzzyyzzzyyzzzyyyyxyyzyyzyyyzzyyyzyzyyyyyyzyyyyzyyyzyyxyzzyxyxyyxyyyxzyyyyzyzzyyyyyyy{yyyyzzyyyyyyyyyyyyyyzzyxyyzyxyyyxyzzzyzyyzzzyyyzz{yyzyyyzyzyzyzzzzzyyzzzyyyyzzyyyyyyyzyyzyyzyyyyyzzzyyyyyyzyyyzzzyyzyzyyzzzyyyzzzyyyzyyyyyzyyzyyyzzyyyyyzyyyyyzzyyyyyzyyzyzyyzzzyyyzzzyyyyzzzzyzyzzzyyyyzz{yyzyyyzyzyzyzzzzzyyzzzyyyyzzyyyyyyyxyyxzzxyyyxyzzxyyyyzxyyyyyyxyyyyyyzyyyzyyyyyyyyxyyzzyyyyzzyyzzyzzzyyzyzz{{yyzyzyyyyzzyzyyzzyzyyzzyzyzx{yyyzy{zyzyyyy{zyyyyy{yyyyyz{zyyz{y{zyzyzyy{zyyyyyyy{{zy{y{{y{yzyz{{yyzyz{{{yyz{zyyy{zz{zy{zzyz{{zzyzyzyz{zzzzz{zzyzzzz{yzzzzzz{zzzz{zzzz{zzzzz{zzzzz{zzzzyyyyzzyyyxzzyyyzxzzzxyzyzz{{yyzzzyyyzzzyzyyzzyzyyzzyzxzxyyyyyyyyyyyyxyzzyyyxyzyyyzyxzyzyzzyyyyzzyxyxyzyyyxyyz{zyyyyzyyzzyzz{yyzyzz{{yyzyzyyyyzzyzyyzzyzyyzzyzyzx{{yyyzy{yzyyyy{{yyyyy{y{yyyz{zyyz{z{zyzzzyy{zzzyyyyy{{{zyzz{{zyzz{{{{z{z{{{{{z{z{{z{z{{{{{z{{zz{z{{zzzzyxz{yzy{yz{y{yyyz{yyyyy{y{yyy{{zyy{{zyzy{yzyyy{yzzyyyx{yyyyyy{zyyyyyzzyyxyy{yyyyxzzxyyzyy{yyyyyxy{yyyyxyyx{yyyyyy{zyyyyyzzyyyxy{yyyzyzzyzyzzy{yyzzyxy{yzyyyxyx{yyzy{y{zy{yyyzzyyyzx{y{yzz{zyzy{{y{yy{{yyy{{{yyyyyy{zzyyyy{zyyzzyzzzyzyz{{{zyzzzzyyzzz{zyyz{yz{yz{zzyzy{{y{y{{{{y{yz{z{y{z{z{{{y{z{{z{y{{z{zy{zz{z{{zz{z{zyyyy{yyz{yz{{{{yyyyzy{yyyy{yyyyzzyyyyy{yyyyyyyyy{zyyyy{zyyyy{zyyyyyyzzyzy{yzzy{yyyyzzyyyyy{yyyyyzyyy{zyyzy{zzyyy{zyyyyyy{{yzy{y{{z{zyyy{zyyyyy{y{yyyyyyy{zz{zy{zzyy{{zzyyyyyyz{zz{yyz{{zzyzzzzyzzz{{{zzzzzzz{zzyzz{zzyzy{zzyzyzy{zy{z{{{zz{zz{z{{y{z{z{{{y{z{z{z{{z{zz{{z{z{{{z{z{zyzzzzyzyzzyyzyyyzzyyyzzzy{yzzz{yyyyyyzyz{zyyyz{zyyyyy{{zzyzy{{yyzyyy{zyyyzz{y{yzzz{yzyyz{zyz{zyy{z{zyyyyyyzzzyzyyzyyzzyzzzyyzzzz{{yzzz{yzyzzyzyz{zyzyz{zyzyzyyzzzy{yyzy{zyyyz{yyyzz{z{yzz{{zzy{yyzy{{zyyy{{zyyyyyz{{{z{{z{{{{{{{{{{{{{{{{{{{{{{{{{{{zz{{{{{yz{{{{{{yzy{zzzyzz{zyzzyzy{{yzyzz{z{yzzz{yzyz{z{yz{zzy{z{zzyzyx{{yyyyy{{yyyyyy{zyyyzy{y{yzyzzxzyzzz{zyyzyy{yzzyyxyyyzyyyyyyzyyyzyzzzyyzzzz{{yzzzzyzyzzzyzyzzyzyyzzyzxzxyzyzy{yyzy{yyyyz{yyyzy{yyyzy{zzzy{zyyzy{yyyy{zyyyyyy{zyzy{y{zy{yzyz{zyyzzz{{{yzz{{yzy{{z{zy{{yz{{{zyzyzyz{zzzzzz{zzzzzzz{zzzzzzz{zzzz{zzzz{zzzzz{zzzz{zzzyzyyyyzzyyyyyzyyzzyzzzyyzzzz{{yzzzzyzyzzzyzyzzzyzyzzyzyzyyzyyyyyyzyyyzyzzzyyzyzz{{yyzyzyyyyzzyzyyzzxzyzzyzyzxyzyzy{yyzy{yyyyz{yyyyy{yyyyy{yzyy{yyyzy{yyyyy{yyyyyxyyyzyzyyzyyyyyyzzyyyzzzy{yzzz{yzyz{yyyyz{yyyyz{yyyyy{zzzy{y{zy{zzyz{zyyzzz{{{yzz{zyzy{zz{zy{zzyz{{zzzyzyz{zzzzzz{zzyyzyz{yzyzzzz{yzzz{zzzz{yzzzz{zzyzz{zzzyyyyxyyyzy{yyyy{yyyyzzyyyzz{y{yzz{{yzy{{yyyy{{yyyy{{yyyyzyyyyzz|{|y{{z{|{|yz{z{|}y{z{z{|zz{z{||{{z{||{|z{||{z{z{|{{|z|{|{}{z{|{|{z{{{|}{{{{|}||{{|}||{{|}||{||}||{z{y|zzzzz|{}z{{z{|{|zz{}{|}z{}{|{|zz{|{}|{{z{}|{|z{||{z{y|{zzzz|{|z{{z{|{|~z{z{|}z{z{z{~~z{z{~|{{z{~|{|z{~|{z{{|}|{zz|}}{{{z{|}||z{}{|}{{}{|{|zz{|{}|}{z{}|{|z{||{z{{|}~||||}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{||}~|{|{{|yz{|z{zz{|z{{y{{{|yz{y{|}y{z{y{|zz{z{zy{{z{|yyzz{|z{x{{|}|{{|z{|{}{z{|}||z{{{|}{{{{|}||{{|}|y}{|}|z{||}|z{z{{|}zz{zz|}z{{z{|}||z{}{|}z{}{|{|zz{|{}z}{z{}z{|z{|z{z{{|}~z{zz|}z{{z{|}|~z{z{|}z{z{z{~~z{z{~z}{z{~z{|z{~z{z{{|}~|}|||}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}|yzzzzzzzzzzz{zyzzzzzzzzz}zzzzz{|zzzz{zzyzz{zzzzz{zzzzzyz{|z{zzz{|z{{{{{|zz{z{|}z{z{z{|zz{z{{z{{z{|zzzz{|z{z{yz{||{|zz{||{{z{{|zz{{z|}z{{{|{|z{{|{|z{{|{|zzz|{|z{zzzz{|{{|zz{|{}{z{{|{z{{{z}{{{{|}||{{|}{z{{|}{z{z|}zz{z{y|{|zzzz|{}z{{z{|||z{}{|}|{}{|{|zz{|{}|{{z{}|{|z{||{z{{|}~{{zz|}~{{~z~|}~z~}~|}{~}~|~~~z~|~~z}{z~~z~|z{~z~z~yyzz{yyzzzy{|}z|}z}{}yz{z{zzzz{{{yzzzz{|{zzzzz}{zyzzzzzzzz{z{zzz{zzzzzzzzzzyz{z{zz{z{{{zz{zz{|{zz{zz}{zy{z{zzz{z{z{zzz{{zzzz{{z{zy|{|{zzz|{|{{{z{|{|{z{zz|}{{zz{|zz{z{||{{z{||{|z{||{z{{|}|{{zz|}|{{{z{|}||z{{{|}{{{{{|{{{z{|z}{z{|z{|z{|z{z{yz{||{|zz{}|{{z{|{|{z{}{|}|{}{|||{{|{}z{{|{}zzz|{|z{zzzz{~{~|{z~~{}{{~|~~~{~}~|}{~}~|}~{~|}~z{~|}~{{z|}~{{{{zz{|z{|zz{|y}{z{{{|zz{{{|}y{{{|}z|yzz{y{{|}{z{z|}zz{z{z|{|z{|z|{|z}{z{|{|zz{{{|}y{{{|}||{z{||{{|}||{||}||{z{{|}|z{|z|}|z}{z{|}||z{{{|}z{{{|}||{{{|z}{|}|z{||}|z{z{zz{|z{|zz{}z}{z{|{|zz{}{|}z{}{|}||{{|}z{{|}}z{z|}zz{z{zz{~{{|zz{~{}{z{{{~~z{{{|}{{{{|}|~{{|}z{{|}~z{z|}~z{z{{|}~|}|||}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}|y|{||{|z|{||{{z{|{|zz{{{|}z{{{|{|z{{|{||{z{||{||{||{z{{|}||{|z|}||{{z{|}||z{{{|}z{{{|{|z{{|{|z}{{|z{||{|z{z{yz{||{|zz{}|{{z{|{|zz{}{|}z{}{|{|z{{|{}z{{|}zzz|{|z{zzyz{~|{|zz{~|{{z{{{~~z{{{|}{{{{|{|~{{|{|z{{|{zzz|{~z{zzzz{||{|zz{}|}{z{|{|{z{}{|}{{}{|}||{{|}}z{{|}}{z|}|z{z{{|}~|{|||}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||}~|{|{|{{|}|z{zz|}|z{{z{|}||z{z{|}z{z{z{|zz{z{|z}{z{|z{|{|z{z{yz{|z{zzz{}z{{z{|{|zz{}{|}z{}{|{|zz{|{}z{{z{}zzzzzzzz{yz{~{{zzz{~{{{z{{{~~z{z{|}{{z{z{|~z{z{|z{{z{|zzzz{zzz{zz{|z{|zz{|z}{z{{{|zz{{{|}z{{{|}||{{|}|z{{|}|z{z|}|{z{yz{||{|zz{}|{{z{|{|{z{}{|}{{}{|{|z{{|{}z{{|{}zzz|{|zz{{|}~|{|||}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{||}~|{{z{zxxyxxxxxxxyxxxxyxyyyxyxyyxyxxxyyxxyxxxxxyyxxxyyyxxyyyyyzyxxyyzyyxxyyzyyyxyzyyyyyzyyzyyxyzyyzxxyzzyyxxyyyyxxyyxyyyxyyxzzyyyxyyxyxyyyyyyyyxxyyyyyyxzyyxyxxxxxyxyxxxyxxyxxxzyxyyyyxxxxyyyxxyyxxxxxyxxxyyyxxxxxyxyyyzyyyyyyyyyyyyzyyyyzzzzyyyzyyzzyyyzyyzyxyzzyyyyyyyyyyyyyyzyyyyyyzyyyyyzyyyyyyyyzyyxyzyyzyxyzzyyyxyxyyyyyyxyyyxyyxzyyxyxyyxxxyyyyxyyyxyyyyyxyxzyyyxyxyyyyzyxyyzyyxyyyzyyxyyzyyyxyzyyzyyxyzyyzxxyzzyyxyyyyyyzyxyyzyyxyyyzyyyxyzyyyyyzyyzyyxyzyyzxxyzzyyxxyxyyyxxyyyyyxyyxzzyxyyyyxyxyyyyyxyyxxxyyyyyxzyyxyxxyxyyyyzyyyyyyyyyyyzyyyy{zzzyyzzyzzzzyyzzzzyxyzzyyyyyyyyyzyyyyyzyyyyyzyyyyyzyyyyyyyyzyyxyzyyzyxyzzyyyxyxyxyyxyyyyyyyyxyzyxyyyyyyxxyyyyyzyyxxyyyxyxzyyxyyxyyyyzyyxyyzyyyyyzyyyyyzyyyxyzyyzyyxyzyyzxxyzzyyxyyyyyyzyyyyyzyyyyyzyyyyyzyyyyyzyyzyyyyzyyzxyyzzyyyyyyyyyyzyyyyyzyyyyyyzyyyzzzzyyyzyyzzyyyzyyzyxyzzyyyxyyyyyyxyyyyyyyyyyzyyyyyyxyyyyyyxxyyxyxyyyxyxzzyyxxyxyxxxxxyxxxxxxyxyyxxxxyxxxyyyyxyxyxxyxyyxxxzyyxxxyxyxyxxyyxyxyxyyxyzyyyyyyyxyyyyyyzyyxxyyyxyxzyyxyyyyyyyzyyyyyzyyyyyyzyyyyzyyyyyzyyzyyxyzyyzyyyzzyyyyyyyyyzyyyyyzyyyyyyzzzzyzyyyyyyyyzyyyyzyy{yxyzzyyyxyxyyyxxyyxyyyxyyxzzyyyyzxyxyzyyzxyzyxxzzyyyxzyyyyxxxxxyzyzyyyyzyzyxyyzzyyyyyzzyyyyyzyyyyyzyyyyyyzyzzyyyzzyyxyyyyzzzyxyyzzzyyyyzzyyyyzzyyyyzzyyyzyyzy{zyyyzzyyxyyyzzyzyyyyzzyyyyyzzyyyyyzyyyyyzyyzyyyzyzzyyyyzyyxzy{z{zzzyy{z{zzyz{z{zzzzz{zzzyz{zzzzz{zz{{yyz{{yzyyzyzzzzzzzyzzzyzzyz{zyzz|zyzyzzzzzzzzyzz{zzzz{zzyzyyyyyyzyyyyyzyyyyyyzyyyyyzyyyyyzyyzyyyyyyyxyyzzyyxyyyyyyzyyyyyzyyyyyyzyyyyyzyyyyyzyyzyyyyzyyxyyzzyyxyyyzyyzyyyzyzyyyzyyzyyyyyzyyyyy{yyzyyyyzyyyyyzzyyxzzyzzzzzzyyzzzz{yzzz{z{zy{{{z{zz{yz{zzyzzzz{yz{{z{yyyyyyyzyyyyyzyyyyyzzyyyyyzyyyyyzyyzyyyyzyzzyyzzyyyxyxyxxyxyyxxyyxyyxyzyxyyyyyyxxyyyyyzyxyyyyyxxyyyyyxyyyxxxxyyyyxyyyyyyzyyyyyzyyyyyyyyyzyxyyyyyxxxyyyyxyxyxzxxyyyyxzxyyxyzyxyyzyyyxyzyyyyzzyyxyzyyyxzyxyyzyzyzyzzzzzyzzzyzzyz{zyzz{zzzyzzzzzzzzzyzz|zyzz{zzzyyyyyyzyyyyyzyyyyyyzyyyyzzyyyyyzyyzzyyyzyyzyyyzzyyxyyxxxxyyxyyxxyxyxxxyxxyxyxyxxyxxxyxyxyyyyxxyyyxxxxyyyxyyyyxyyyyyxyyyyyyyyxyyyyyyyxyyxyxyzyyyyzyyyyzyyyyyyyyyyyyxyyyzyyyyxyyyyyyyyzyyyyxyyyyyyxyyyxxyyxyyyxyyyyxyyyyyyyyyyyyzyyyyyyyyyxyzyyxyyzyyyyyyyyyyxyxyyyyyyyyyyyyyyxyyyyyyyzyyyyyyyyyyyyyxyyyyyyyyyyyyxyyyyyyyyyyyxyyyyyyyyyyyyyyyyyyyyyyxyyyzyyxyzyyxyyxyyyyyyyyyyyyxzyyyyyxyyzyyyxyyyyyyzyyyyzyxyyzyyyxzxyzyyyyyyyyyyyyyzyyyyyyyyyyyyyzyyyyxyyyyyyyyyyyyyyyyyyyyyyyyyyyyzyyyyyyyzyyyyyyyyyxyzyzxyyzyyyyyyyyzxyxyyyyyyyyyyyyyyyyyyyyyyzyyyyyyyyyyyyyyyzyyyyzyyyyyxyzyyxyyyyxyyyyxzyyyyyyyxyyyyyzyxyzyyxyyyyyyyyyyyyxyzyyyyyyyyyyyxyzyyyyyyyxyyyyyzyyyyxyxyyyyyyyyyyyyxyyyyyyyyyyyyyzyyyyyyyyzyyyyyyyyyyzyyyyzzyyyzzyyyzxyyyyyyyyyyyyyyxyyyyyyzzxyyyyyyyxyzyyxyzyyyyzyyyyzyyyyyyyyyyyyyyyyyyyyyyzyyyyyyyyyyyzyyyyyzyyyyyyyyyyyyzyyyyyyyyyyyyyyzyyyyyyyyyyyyzyyyzyyxyyyyyyyyyyyyxyyyxxxyyyxxyxyzyyyxxxyyxxxyyyyxxyyxyxxzyyxxzyxxyzxyzyyxyyyyxyyxyzyzyyyxyyxyxyyyzyyyyxyxyyyyxyyyyxyzzyyzyyyyzyyyyyyzyyyyzzyzzyyyzyyyyyzzyyyzzyzyzzyyyzyyzyyyyyyyyyyyyzyzyyyyzzyyyyyyzyyyzyyyyyyzyyyyzyyzyyyyyxyyyyyyyxyzyyyyyyyyxyxyzyyyxyyyyxyyyyxyyzyyyzxyyyyxyyyyyyyzyyyyyyyyyzyyzyzzyyyyyzyyyyzyzyyyyyyyzzyyyzzyyyzyyzyyyyyyyyyzyyyyzzyyyyyzyyyyzyzyyyyyyyzzyyyzzyyyyyyzyyyyyyyyyzyyzyzzyyyyzzzyyyzyzyzzyyzyzzyyyzzyyyzyyzyzyzyyzyzzyzyyzzzyyyzzyyyzzyzyyzyyyzzzzyzzzzyyyyy{zzyyyy{zzzyyyy{zyyyyzzyyyyzz{yyzzyyzzzyyyzzyyyyxyyyyyyyyyyyyyyyyyyyyyyyzyyyyyyyyyyzyyyyyyyyzyyyyyxyyyyyyyyyyyyyyyyyyyyyyyzyyyyyyyyyyzyyyzyxyyzyyyyyxyzyyyyyyyyyyyyzyzyyyyyzzyyyyyyzyyyzyyyyyyyyzyyyyzxyzyzyyyyzyzyyyyyzyyyyyzzyyyyzyzyyyzyyyyzyyyzyyyyyzxyzyzyzyyzyzyyzyyzzzyzyzzyzyzzy{zz{zyyyzzyzzzzzyyyxyyyyyxyyyyyyxyyyyyyyyyyyyyyyyyyyyyyxyyyzyxxzyxxyyxyzyyxyyyyxyyxyyyzyyxyyzyxyxyyyzyyyyyyxyyyxyyyyxyyxyzyyyyyyyyyyxyyyzyyyyyyzyyyyzyzyyyyyyyyyyyxyyyxyyyyyyyyyyyzyyyyyyyzyyyyyzzyyyyyyyyyyzyyyyzzyyyzzyyyyyyyyyyyyyyyyyyyyzyyyyyyyyzyyyyyyyyzyzyyyyzzyyyzzyyzxyyyyxyyyyyyyyyyyyyyyyyzzxyyyzyyyyyzyyxyyyyyyyyyyyyyxxyxyyyxyyyyyyyxyxyyyyxyyyyzyyxyyzzxyyyyyyyxyyyyyyxyyyyxyyyyxyyy{yyyzyyy{yzyyyy{yyyyyz{yyxyzy{yxyzyyy{y{yyyyy{yyyyzyz{yyzyzzz{yyyzzzy{yyyzzxyyyzyyyyyyyzyzxzzzyzyzyyz{yy{zz{zyzz{zyyzzz{{{zyz{zyyz{zy{yz{zyyy{y{zzzyy{zzyzzyz{yzzyzzz{zzyzzzy{yzyz{yzyz{zzyyz{zzyzyyyy{yyyyy{yyxyzy{{xyzyzz{{yyyzz{y{yyyzyyyyyyy{yyyyyzy{xyzyyyyyzyy{yxyyz{zyyxyyyyyyx{y{yyy{yyyy{{xyyy{{yyxyxzyyyyxyyyxyyy{zyyzyzy{zzyyzy{yyyyyz{yyyyzy{yxyzyyy{y{zyzyzy{yz{zy{{z{zyzz{{yyzzz{{{zyz{zyyz{zy{yz{zyzy{y{zzzyzz{zzzzzz{zzzzzzz{zzzzzzz{zzzz{zzzz{zzzzz{zzyzyyxzzyzyzyzzyzyyzzzyzyzzzzyyzzzz{{zyzzzyyzyzyyyzyzyyyyy{yyyyyy{zyyyyyyyyzyzzz{yyyzzzy{yyyzzyyyzzyyyyzzyzyzy{zyyyyy{zyy{zyyz{zyzzz{yyyzz{y{yyy{yyyy{{yyyy{{yzyzy{zyzyzy{zyzyzyzzyzyzzz{yyzzzz{{zyzzzyyzyzyyyzyzyzyzy{yyyyyy{yyyyzy{yyzyzz{{zyyzz{y{yyyz{yyyyzy{yyyzyzy{z{{{{{y{{{{yz{{{{zz{{{{{{{{{{{{{{{{{{{{{z{{{{{z{{{z{yy{yyyyyy{zyy{zyz{y{yzzz{yyyzz{y{yyy{{yyy{zyyyy{zyzyzyzyyyyxyzyyxyyy{zyyzyyyyyyyyy{yyyyxzzyyxyyy{yxyyyyy{yzyyyyyyzzyyyyy{zyyzyyyzyyyyy{yyyyyzzyyyzzy{yyzzyyy{yzzyyyyyzzyy{yy{zz{zyyyyyyyyy{y{yyy{zyyy{{y{yy{{yyy{yzzyzyzzzzyzyyz{zzyzzzzzzyzzz{{{zyzzzzyzyzz{zzyzyyz{{{z{z{zy{z{z{{y{{z{zy{z{z{z{z{{{z{z{{y{z{zy{yz{zy{y{xyyy{yyz{yz{{{{yyyzyyyyyzzy{yyzyy{zyyyzzyyyyy{yyyyzyyyy{zyyyy{yyyyyyzyzyyyyzzzy{yyzzy{zyzyzzyyyyy{yyyyzzyyy{zyyyy{zyyyyy{zzzyyy{zzz{zy{{z{zyzz{zzyyzy{z{yyzzyyy{zy{yy{zyzy{yz{zzyzyz{zz{yyzz{{zzyzzzzyzyz{{{zyzzzyz{zyyzz{zzyyyyyz{z{zyyz{z{{y{{z{zy{z{{z{z{z{{{z{z{y{z{{y{yz{{y{y{xzzyyyyyzzyyyyyzzzyzyzyyzyyyyyzy{yyyz{yyyyyyyyz{yyyyy{zyyyyy{zyyyzy{{zyzyzz{yyyyzy{y{yyyz{yyyyy{yyz{yzy{xyzyzyzyyzyzyyyyzzyzyyzyzyyzyzz{{zyzz{yyzzyyyzz{yyyyyzzyyyyyzzyy{yyy{z{zyyyy{zyyyy{y{yyy{{yyy{yyyy{{yyyyy{{zzzz{{{zz{z{z{{{{{z{z{{z{z{{{{{z{{{{z{{{zyz{{{zyzzyyzzyyyyyzzyyyy{{zzzyyy{{zyyyy{y{yyyz{yyyz{y{yz{yyy{y{yyyyyy{zyyyzy{{yyzyzz{yyyyzy{y{yyyzzyyyzzy{yyyyzy{xyzyzyzyyzyzyyyyzzyzyyzyzyxzyzz{{zyzzzxyzzzyyyzzyyyyyyyyyyyyyzyy{yyy{y{zyyyy{zyyyy{yyyyy{zyyy{zxyyy{yyyyyyzyzyzyyzyz{yy{zz{zyyz{zyyzyz{{{zyz{{yyz{{y{yz{{yy{y{zzzzyz{zzzzzzz{zzzzzzz{zzzzzzz{zzzz{yzzz{zzyyz{zzzyyxzzyzyzyzzyzyyyzzzyzyyzzzyxzyzz{{zyzzzyyzzzyyyzzzyyyyyyyy{{{|zyzz{z{|x{{z{z{|yz{z{|}y{z{{{|yz{z{|z{{z{|z{zzzzzz{{{}zzzz{|{}z{{}{|{|zz{}{|}z{z{|{|zz{z{}z{{z{|z{zz{zzz{{{|zzzz{z{|z{{z{z{|~z{z{|}{{z{{{~~z{z{~{{{z{~{{zz}|{z{{}|z{z{{|}|z{{{{|}||z{{{|}z{z{{{|zz{z{|z}{z{|z{|z{|zz{{{}zzz{{|{}z{{}{|{|zz{}{|}{{z{|{|{z{z{}|{{z{||{|z}~|{{{}~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{|z{zz{||{z{{||{|zxz{||{{zxz{|yz{zy|}y{z{|z|zz{|{|z{{|{|zxzz{|z{zz{}zzz{{|{}z{{}{|{|zz{}{|}z{z{|{|zz{z{}|{{z{||{|z{~z{zz{{zzz{{|{|z{{{{|{|~z{{{|}{{z{{{~~z{z{~|{{z{~|{|z}|z{z{{}}{z{{|}}z{{}{|}||z{}{|}{{z{|{|{z{z{}|}{z{||{||}~|{|{{}~|||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{|{|z}zz{z{{}{z{zyzz{y{{{{|}z|z{{{|}y{z{{{|zz{z{|y}{z{|z{|z}||{z{{}||{|{z{||{{{{|}||z{{{|}y{z{|{|zz{|{|z}{|{|z{|z}|z{z{{}|z{|{{{|z}{{{|}||z{{{|}z{z{|}||z{|}|y}{|}|z{|z}zz{z{{}}z{z{{|}z{{}{|}||z{}{|}z{z{|{|zz{z{}z}{z{|z{|z}~z{z{{}~z{z{{|}z{{{{|}|~z{{{|}{{z{{{~~z{z{~{}{z{~{{||}~|}|}}}~|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||zzzzzzzzz{zzzzzzz{z{zyzzzzzzzzz}{zzzz{|{zzz{{{yzz{z{zzzz{{z{zzz{{zzzz{z{z{zy{z{zzz{zz}{z{zz{|{{zz{{{zzz{z{zzz{||{z{{{||{|z{z{||{{zz{|zz{zz|}{{z{|{|{z{|{|{{{|{|{zzz{|z{z{{{|z{|{{z{|z}{{{{|{z{{{|}{{z{|}||z{|}|{{{|}|{{zz{|z{zz{{}zzz{{|{}z{{}{|||z{}{|}|{z{|{|{z{z{}|{{z{||{|z}~{{{{~}~{{z{~|}~z{~}~|}~{~}~|}{{{~|~~~{{z~~{}{z{~{~|yyyz{yyyzzy{|}z|}z}{}y{zzzzzz{zzzzzzz{zzyzzzz{|zzzzzz}zzyzzzzzzzzzz{zzzzzzzz{|z{z{{{|zzzz{z{{z{{z{z{|zz{z{|}z{{{{|zz{z{|z{{z{|z{zz{|z{zz{{|zzz{{|{|z{{{{|{|zz{{z|}z{z{{|zz{z{||{{z{||{|z}zz{z{{}{z{z{{|}{z{{{{|}||z{{{z}{{z{{|{z{z{|{}{z{|{{|z{||{z{{{}|{|z{|{}|{{}{|{|zz{}{|}|{z{|||z{|{}z{{|{|zzzz{~z~z~{~~z~|z~|~~z}~}~|~~~z~}~|}{~z~|}~z~|}~{{~|}~{{zz{|z{z{{{|y{|z{z{|y}{z{z{|zz{z{|}y{z{|}||{z{|z{{|}|z{zz{|z{z{{{|z{|{{|{|z}{{{|{|zz{{{|}y{z{|}||zz{||{{|}||{|z}|z{z{{}|z{|{{|}|y}{{{|}||z{{{|}{{z{|}||z{{|{}{|}|{{|z{|z{z{{{}z{|z{|{}z}{}{|{|zz{}{|}z{z{|}||z{|}z{{|}zz{zz{~z{z{{{~z{|z{z{~z}{z{z{~~z{z{|}z{z{|}|~z{|}z{{|}~z{zz}~|}|}}}~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||z{||{z{{{||{|{{|{||{{{{|{|zz{{{|}z{z{|{|zz{|{||{z{||{|z}||{z{{}||{|{{|}||{{{{|}||z{{{|}{{z{|{|{z{|{|{}{{|{{|z{||{z{{{}|{|z{|{}|{{}{|{|zz{}{|}z{z{|{|zz{|{}z{{|zzzzz{~|{z{{{~|{|z{z{~|{{z{z{~~z{z{|}z{z{|{|~z{|{|z{{|{zzzz{||{z{{{}|{|z{|{}|}{}{|{|zz{}{|}{{z{|}||z{|}}{{{|}|{zz}~|{|{{}~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||{xxxxxxxxyxyxxxxyyxxyyxxyxyyxyxxyyxxxyyxxxxyyxxxxyyxxyzyyyyyxyzyyyyzxyzyyyxzyxzyyyzyzzyyyzzxzyyyyxxyyyxzxxzyyyxyzzxyyyyxzzxyyzyxyyyzxyxyzyyxyyzxxxyyyyzyyzyxzyzzyyyyzzxyyyyzzzzyyyyzzyzyyyzyzyyyyzzyzyyyyxyyyyzzxyzzyyyyyzzyyyyzyzyyyzyzyyzyyyzyzzyyyzzyzyyyyyzyyyyzyyyyyxzxxxyxzzxxxyyxzzxyyzyyzyyyyyyxzyyyyzzxxxyyyxzxyzyxzyzzyyyyzzzyyyyzzzzyyyyzzyzzyyzyzzyyyzzxzyyyyxyyyyzzxyxzxyyyyxzyyyyzyyzyyyyzyyzyyyzxzxyyyzzxzyyyyxxyyyzzxyzzyyyyyzzyyyyzzzzyyyxzyxzyyyzyzzyyyzzxzyyyyxxyyzxzzyzzyyyyyzzyyyyzzzzyyzyzzyzzyyzyzyyyyzzyzyyyyyzyyyzzyyzzzyyyyzzzyyyzzzyyyyzzzzzyyzzyzzzyyzzzzyyyyyzyyyyzyyyzyzzyyyyyzzzyyyzzzzyyzyzzyzyyyzyzzyyyzzxzyyyyxxyyzzzxxzxyyyxyyzxyyyyyzxyyzyyyyyzxyyyyyyxyzyyyxyyyyyyyzyyyxzxyxyxyzzxyxyyzyxyyzyxzyyyyyxyzyyyyyzyxxyyzxzyyzyxzyzzxyyyyzzzyyyyzyzyyzyzzyzyyyzxzxyyyzzxzyyyyxzyyyzzxyzzyyyyyzzzyyyyzzzyyzyzzyzyyyzyzzyyyzzyzyyyyxzyyyzzxyzzzyzyyzzzzyyyzzzyyzzzzzzzyzzzzzzyyzzzzyyyzzzyyzyzzzzxzxyxzxyyzyyxzyyyzxyzyyyyyzyyyyzzyyyzzyyxyyzyzyyzzyyxzyyyyyxxzyyyyyyyzyyyyyyyzzyyyyxxxyyzzxyyyyyxzxyyyyxyzzyyyyyzzzyyyyzzzzyyyxzyzyyyzyzzyyyzzxzyyyyyxyyyyzyyzzyyyyyzzzyyyyzzzzyyyyzyzyyyzyzzyyyzzyzyyyzyyyyzyzzyzzyyyyyzzzyyyyzzzzyyyyzyzyyyzyzzyyyzzxzyyyyyxyyzzzzyzzzzzzyzzzzzyzzzzzzzzzzzzzzzzzzzzzyzzz{zyzzzzyzzzzzzyzzyyyyyyzzyyyzzyzzyzzyzyyzyyzyzzyyyzzxzyyzyyxyzzyzyyyzyyyyyzyzyyyyzzyzyyyyzzyzyyyyzyyyyzzyzyyyyyyyyzzzzyzzzyzyyzzzzyyyzzzzyyyzzzyzyyyzzyyyyzzyzyyyyzyyyyzzzyzzzyzyyzzzzyyyzzzzyyzzzzzzzyzzzyzyyzzzzyyyzzzyyzzzzyzzzzzzyzzzzzyzzzzzyzzzzzzzzzzzzzzzzzzzzzyzzzzyzzz{zyzzyyyyyzzzyyyyzzzzyyzyzzyzzyyzyyyyyzzyzyyyyyyyyyzzzyyyyyyzzzzyxzxyyyxxzzyyyyyxzzyyyzxxzxzyxxxyzyyxyyzxxyyyxzxyzyxzyzzyyyyyzzzyyyyzzzzyyzyzzyzyyyzyzzyyyzzxzyyyxxyyzzzxxyyyyyxyzyyyyyyxzyyyyzyyzyzzxyxyzzzxyyzyyxzzyyyyzzyzyyzyyyyyzyzyyyzzzyzyzzyzzyzyyyzyzyyyyzzyzyyzxyyzzzzxyzzyyyyyxzzyyyyzyzzyzzyzyyzzyyzyyzyyyzzyzyyzzyyyzyzxyzzyyyyyzzzyyyyzzzzyyyyzzyzyyyzyzzyyyzzxzyyyzxxyyzzyxyyyxyxyzyyyxyyxzyyyyzyxzyzyyyxyyyyyyyyyyxyyzyyyzyyyxxyyyxyxzyyyyyyyzyyyyyyyzyzyyyyyzyyyyzxxyyyyzxxxyxyzyzzyyyyyzzzyyyyzzzzyyyyzzyzyyyzyzzyyyzyyzyyyzyzyyzzyyyxzyyyyyzyzyyyyzzyzyzzyzzyzzyyzyzyyyyzyyzyyzzyxyyzzzyxxxyxxzyxyyyyyzxyyyyyyyyyyyyyyxxyyyzzxyyyy{xxyyzyyyyyzyzyzzyzyyz{{zyyyyz{{yyzzyz{{zyzyzzz|zyyy{yyyyzzz{yzzyzyzzyzyyzzzzyyyyzzzyyzzyzzzzyzyzzzyzyyy{yyyyzzyzy{zzyz{{yzzzz{zzzz{zz{z{{zyzz{yzzyzz{{{yzz{{zzz{z{{zy{yzzyz|yzyy{{{|yyzy{{{zz{zy{{{{yzy{z{|zyzz|zyyz{{z{yyyzyzyzyzzzyzxyzzzzxyyyzzzyyzzyzzzyyzyzzzyzyyy{xyyyzzyzx{yzyyy{yzyzyyz{yzyyzyz{yzyyzxzyyyyzy{{yyzy{xyzyzzyzyzyzyzyzyzyyz{{zyyyyz{{yyzzyz{{zyzyzzz|zyyy{xyyyzzz{y{zzzzz{{zzzz{zzzz{zz{z{{zzzz{zzzzzz{{{zzz{{zzz{z{{zy{yzyzyz|yyy{{{|yzzy{{{zz{zy{{{{yzy{z{|zyzz|zyyz{{z{yyzyzzzzzz{zzzzz{{zzyzzz{{yzzzzz{{zzzzz{z|zzyz{zzyzz{{{y{yzyzyz|yzyyyz|yy{yzzz{{zzyzzzyyzyz{z{zyy{{yyy{{zyzy{yzyzyz{yzyzzz{yzyyzzz{yzzyzzzyyzyzz{{zyzy{yyzyzzyzyzzzzzz{zzzzyz{zzyzzz{zzz{zzz{zzzzzz{zyzzyz|zzyz{{{zy{zzzzz{{zzzzz{{zz{zz{{{{zzzz{{zzzzz{{|zzz{{zzz{z{{{z{zzzzyz|zzyz{{{|zzz{{{zz{zz{{{{zzz{z{|zzzz|zzzz{{z{zzy{yzyzyz{yzyzzzz{yzyzzz{yzzyzzzzyzyzz{{zyzz{yyzzzzyzyzyzyzyzzyzyyz{{zyyyyyyyyzzyz{{zyzyzzz|zyyy{yyyyzzz{y{yzyzyz|yzyyz{{|yy{yyy{{zzyz{{zyzyz{z|zyy{{yyy{{zz{y{yzyzyz{yzyzz{{{yzyyzz{yzzyz{{zyzyzz{|zyzy{yyzyzzz{yzzzzzz{zzzzyz{{zzyzzz{zz{zzz{{zzzzz{z|zzyz|zzyz{{{{{{{{{{{{|{{{z{{{|{zz{{{{z{{{{{{|{{{{{{|{{{z||{{z{|{{zyzyzyzyzzyzyyz{{zyy{yz{{y{zyz{{zyzyz{z|zyy{|zyy{{zz{yzzyzyz{zzyzyz{zzzyzzz{zzzzyyyyzzyzz{zzyzyz{zzyzz{{zyzzyzyz{zzyzyz{zzzyzzz{zzzzyyyzzzyzz{zzyzyz{zzyzz{{zz{zzzyz{|zyzyz{z|zy{zz{z{{zzzyzzzyzz{z{yzy{{zzy{{{{zz{zzzzz{{zzzz{{z{zzzz{{z{z{zz{z{zzz{{{{zzzz{zzzz{{{zz{{z{z{{{{z{z{{{{{z{{{{{{{{z{{{z{z{{{{|z{z{|{{z{{{{{yyyz{yyz{zz{{{{xzyyyxyyzyyyyyzzyyy{yyzyy{zyyxzzyyxyy{zxyyy{xyy{zyyzyzyzyzyzzyzyyzzzzyy{yzzzy{zzyzzzyyzyz{zyzyy{yyy{zzyzyzzzzzz{zzzzyz{{zzy{zz{{z{zzzz{zzzzzy{z|zzz{zzy{z{{{x{zzyyyy{zzyzyzz{zz{yzzz{{zyyzzzzyyyz{{{yyz{zyz{zzyzy{{z{yz{|{z{zz{{|{z{{z{{{{{y{z{{z{y{z{{{y{z{zzz{{{{zy{yzyzxz|yzyyzzz|yyyyzzz{yzzyzyzyyzyzzz{zyyz{yyyzzyzy{zzzzz{|zzzyz{{|zyzzz{{{zzzzz{yzzzzy{z|zzyz{zzzz{{{x{yzyyyy|yzyzyyz|yzyyzyz{yyyyzyzzyyyzz{{yyzz{yyzzyyzy{zyzyzz|zyzyyz{|zy{zyz{{{{yzyz{zzyzy{y{yzy{{zzy{zzzy|z|z|zz|{|z{{{||z{{z|{||{{|z|{{|z|z{{{||z{{|{z{{{z{yy{zyzyz{|zyzyz{{|zyzzz{{{z{yzz{{zzyzz{y{yzyz|yzyz{{{zyyyyzz|{{y{{z{|{y{z{z{|y{{z{z{|yz{z{|}z{z{{||yz{{{|z{{z{z{zz|{{z{{{{|{{{z{{{|z{{z{{{|~z{z{|}z{z{{|~~z{{{~z{{|{{{{||{{{{||}|{{{{||}|y{{{||}||{{{||}z{{{{||y{{{{|z}{|{{{{||{{{{{|{|{z{{{|{|z{{{{|{|z{{{{|}z{{{{||z{{{{||{{|{{{{z}{{{{{|{}{{{{||{}{{{{||{|z{{{{|}z{{{{||y{{{{|z{{~|{|||~|{|{||}~|{||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{{{zy|z{z{z|z{z{{z{|z{|z{z{|z}{z{y{|zz{z{z}z{z{|}x|z{|}zz{{~{{z{zzz{z{{{{|{{{z{{{|z{{z{{{|~z{z{|}z{z{{|~~z{{{~z{{|{{{{{||{{{||}|{{{{||}|z{{{||}||{{{||}z{{{{||z{{{{|z}{|{{{{{|}{{{{|{}{{{{||{}{{{{||{|z{{{{|}z{{{{||z{{{{||{{~|{|{{|~|{{||}~|{||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{{z{|{{{{{||{{{{zz{zy{{{|{|z{{{{|{|z{{{{|}z{{{{||z{{{{||{{|{{{{{||{{{{{{|z{|{{|{|z}{{{|{|z{{{{|}z{{{|}||{{|}||{{|{{{{{|}{{{{{|}{z{{||{}{{{{||{|z{{{{|}z{{{{||z{{{{||{{~{{{{{|~{{{{{|{z{{{{|{|z{{{{|{|~{{{{|}z{{{{|~~{{{{~|{{|{{{{{|}{{{{||}}{{{||}}{{{{||}||{{{||}z{{{{||y{{{{||}{~|{|{||~|{|{||}~|||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{|{z{{{{{|{{{{{||}{{{{zzzzy{{{||}z|{{{||}z{{{{||z{{{{|z}{z{{{{{|{{{{{||}{{{{{zz{z{{{||}||{{{||}z{{{{||z{{{{|z}{|{{{{{||{{{{||}|{{|{|{|z}{{||}||{{{||}z{{{|}||{{|}|z}{|{{{{{|}{{{{||}}{{{{||}{{{{||}||{{{||}z{{{{||z{{{{|z}{~{{{{{|~{{{{||}~{{{{||}z{{{||}|~{{{||}z{{{{|~~{{{{~z}}~|}|}||~|}|}}|}~|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}|{zz{z{zz{z{z{{{z{z{zz{{z{z{zzzzzzz{z{z}z{z{z||zz{z{zzz{zz{z{zz{z{z{{{z{z{zz{{z{z{{zzzzzz{z{z}z{z{z||zz{z{zzz{|{{{{{z|{{{{{{{|{{{{{{z|z{{{{{|z{{{{|}{{{{{||{{{{{|z{{|{{z{zz|{{z{{{{|z{|z{{{|z}{z{{|zz{z{|}z{z{|}||z{|}|z{{|{{{{{|}{{{{{|{}{{{{||{}{{{{||||{{{{|}|{{{{||z{{{{||{{~{{{{{|~{{{{~|}~{{{{~|}~{{{{~|}~{{{~|}z{{{{~~~{{{{~{}yyzz{yz{|}z{|}z|}z}z}y|{{zyzz|{yz{{z{|{z{z{z{|z{{zzz{|zzyz{|}zz{{||zz{{{|z{{|{{z{zz|{{z{{z{|zz{z{z{zz{{z{z{|zz{z{|}z{{{||zz{{{|z{{|{{{{{||{{{{{|{|{z{{{|{|z{{{{|{|z{{{z|}z{{{||z{{{{||{{z{{{{{|z{{{{||}z{{{{||}zz{{{||}||{{{|z}z{{{||z{{{{|z}y|{{{{{z}{{{{z|{}{z|{||{}|{{{||{|z{{{{|}|{{{|||{{|{{z{{~{~{~{z~{~{~{|~~{~|{~|~~{}~{~|~~~{~{~|}z~{~|}~{~|}~z{{|{{z{zz|{{z{{z{|y{|z{z{|y}{z{z{|zz{z{|}z{z{|}||{{{|z{{|{{{{{||{{{{{|{|{{|{{|{|z}{{{|{|z{{{{|}z{{{|}||{{{||{{|{{{{{||{{{{||}|{{|{||}|y}{{||}||{{{||}z{{{|}||{{{|z}y|{{{{{z}{{{{{|{}{{|{||{}{}{{||{|z{{{{|}z{{{|}||{{|{z{z~z{z{zz~z{z{{z{~z{|z{z{~z}{z{z{~~z{z{|}z{z{|}|~z{|}z{{~|}|}||~|}|}}|}~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}|yzyyyyyyz{yyyxzzz{yyyy{zzzyzyy{zz{zyyyzzxyyyy{xyyxyzzyz{zzzzz{y{zzzz{{y{zzzz{{y{zzzz{{y{{zzz{{yzzzz{yyzzzz{yzzzzzzz{z{zzzyz|z{zyzz{|zzzzzz{|z{zzzzz{{zzzz{yyzzzzz{zzzzzzzzz{zzzzzzz{zzzz{zzzz{zz{zz{zzzzzzyzzyy|yyzyz{zyz{{zzzzz|{yzzz{z|{zzzz{zz{z{zz{z{|zzzz{zyzzzz{{{zzz{zyzz{z{{z{z{z{zz{{z{zzzz{{z{z{{z{{y|{z{z{{z{zzz|zyzzz{{zyyy{{yzzyyyyzz{yyxyzzz{yyyy{zyzzzyy{zz{zyyyzzyyyyz|yyyyz{zyz{{zzzzz{{zzzz{y{{zzzz{y{{zzzz{y{{{zzz{yyzzzz{yyzzzz{yzz{zzzzz{{zzzz{{z{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{yzzzzzzzz{zzzzzz|z{zzzz{|zzzzzz{|z{zzzzz{{zzzz{yyzzzzz{z{{zzzzzz|{zzz{z|{zzzz{zz{z{zz{z{|zzzz{zyzzzz|{{zzz{zyzz{z{zzz{z{zzz{{z{zzzz{{z{z{{z{{z|{z{z{{z{zzz|zzzzz{{zyy{{zzzzzzzzzz{zzzzzz{zyzz{zzzzzzz{zz{zzzzzzyzzzz|yyzzz{zyz{zzzzzzz|{zzzzz|{zzzz{z|zzzzz{z{{zzzzzzyzzyz{{{zyzzzyz{{zzzzzz{{zzzz{{{zzzz{z{{zzzz{z{{{zzz{zyzzzz{yyzzzz{yzz{zzzzz{{{zzzz{{{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{yz{{zzzzz{|{zzzz{||zzzz{|z{z{zz{|{|zzzz{{{zzzz{{{zzz{z{zz{z{z{z{z{z{zz{{z{zzz{{z{z{{z{{z|{z{z{{z{zzz|zzzzz{{zz{{z{{zzzzz{{{zzzz{{{{zzz{{{{zzzz{{z{zzzz{{yzzzz|yyzzz{zyzzzzzzzzzz{zzzyzzz{zyz{zzzy{zz{zz|zzzzzzyzzzz{yyzzz{zyz{zzzzzzz|{zzzzzz|{zzzzz|zzzzz{z{{zzzzzzyzzzz{{{zzzzzyz{{zzzzzz{{zzzz{{{{zzzz{{{zzzz{z{{{zzz{zyzzzz{yyzzzz{yz{{zzzzz{|{zzzz{{|{zzzz{{{z{zz{{{|{zzz{{yzzzz{{{zzz{{yzz{z{z{z{z{z{zz{|z{zzzz{|zz{{z{|z|{z{z{{{{zzz|zzzzz{{{{{z{zzzzzz{|{zzzzz||{zzzz{||zzzz{|{{zzzzz{{zzzz|{{zzz{z{zz{zzzzz{z{zzzz{|z{zzzz{|z{z{y{zz{zzzz{{{zzzz|yyzzz{z{zz{zzzzz{z{zzzz{|z{zzzz{|z{z{z{zz|zzzz{{{zzzz|yyzzz{z{z{{zzzzz{|{zzzz{||{zzzz{||{z{zzz{{zzzz{{{zzzz|{{zzz{z{z{{zzzzz{{{zzzz{|{{zzzz{|{{z{zz{{{{zzz{{{zzzz|yyzzz{{{|{{{|{|{{{|{|{|||{|{|z{||{|z{|{|||{{|{|{{|{|{|{y{|{{{{{zz{z{zzz{{{z{zz||{{z{zz||{{z|{z||{|z{z|{{zz{z|yyzzz|{{z{{z{z{zz{{z{zz{z{{zzzz{z{{z{{z{z{|{{z{yz{zzz|zzzzz{{yz{{z{z{zz{{z{zz{z{{zzzz{z{{z{{z{z{|{zz{zzzzzz|zzzzz{{zz{{z{z{zz{{z{zz{z{{zzzz{z{{z{{z{z{|{z{{zz{zzz|zzzzz{{zz{{z{z{zz|{z{zz{z|{zzzz{z|{z{{z{z{|{z{zzz{zzz|{{zzz{{z|{|{|{|{{||{|{|{{||{|{{|{||{{|{|{{|{{|{|{|{|z|{{{|z{{yyyy{{yy{{z{{{{{yzzyyyyyzz{yyyyzzz{yyzy{zzzz{yy{yz|zyyyzzyyxyz{yyyyzzyzzzzzzzzzz{zzzzzzz{zzzz{zzzz{zz{zz|zzzzzzyzzyz{yyzzzzyz{{zzzzz{{{zzzz{{{{zzzz{{{{z{zz{{{|zzzz{zyzzzz{yyzzzzyz{zzzzzz{|{zzzzz||{zzzz{||zz{zz{|{|zzzzz{{zzzz{{{zzzz{z{|z{zzzz||z{zz{{||z{zz{{||z|{z{{{|{z{z{{yzz{z|{{zzz|yzyzyz{{|{zyz{{||{y{{{{||y|z{{{|{{{z{{{||z{z{|}y{z{|{}y||||||}||||||}|||||||}|||||||}|{{||||}|}|||||}{||||{}z|||{|{{|{|{||{||{|{{|{||y||{|{|{{{|{|{|||{|{|}y{|{|{}{{|{{{{{|{{{{{{||{{{{{{||z|{{{{|{{{{{{{||{{{{|}z{{{|{}z||{}}{{}{z{}|{}}{}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}||||||}|||{|}}~|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~z{|{|{{z}z}z}z}z}zz}}z}{z}z}}z|}z}z}}{z}z}z||}z}{|zzz}{|{}z|||||||}|||||}|||||||}|||||||}|{{||||}|}|||||}{||||{}z||{|{|{{||{||{||{|{{|{||z||{|{|{{{|{|{|||{|{|}z{|{|{}{||{}{}{{}{{}|{}}{}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}|||||||}||||}}~|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~{|{|z|{{{{{{|{{{z{|{{z{{{{||z|{{{{|{{{{{{{||{{z{|}z{z{|{}z{|{}{}{{}{}{}{}}z}{{}{}}z|}{}{}}{{}{}{||}{}{|}z{}{|{}z||{|{|{{|{|{||{|{|{{|{||{||{|{||{{|{|{|~|{|{|}|{|{|{~~|||||||}||||||}||||||}|||||||}|{{||||}|}|||||}{||||{}z||{}{}{{}{}{}|{}}}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}|||||||}|||||}}~||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~|{|||{|{|{{|{|{||{||{|{zz|{y||{|{|{{{|{|{|||{|{|}z{|{|{}z||{|{|{{|{|{||{||{|{{z|{z||{|{|{{{|{|{|||{|{|}z{|{|{}z||{}{}{{}{}{}|{}}{}{{}}}z|}{}{}}{{}{}{||}{}{|}z{}{|{}z||{|{|{{|{|{||{~|{|{{|{|{||{|{||{{|{|{|~|{|{|}|{|{|{~~|||}|}|}}|}|}|}}}|}||}}}||}|}}}}{|}|}}|}}|}||}||}||{}}|||||||}|||||}}~|||||}}~||||}}~|}|||}}~~||||}}}||||}~~{}|{|||||}||||||}|||||||}|||{zzz|{{||||}{}|||||}{||||{}{|{|||||}||||||}|||||||}|||{|zz|{{||||}|}|||||}{||||{}{|||||||}||||||}|||||||}||||||{|{{||||}|}|||||}{||||{}{|||}|}|}}|}|}|}}}|}||}}}}||}|}}}{|}|}}|}}|}||}{|}||{}{|||||||}||||||}~||||||}~||||||}|{||||}|~|||||}|||||{~~||}|}|}}|}|}|}}~|}|}}}}~|}||}}}~}}|}}}~~|}|}}}}}|}|}~~}||{|{|{z|{|{||z}|{|{{|z}|{{|{|z}|{|z|z|}|{|{|}|{|{{{}}||{|{|{{|{|{||{}|{|{{|{}|{||{|{}|{{{|{|}|{|{|}|{|{|{}}||{|{|{{|{|{||{}|{|{{|{}|{||{|z}|{{||{|}|{|{|}|{|{|{}}||{|{|{{|{|{||{}|{|{{|{}|{||{|{}|{{|{{|}|{|{|}|{|{|{}}||{}{}{{}{}{}|{}}{}{{}{}}{|}{}{}}{{}{}|}}{}{|}|{}{|{}}}}|}|}|}}|}|}}}~}|}||}}~}||}|}}~}||}|}}~}|}|}}}|}|||~~{z{|}yz{|}y{|}z|}z}|}z|{{{{z{|{{yz{{||yz{{{{||z|{{{{|{{{{y{{||{yz{|}zz{|{}zz|{{{{{{|{{{z{{||{z{{{{|{z|{{{{|{{{{{z{||{{z{|}z{{|{}z||{|{|{{|{|{||{||{|{{|{||z||{|{|{{{|{|{|||{|z|}z{||{}z|||||||}||||||}}||||||}}||{|||}}|{||||}|}||||{}||||{}}{{{}{}{{}{}{}|{}}{}{{}{}}z|}{}{}}{{}{}{||}{}{|}|{}{|}|||~}~}~~}~}~}|~~}~}~~}~~}~|}~}~~}{~}~}~~~}~}~|}|~}~|{~||{{{{{|||{{{{||||{{{{||||{{{{|||||{{{|||}{{{{||y{{{{|}y{|z|z|{|{|{|z|||{|{|{{||z|z{|{||z||{|{||z}|{|{||z{|{{|}~{}}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}|}|~|}|}|}|~z}|}{|}{{||{{{{||{{{{{||{|{{{{||||{{{{|||||{{{|||}{{{{||y{{{{|}z{||||{||||{{|{|||{|{||||{||{{|||||||{||||}{|{|||{|{|{|}z|~|}||}}~|}|}||}~|{|}}|}~|}{|}|}z||}|}|}~}|}|}||y}|}{|}z}|}|}||~|}|}|}}~|}|}||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{{{|}z{||{|{|{||{|{||{||{|{z|{||{{|{|z|||z|{|z|}|z|z|z~{|{{|}z{~|{|{|{||{|{|||||{|{{||||{{|{|||||{|{|||}|{|{||z{|{{|}~{}|}|}|}~}}|}||~}|}|}}|~}|}{|}|~}||}|}|~|}|}|}|~z}|}{|}{{|||{|{||||{|{|||{|{||||{||{{|||||||{||||}{|{|||{|{|{|}z|~|}|}|}}~|}}||}~|{|}}|}~|}{|}|}|||}|}|}~}|}|}||z}|}{|}z}|}|}|}|~|}|}}}~|}|}||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{{|}z{~|}|}|}}~|}|}|}~|}|}}|}~|}{|}|}~||}|}|}~}|}|}||{}|}{|}z{||{|{|{~||{|{||||{|{{||||{{|{|||||{|{|||}|{|{||~{|{{|}z{~|{|{|{|~|{|{||||{|{{||||{{|{|||||{|{|||}|{|{||z{|{{|}~{}|}|}|}~}|}|}||~}}|}}|~}|}{|}|~}||}|}|~|}|}|}|~{}|}{|}{|~|}|}|}}~|}|}||}~||}}|}~|}{|}|}|||}|}|}~}|}|}||z}|}{|}z}|}|}|}|~|}|}|{}~|}|||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{|}z{||{{{{{|||{{{{||||{{{{{||{{{{|||||{{{|||}{{{{||z{{{{|}y{~|}|}|}}~|}|}||}~|}|}}}~|}{|}|}~||}|}|}~}|}|}||{}|}{|}z{||{|{|{~||{|{||~||{|{{|||{{|{|||||{|{|||}|{|{||~{|{{|}z{~|||||||~|||||||~|||||||||{|||||||||||||}||||||z|||{|}~|~|}|}|}~~|}|}||~~|}|}}|~~}{|}|~}||}|}|~~}|}|}|~z}|}{|}{}|}|}|}|~|}|}|}}~|}|}||}~|}}}|}~|}||}|}~|~}|}|}~~|}|}|~||}{{|||{|{|||||{|{|||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{{|||{|{|||||{|{|||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{{~|}|}|}}~|}|}||}~|}|}}|}~|}{|}}~||}|}|}~}|}|}||{}|}{|}{{|||||||~|||||||~|||||||~|||{||||||||||||}||||||~|||{|}z|~|}|}|}}~|}|}||}~|}|}}|}~|}{|}|}||}|}|}~}|}|}||z}|}{|}~}}|}}}}}~}}}}}}}~}}}}}}}~}}}{}}}~}|}}}}~|~}}}}}~~}}}}|~|}z|}|}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}|||{|z|}|}|}|~z}|}{|}y|}|}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}{|||}|}|}|~z}|}{|}z|}|}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}||||}|}|}|~z}|}{|}z|~|}|}|}~~|}|}||~~|}|}}|~~|}{|}|~~||}|}}~}|}|}|~{}|}{|}z|}|}|}|}~}|}|}||~}|}|}}|~}|}{|}|~}||}|}||}|}|}|~~}|}{|}z~~|}~}~}~~~}~}~|~~~}~}}~~~~}~~}~~~~|}~}~~~~}~}~~~}~}~|~~}}~}|}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~|}|}|||}|}|~~}~}|}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}}|}|||}|}|~~}~}|}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}||}|||{|}|~~}~}|}|}||~}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}|}}|||}|}|~~}~}}}}}}}~}}}}}|}~}}}}}}}~}}}}}}}~}|}}}}}~~}}}}||}}}{|~~~~|}~}~}~~~}~}~|~~~}~}}~~~~}~~}~~~~|}~}~~~~~}~}~~}~}~|~~{{{|}z{{|}z{|}z|}{}z}~~}~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~}~~~~~~}}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~}~}~~~~}~~~~~~}}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~}~~}~~~}~~~~~~}~}~~~~}}~~~~~}~~~~~~~~~~~~~~~~~~~~}~~~~}~~~}~~}~~}~~~}~~~~~~}~}~~~~}}~~~~~}~~~~~~~}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}}~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}}~}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}~~~~~~}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}~~~~~~}}}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}~~~~~~}}}~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~}~~~~~~~~~~~~~}~}~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}~~~~~~}~~~~~~}}}}~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}~~~~~~}~~~~~~}}}}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~}~~~~~~~~~~~~~}~~~~~~~}~}~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}~~~~~~}~~~~~~}~~~~~~}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~}~~~~~~~~~~~~~}~~~~~~~~~~~~~}~}~}~{{|z||~|}|||||}|||}}||}}|}|}}|||}}|||||}}||||||}||||||||||||||||||||}|||}}||}}|}|}}|||}}|||||}}||||||}|||||||||||||||~}~~~~}}~~~~}~~~~}~~}~~~~}~}~~~~}~}~}~~}~}~}~}}~}~}~}~}|}~~~|}}|}}}~~~~}~~}}~~~}}}}~~~}}}}}}~}}}}}}}|}}}}}}}|||||}|}|{~|{{}|~}~}}|}~}}|}||~}}|}|}|}}|}|}|}||}|}|}||||||}|}||~||{}|~}~}}|}~}}|}||~}}|}|}|}}|}|}|}||}|}|}||||~~~|}|{~~|}~~~}~~}~~~~}~}~~~~}~}~}|~}~}~}|}|~}~}|}|~~|~~~~|}~~~~~}~~~}~~}~~~~}~}~~~~}~}~}~~}~}~}~}|~}~}~}~|||||}|}|~~||}~}|}~}}|}~}}|}}|~}}|}}}|}}|}}}|}||}}}|}||{||{}||||}|||~}||{}|||~}|||||~}||||||}||||||||||||||||{|~~}||||~~||~}~~|}|~~~}|~|~~~}|~|~|{}|~|~||||~|~|||||{|~}~}|||~}}|~~~~|~}}~~~}}}}~~~}}}}}|~}}}}}||}}}}}}|||}}}}}}~}}}~~}}}~~}~}~~}}~~}}}}|~~}}}}}}~}}}}}}}}}}}}}}}|||~~~|}||}}|}~~~}}~~}|~~}|}|~~~}|}|}|~}|}|}|}||}|}|}||{{~~}|{||~~|{{}~~{{}|~~}|~{~~~}|~{~{{}|~{~{|{|~{~{|{||{|~|~||||~}||~}~~|~}|}~~|}}}~~~|}}}}|~|}}}}|||}}}}||||{{|{~||||~|||{~|~|~}|{|~~||{|~~|||||{~||||||||||||||||}}}}}}}~}}}~~}}|~~|~|~~}}|~~}}}|~~}}}}}}~}}}}}}}}}}}}}}}|||~|}|}||~||}~}~~}~}}|}~}}|}~~}}|}|}|}}|}|}|}||}|}|}||||~~~|||||}||~~|||~~|||~~||||~~||||||~||||||||||||||||{{~~}|{||~~|{{}~~{{}|~~{}|~{~~}|~{~{{}|~{~{{{|~{~{|{{|{|~|~||||~}||~}~~|~}|}~~}|}}}~~|}}}}|~|}}}}{||}}}}||{|{{|{}|{|||||{{}||{{}|{|{}||{{|{}|{|{{}||{|{|{||{|{|{||||||~|}||~||}~~|~}~}}||~~}|}||~~}}|}|~}|}|}|}||}|}|}||}||}}}}}~}}}~~}}|~~|~|~~}}}~~}}|}}~~}}}}}~}}}}}}}}}}}}}}}|||~|}|}|||||}~}~}}~}}||~}}|}|~~}}|}||}}|}|}|}||}|}|}||||||}||||~|||~}|~|~}||}~}||}||~}||}||}||}||||||}||||||{|~|~||||~}||~}~~|~}|}~~}|}}}~~}|}}}}||}}}}|||}}}}||||{{|{}|{|||||{{}||{{}|{|{}||{{|{}||{|{{}|{|{|{||{|{|{||||||}|}||}||}~}||}~}}||~}}|}||~}}|}|}|}}}|}|}||}|}|}||{|||~||||~||||~|~|~}|||~~|||||~~||||||~|||||||||||||||}|||}}}}|~}}}~~}}|~~|~|~~}}|~~}}|}|~~}}}}}}~}}}}}}}}}}}}}}|||~|}|}||}||}~}~}}~}}||~}}|}|~~}}|}|||}}|}|}}||}|}|}||||||}||||||||~}|||~}|||~}|||||~}|||||{}|||||||||||||||{{|{}|{|||||{{}||{{}|{|{}||{{|{}||{|{{}||{|{|{|{|{|{||||||}|}||}||}~}||}~}}||~}}|}||~}}|}|}|}}|}|}|}|}|}|}||{|||}|{|||||{|}||{{}|||{}||{||{}||{|{|}||{|{|{|||{|{||{{|{~||||~|||~~|~|~}|{|~~|||{|~~|||{|{~|||||||||||||||}||{|}}}}|~}}}~~}}|~~|~|~~}}|~~}}|}|~~}}}}}}~}}}}{}}}}}}}}}|||~|}|}|||||}~}~}}~}}|{~}}|}|~~}}|}|||}}|}|}|}||}|}|||||||}||||}|||~}|||~}|||~}|||||~}|||||{}||||||{|||||||zz{zzzz{||}{|{{||}z{z}{|{}}||{}}|||{}}||{|}}||{|{}}||{|{|}||{|{|{{|{{||}|{{}{|{}}||{}}|||{}}||{|}}||{|{}}||{|{|}||{|{|{|||}~~}}||||}|~}~}|~}|}~|~}|}|}~}|}|}|~}|}|}|}}|}|}|}|}}}}~~}}}}}}}}~}~}}~}}}~}~}}}}}~}}}}}}~}}}}}}}}}}}}}}}|||{}}|}|}|}{{{}|}|}}||}|}}|}|{}}|}|}|}}|}|}|}||}|}|}||||{}}|}|}|}|{|}|}|}}||}|}}|}|{}}|}|}|}}|}|}|}||}|}|}||||{}}}}|}|}|}|}|}|}}||}|}}|}|{}}|}|}|}}|}|}|}}|}|}|}||||{~~}}|}|}|}|}~}|~}|~~|~}|~|{~}|~|}|~}|~|}|}}|~|}|}|}}}}}~~}~}}}}}~}~}~}~~}}~}~~}~}}~~}~}~}~~}~}~}~}}~}~}~}{{{{{}|{{|{|{{{}}|{||{{z{}|{{{{}|{{{{{}|{{{{{{|{{{{{{{{{{{|}}{{|{|{{{}}|{|}|||{}}||{{}}||{{{}}||{{{{}||{{{{{{{{}~~}|{|{|{|{}}~|{}|}~{~}||{}~}||{|{~}||{|{|}||{|{|{{{|{|}}|{||}{|{}}||{}||}{}}|||{}}||{||}}||{|{|}||{|{|{|}}|}|}}}}}}}}}}}}}|}}}}}}}}}}}}{}}}}}}}}}}}}}}}}}}}}}}}|||}~~|}|}|||}|~}|}|~}|}|~}|}|}~}|}|}|~}|}|}|}||}|}|}|{{{{||}{{{z{{{{|}|{{|}||||}||{{}}||{{{}}||{{{{}||{{{{{zzz}~~}{z{{|z{{|}~{{|}{}~{}{|z}~}{|z{z~}{|z{z{}{|z{z{z|{{{|}}|||}}}||}}||}}}|||}}||{{}}}|||{}}}|}|||}}|}|}|||||}}}|}|}|||}|}}|}|}}{}}|}}}|}}}|}|}|}}|}|}|}||}|}|}|{}{||||}}}}|}|||}|}}|}|}}||}|}}|}|}}|}|}|}}|}|}|}}|}|}|}||{|}{}||||{}||{}}||{}||}}{}||||}||||||}|||||||||||||||zzz}~~}{z{{|z{{|}~{{|}{}~{|}{|z}}{|z{z~}{|{{z{}{|{{z{z|{{{||}||||}|||}}|||}|||}|}|||{{}||||{}}||||||}||||||||||}}}}}|}|||}|}}|}|}}|}}|}}|}|}}}}|}|}}|}|}|}}|}|}|}|{{{{{}|{{|{|{{{}}|{{}|{|}{}|{{|{}||{{{}||{{{{{||{{{{{{{}{|||||}}}}|}}||}|}}}}|}}|{}|}}|}}|}}|}}|}}|}}}|}}|}}}|}||{|}|}}|||{{||{}}||{}}|}}{}}|||{}}||||}}||||||}|||||||zzz}~~}{z{{|z{{|}~{{|}{}~{|}{|z}|}{|z{z}{|z{z{}{|z{z{z|{{{||}||||}|||}}|||}|||||}|||{{}|||||{}||||||}||||||||||}}}|}|}|||}|}}{}|}}{}}|}}{}|}}}{}|}|}}}|}|}||}|}|}|{{{{|}}{{|{|{{{}}|{{}}|||{}||||{}}{|{{{}}|{{{{}||{{{{{zzz{z||{z{{|z{{|}|{{||{||{||{{z{||{{z{z||{{{z{|{{z{z{z{}{|{||||}}}}|}|||}|}}|}|}}|{}|}}|}||}}|}|||}}|}|}}}|}|}|}||{|}{}||||{|||{}}||{}||}}{}||||{}|||||z}|||||||||||||||{{{||}||||}|||}}|||}|||||}|||{{}|||||{}|||||||||||||||||}}}|}|}|||}|}}{}|}}{}}|}}{}|}}}{}|}|}}{}|}|}|}|}|}|{{{{{}|{{|{|{{{}}|{{}|{{|{}|{{|{}|{{{{{}|{{{{{{|{{{{{{{{{{||}{{{{{{{{|}|{{|}|||{}|||{{}}{|{{{}}|{{{{{}||{{{{zzz{z||{z{{|z{{|}|{{||{|}{||{{z{||{{{{z||{{{{z{|{{{z{z{}{|z{||||}}}}|}|||}|}}|}|}}|{}|}}|}||}}|}|||}}|}|}|}}|}|}|||{|}{}||||{{||{}}||{}||}|{}||||{}|||||z}||||||{|||||||zz{{|zzz||{|{}}{|{|{|{z{|{{|{|}}}|{|}||{{|}||{||}||{|{}||{|{|}||{|{|{{|{|{|{|{|{{|{|}}}|{|}||{{|}||{||}||{|{}||{|{|}||{|{|{||||}~~|||}||||~}~|||~}}}||~}}|||~}}|||~}}||||~}}|||||}|}|}~~|}}}}|}|~}~|}|~}}}}|~}}}||~}}}|}~}}}|}|~}}}|}|}|{||{}}}||}|{{{{{}}|}}||{|}}|}||}}|}|}|}|}|}|}}|}|}|}||{||{}}}||}||{{{{}}|}}||{|}}|}||}}|}|}|}|}|}|}}|}|}|}||{||{}}}||}||}||}}}|}}||{|}}|}||}}|}|}|}|}|}|}}|}|}|}||{||{}}}||}||}||}}}|}}}|{|}}}}||}}}}|}|}}}|}|}}}}|}|}||||||~~}||}}|}|}}~}|}~}}||}~}}||}~}}|}|~}}|}|}~}}|}|}|}~|~||~~}~~}|~}~}~}}~}~~||~}~~}~|}~~}~}~~~}~}~}~~}~}~}~{z{{{|{{{||{{{{||{|{{|{{{{{|{{{{{|{{{{{|{{{{{{|{{{{{{{{{{|{|{|{||{{|{||}}|||||{{||||{|||||{|{|||{|{||||{|{|{|z|{{}{||||{|||||}}|||}|{|||}|||||}|||||}||||||}|||||||{|{{~~||||||||||}~|||}|{||~}||||~}||||~}|||||~}|||||||{||{}}}||}||}|}|}}}|}}|{|}}|}||}}|}|}|}|}|}|}}|}|}|}||}|{||{|}}||}||}|}}}}}|}}|||}}|}||}}|}|}|}|}|}|}}|}|}|}|{{{|{|{|{{|{{|{||}}|{||||{||||{|||||{|{|||{|{||||{|{|{|z|{{}{||||{|||{{}}||{|}|{||}|||||}|||||}||||||}||||||{{{|{~~|{{||{|{||}~|{||{|{{|{|{||~{|{|{~{|{|{|~{|{|{|{|{||{}{}||}{|}|}|}}}|}}}|{|}}}||}}}}|}|}}}|}|}}}}|}|}||{|{{}}||||||||||}}|||}||{||}||{|}|||||}||||||}||||||||}||{|{{}}||||||||||}}|||}}{{||}}|||}}||||}}|||||}}|||||||z|{{}{||||{|||{{}}||{|}|{|{|}||||}|||||}||||||}||||||{{{{{~~|{{||{|{|{}~|{||{|{{||{|{{|{|{|{~{|{|{|~{|{|{|{|{||{|{}||}{|}|}|}}}|}}{|{|}}{}||}}}|}|}|}|}|}||}|}|}||{|{{}|||||{|||||}}||||}|{|||||||||}||||}||||||}||||||{{{{{}}|{{||{|{||}}|{|}{|{{|}{|{{|}{||{}{|{|{|}{|{|{|{|{|||{||{||||||{|||||}}||||||{||||||||||||||||||||||||||||{{{{{~~|{{||{|{|{}~|{||{|{{||{|{{||{|{|{{|{|{|~{|{|{|{|z||{|{}||}{|}|}|{}}|}}{|{|}}{}||}}{}|}|}}|}|}||}|}|}||{||{||||||{|||||}}||||||{|||||||||||||||||||||||||||||z|{{}{||||{|||||}}||||}|{|||{|||||}{||||}|||||}||||||{{{{{}}|{{||{|{||}}|{|}{|{{|}{|{{|}{|{|{}{|{{|}{|{|{|{|{||||{|{{||{|||{|{|{|}|{|{||{{|{||{|{{||{|{z||{|{|||{|{|{|{{{{{~~|{{||{|{|{}~|{||{|{{||{|{{||{|{|{|{|{|{|{|{|{|{|z||{|{}||}{|}|}|{}}|}}{|{|}}{}||}}{}|}|}{}|}|}|}|}|}||{|{{||{|||{|{|||{|{|{||{{|{||{|{{||{|{|||{|{|{|||{|{|{{{|{|{|{{|{{|{{|}}|{||{|{{||{|{|||{|{|{|{{{|{||{||{|{|z|{{}{||||{||||{}}||||}|{|||{|||||}{||||}|{||||}|||||{{{{{}}|{{||{|{||}}|{|}{|{{|}{|{{|}{|{|{}{|{|{|}{|{||{|{|||||{|{{||{|||{|{|{|}|{|{||{{|{||{|{{||{|{z||{|{|{||{|{|{z{{|}zz{z}z{|}z|}{}z}{|{{|}{{{||z{|{|||}|{|||||{||||{|||||{|{|||{|{|||{|{|{{|{{|}{|{||{{|{|||}|{|z|||{||||{|||||{|{|||{|{|||{|{|{|||}|~~}|}|||}|}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|}{}{|~~}}}||}}}}}~~}}}}~}|}}}~}}}}}~}}}}}~}}}}}~}}}}}}}{}~|~~~}}~~}~}~~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}}{}{{}{|}}|~{|{|{|}|}|~}|{}|~}|}{|~}|}|}~}|}|}|}|}|}|}}{}{|}{|}}|~{}{|||}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}}{}{|}{|}}|~{}||||}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}}{}{|}{|}}|~{}|}}~}|}|~~||}|~~|}{|~~|}|}~~|}|}|~|}|}|}}{}{|}{|}}|~~}|}||}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}}{}~|~~~}}~~~}~}~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}}|{|{|}{{||||{|{||||}{{{|{|||||{|{|||{|{|||{|{|{|{|{|{||{|{|}{{||||{|{||||}{{{|||||||||{|||||{|||||{|{|||{|{|}{}{|}{|}}||{}|}|}~}|}}~||}|}~|}{|}~|}|}}~|}|}|~|}|}|}|{|{|}{|||||~||||||}||||||||~|||{|~|||||~|||||||||||||}{}{|}~|}}|||}|}|}~}|}|}||}|}~|}{|}~|}|}}~|}|}|~|}|}|}}{}}|~|}}}}~~}}}}~|~}}}~}|}}~}}}{}~}}}}}~}}}}}}}}}}}}}|}{{{{|}z{{{||{{{{|||}{{|||||{{||{{||||{{{|||{{{{||{{{{{}{}{|}z|}}||{}|}|}~}|}|}~||}}~|}{|}~|}|}}~|}|}|~|}|}|}{{{{|}z|{{||~{|{|||}|{||{{|{|{|z{|~{|{|{~{|{|{|{|{|{|{|{|{|}~||||||||||||}||||||||||||{||~|||||~|||||~||||||}{}{|}{|}}|~{}|}|~~}|}|~}||}|~~}{|~~|}|}~~|}|}|~|}|}|}|{|}|~|}||}~~|}|}~|~}|}~|}||}~|}}}~|}|}|~|}|}|}|}|}|}|{}|}{}{|}z|}}||{}|}|}~}|}|}~||}|}~|}{}~|}|}}~|}|}|~|}|}|}{z{{|}z|{{||~{|{|||}|{||{{|{||{|z{|{|z|{~{|{|{|{|{|{|{{{{{|}~|{{|||{|{|||}|{|||||{||||{{|||{|{|~|{|{|~|{|{|{}{}{|}{|}}|~{}|}|~|}|}|~}||}|~}|}{|~}}|}~}|}|}|}|}|}|}}{}{|}z|}}||{}|}|}~}|}|}{||}|}~|}{|}~||}}~|}|}|~|}|}|}|{|}|~|}||}~~|}|}~|~}|}~|}||}~|}|}}~|}||~|}|}|{|}|}|}|{}|{{z{{|}z|{{||~{|{|||}|{||{{|{||{|z{||{|{|{{|z|z|{|{|{|{{z{{|}~|{{|||{|{|||}|{||{||{||{|z{||{|{|{||z|z|~|{|{|{}{}{|}{|}}|~{}|}|~|}|}|~}||}|~}|}{|~}|}|}~}}|}|}|}|}|}|{|{|}z{||||{|{||||}{|||||||||{||{|||{|{||||{|{|||{|{|}{}{|}z|}}||{}|}|}~}|}|}{||}|}~|}{|}~|{|}}~|}}|~|}|}|}|{|}|~|}||}~~|}|}~|~}|}~|}||}~|}|}}~|}|}|~|}|}}|}|}|}|{}|{{{z{{|}~|{{|||{|{|||}|{||{||{||{|z{||{|{|{|{|{|z||z|z|{}{}{|}{|}}|~{}|}|~|}|}|~}{|}|~}{}{|~}{}|}~}{}|}|}}|}|}{{{{|}z{{{||{{{{|||}{{|||||{||||{{||{|{{{||{{{{{||{{{{|{|{|}z{||||{|{||||}{|||||||||{||{|||{|{||||{{|{||||{|}{}{|}z|}}||{}|}|}~}|}|}{||}|}~|}{|}~|{|}}~|}|}|~|}||}|{|}|~|}||}~~|}|}~|~}|}~|}||}~|}|}}~|}|}|~|}|}|}|}|}||{}|{{{~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}~}}}}}}~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~~~~~~~~}~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~}~}~~~~}~~~~~~}}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~}~~}~~~}~~~~~~}~~~~~~}}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~}~}~~~}~~}~~}~~~}~~~~~~}~}~~~~}}~~~~~}~~~~~~~~~~~~~~~~~~}}~~~~~}}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~}~~~~}~~~~~~}}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~}~~~}~}~~~~}~}~~~~}}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~}~~~}~~}~~}~~~}~~~~~~}~}~~~~}}~~~~~}~~~~~~}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~~~~~}~~~~~~}}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~}~~}~~~}~~~~~~}~}~~~~}}~~~~~}~~~~~~}~}}}}}~}}}}}}}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}~}}}}}~}}}}}}}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~}~~~~~~}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~}~~~~~~}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~}~~~~~~}~~~~~~}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~z||~|{z|z}{{{zz}|{z~|{|{~|{{|~|||z{|~|{|{{{{|{|{{{{{zz{~{{z|z}{zzzz}|{z~{{|z~{{{{~{{|z{{~{{|{{z{{{|z{z{z|||~||||{~|||zz}}|z~|{|z~||||~||||||~|||||||||||||||||}~|}|~|}||}|~~~}|~}}~|~}|~}~}|~|~}~}|~|~|}||~|~|}|{{}|}{{~|||{{||}|{|~|}||~||{}~||||{}~||||{{{||||{{{{{z|{}|{|z}{{z{z|{{z}{{|{}|{{|}||{z{|}|{{{{{{|{{{{{{{{z||}|{|z}{{{yz|{{z||{|{}|{{|}||{z{|}|{{{{{{|{{{{{{{}|}|||}}|}|||}|{||~{}|}}|~|}}|}|}}|}|}|}}|}|}|}||}|}|}||||}}|}|||}||||~{}|}}|~|}}|}|}}|}|}|}}|}|}|}||}|}|}||||}}|}|||~||}|~{}|}}|~|}}|}|}}|}|}|}}|}|}|}||}|}|}|}}}~~}~}~}}}}~}~}~}~~}~}~~}~}~~}~}~}~~}~}~}~}}~}~}~}||}}}|}|~|}||}|}}}|}}}~|}}|}}}}|}|}}}}|}|}|}||}|}|}|||||}||||{}|||{}{}z||{|{}||||}||||||}|||||||||||||||||||}||||{~|||{}|}|}|{|{}||||}||||||}||||||||||||||||||~~}|||{~|||{}~}|{}{~{~}|||~}|||||~}||||||}|||||||}}|}~~}}}}}~}}}}~~}}}~}~}~}}}|~}}}}}|~}}}}}}}}}}}}}}}|||~~|}|||}||}|~|}}|~}||~}|}|~}|}|}|~}|}|}|}||}|}|}|{z||}|{{|z~||{{z}|{|}|{|||{{|}||{{{|}||{|{{{||{|{|{{{z|~~}{{|{}||{{z~}{|}}{~|}{||~}||{||~}||||{{}|||||{{|z}{~|{|~|~||{||~|{|}|}~|~|{}~||{|{}~||{|{|{||{|{|{|}}}||~~||}}}}}}|}~~}|}~|}~}~|}|~|}|}||~|}|}|}||}|}|}|}||}}}|}|~|~||}|}}}}|}}}}|}}|}}}|}|}}}}|}|}|}||}|}|}|{z|~~}{{|{}{{{{z~}{z}}{~{}}{||}{|z||~}{|{|{{}{|{|{{{|z}|}|{|~|}||{|||{{|}{}||}{|{}}|{|{}}||{|{|{||{|{|{||||}~|}|||~||}|}~}}|}}{~|~}{}|~}}|}|~}|}|}|}||}|}|}|||{}||~~||}}}}}}|}~~}|}~||~}~|}||~|}|||~|}|}||||}|}|}||||}}}|}|~|}||}|}~|}|}}}~|}}|}|}}|}|}}}|}|}|}||}|}|}|||||}||||{~||||}|}||}|{{|}||||}|||||}|||||||||||||||{z|~~}{{|{}{{{{z~}{z}}{~{}}{||}}||z||}{|{|{{}{|{|{{{|z}{}|{|~|}||z|||{{|}{}||}{|{}}||{|{}}|{|{|{||{|{|{||||}}|}|||}||}|}|}}|}}{}|}}{}|}}|}|}|}}}|}|}||}|}|}|{{|{~|{{|{~||{||~{{|}|{~|~|{{|~||{|{|~|||{{{||{|{|{{||{{}||~~||}}}}}}|}~~}|}~||~}~|}{|~|}|}||~|}|}}||}|}|}|}||}}}|}|~|}||}|}||}|}}}}|}}|}|}}|}|{}}}|}|}}||}|}|}|{{|{}|{{|{}||{||~{{|}|{~|}|{{|}||{|{|}||{|{{||{|{|{{|z}{}|{|~|}||z|||{z|}{}||}{|{}}||{|{}}||{|{|{|{|{|{||||}}|}|||}||}|}|}}|}}{}|}}{}|}}|}|}|}}{}|}|}|}|}|}|{{||}|{{|{}||{||}{{|}|{||}|{{|}||{|{|}||{|{{{|||{|{{{z|{~|{{|{~{{{{z~|{z}|{~{~|{{|~||{z{|~|{{{{{{|{{{{{{|{{{{}||~~||}}}}}}|}~~}|}~||~}~|}{|~|}|}||~|}|}{}||}|}||}||}}}|}|~||||}|}||}|}}}}|}}|}|}}|}|{}}}|}|}{}||}|}||{{||}|{{|{}{{{|||{{|}|{||}|{{|}||{|{|}|{{|{{{|{{|{{{zzz{{zzz{{{zzyzz|zzz||{zz|{{zzz|{{zzz|{{zzzz{{{zzzzzzzz{{zzz{z{zzzzz{zzz||{zz|{{zzz|{{zzz|{{zzzz{{{zzzzzz{{||{zz{{{z{z{{|{z{||{z{|{{z{{|{{z{z|{{z{z{|{{z{z{z{{{|{{{|{||{{|{{|{|{||||{||{{{{||{{{{||{{{{{{|{{{{{{{{|{||{}|{|{|{|{{|{||{|{|||||{||||||||||||{||||||{|{zzzzz{zz{{}zzyzz{zzz|{{zz||zzzz||{zzz||{zzzz{|{zzzzzzzzz{{zz{{}zzzzz|zzz|{{zz||zzzz||{zzz||{zzzz{|{zzzzz{}{{{{|||{}||||{||||{||||{|||||{||||{|{|||{|{||||{|{|{{{{{|||{}|||{{||||{||||{|||||{||||{|{|||{|{||||{|{|{{{{{|||{}|||{|||||{||||{|||||{||||{|{|||{|{||||{|{|{{{{{|||{}|||{|{|||{||||{|||||{||||{|{|||{|{||||{|{|{}|}|}}|}}|||}|}|}|}|}}|}|}}|}||}}|}|}}}|}|}|}}|}|}|}{{{{||{{|{{|{{|{{|z{|{{|{|{{{{{|{{{{{|{{{{{{|{{{{{{{{{{{||{{|{{|{{|{{|{{|{{|{|{{{{{|{{{{{|{{{{{{|{{{{{{{{{{{||{{|{{|{{|{{|{||{{|{|{{{{{|{{{{{|{{{{{{|{{{{{{{{{{{||{{|||}{{|{||{||||||||{{{||||{{{|||{{{{|||{{{{{||||||}||}}|}|||}}}|||}|||}|||||}|||||}||||||}|||||||z{z{{{{zz{{{z{z{{|{z{|{{{|{zz{{|{{z{z|{{z{z{{{{z{z{zz{z{|{{zz{{{z{z{{|{z{|{{z|{zz{{|{{z{z|{{z{z{{{{z{z{zz{z{||{zz||}z{z{{|{z{|||z{|zz{{||{{{z||{{{z{||{{{z{zz{z{|||z{{||{|z{|||{||{|{|||z{||||z{z|||{|z{|||{|{|z|{{{{||}|{|}|}{||||}|||}||||}||||}||{|{}||{|{|}||{|{|{{{{{{{|{}|||{||||||||||{||||||||||{|{|||{|{|{||{|{|{zzzz|{zzz{{{zzzzz|zzz|{{zz|{zzz|{{zzz|{{zzzz{{{zzzzzzzz{{|zzz||}zzzz{{zzz|||zz||zz{z|z{zz||z{zzz||z{zzzzzzzz||{z{{||z{z{|||z{|{{{||{{zz||{z{z|||z{z{|||{|z{z{{{{{{|{}{{|{|||{|||||{{|||{{|{|||{|{|||{|{|{||{|{|{{{{{{{||}{{|}|}{{|{||||{}|{||}|{{||}|||{}|||{{{}||||{{{{{{{|||{}{{{{|{|{||{|||{{||{||{||||{||||{|{||||{|{|{zzz{z|zzz||}zzzz{{zzz|||zz||zz{z||z{zz|z{zzz||z{zzzzzzzz||{z{{||z{z{|||z{|{{z||{{zz||{{z{z||z{z{|||z|z{z{{{{|{|{}{{|{|||{|||||{{|||{z|{||{{{|{|{{|{|{{|{|{|{z{z{{{{z{{{|z{z{{|{z{|{{z{|{{z{{|{{z{z|{{{z{{{{z{z{z{{{z{{{|{}{{|}|}{{|{||||{}|{||}|{z||}||{z{}||{{{}||{|{{{{{{{|{|{}{{|{|{|{||{|||{{||{||z||||{|z|||{|{{||{|{|{zzz{z|zzz||}zzzz{{zzz|||zz||zz{z||z{zz||z{zzz|z{zzzzzzzz||{z{{||z{z{|||z{|{{z||{{zz||{{z{z|{|z{z{||z|z{z{{{{{{|{}{{|{|||{|||||{{|||{z|{||{z{|{|{z{|{|{{{|{|{z{z{|{{z{{{{z{z{{|{z{|{{z{|{{z{{|{{z{z|{{z{z{{{{{z{zzzzzz{zzz{{|zzzz{|zzz{{{zz|{zzzz|{zzzz|{{zzzz{{{zzzz{{{zz{{{|{}{{|}|}{{|{||||{}|{||}|{z||}||{z{}||{{z{}||{|{{{{{{{{|{}{{{{|{|{||{|||{{||{||z||||{|z|||{|{z{||{|{|zz{zy{zz|z{z{yzzz{z{z{|{z{z{{z{{z{{z{zz{{z{z{{{z{z{zzzzzz{zz{z{zzzzzz{z{z{|zz{z{{z{{z{{z{zz{{z{z{{{z{z{zzz{zz{zz|{{z{z{zz{z{{{|{z{{{{z{{{{{z{z{{{z{z{{{z{z{z{z{{{{{|{{{{{{||{{{{|{|{{{||{{{{|||{{{|||{{{{{|{{{{{zz{|{{z{|{|{{z{{{{{{{}|{{{{}|{|{{}|z{{{}|{{z{}|{{{{zzzz{{yzz|zzzzyzzz{z{z{{{z{z{{z{{z{{z{zz{{z{z{{{z{z{zzzz{{z{z|z{z{zzzz{z{z{{{z{z{{z{{z{{z{zz{{z{z{{{z{z{z|{{{{{{{z{{{|||{{{{{{{{{||{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{{{z{{{|||{{{{{{{{{||{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{{{z{{{|||{{{{{{{{{||{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{{{{{{{|||{{{{{{{{{||{{{{|{{{{{||{{{{||{{{{||{{{{{{{{{{{|{{|||{|{|{|{|{||{{|{||{{|{||{|{{||{|{|||{|{|{{z{{{{{{||{{{{{||{z{z{{{{{|{{{{{|{{{{{|{{{{{{{{{{{{{{z{{{{{{||{{{{{||{{{z{|{{{|{{{{{|{{{{{|{{{{{{{{{{{{{{z{{{{{{||{{{{{||{{{z{{{{{||{{{{|||{{{|||{{{{{|{{{{{{z{{{{{{||{{{{{||{{{{{{{{{|{{{{{|{{{{{|{{{{{{{{{{{{{{{{{{{|{||||{|{||{|{|||{{||||{{||||{|{|||{|{|||{|{|{{{{{|{{|{||||{|{|}{|{||||{||||{|||||{|{|||{|{|||{|{|{zzz{zz{zz|z{z{z{{z{z{z{|{{z{{z{{z{{z{zz{{z{z{{{z{z{zzzz{zz{zz|{{z{z{{z{z{z{{zzz|{z{{z||z{zz||z{z{{|z{z{zzzz{{z{zz|{{z{z{{z{z{z{{{z{{{z{{{{{z{zz{{z{z{{{z{z{zzzz{{{{zz|||{{z{{{{{{{{|{{{{{z{{{||z{z{||{{z{||{{{{z{z{{{{{{||{{{{{||{{{{|{|{{{||{{{||{{{{||{{{{{|{{{{{{{|{z{{{{{{||{{{{{||{{{{||{{{{||{{{|||{{{|||{{{{||{{{{{zzz{{{{zz|{{z{zzzz{z{z{{{z{{|{z{z||z{z{||z{z{{|z{z{zzzz{{{{zz|{{z{z{zz{z{z{{{z{{{{z{{{{z{z{{{z{z{{{z{z{zzzz{{{{zz|||z{z{{{{z{{{{{{{{{{z{{{{z{z{|{z{z{|{{{z{z{z{{{{{{||{{{{{||{{{{|{|{{{|{{{{{||{{{|||{{{{||{{{{{zz{{{{{z{|{{z{z{{{{z{{{|{z{{|{z{{{|{{{{|{z{z{{{z{z{z{|{zz{{{{{z{|{{z{z{{{{z{{{{{z{{{{{{{{|{z{{|{z{z{|{z{z{zzzz{{z{zz|{{z{z{zz{z{z{{{z{z{{z{{z{{z{z{{z{z{{{z{z{zzzz{{{{zz|||z{z{{{{z{{{{{z{{{{z{{{{{z{z{{z{z{|{z{z{z{z{{{{{{||{{{{{||{{{{|{{{{{|{{{{{||{{{{||{{{{|{{{{{{zz{{zz{z{|{{z{z{{{{z{{{|{z{{{{z{{{|{z{{{||{z{{|z{z{zzzz{{{{zz|{{z{z{{z{z{{{|{z{{|{z{{{|{z{z{|{zz{{{z{z{z{|{|zz{{{{{z{|{{z{zz{{{z{{{{{z{{{{{{{{|{zzz{|{z{z|{z{z{zzzz{{{{zz|||zzz{{{{z{{{{{z{{{{z{{{{{z{z{{{z{z{{z{z{z{z{{{{{{||{{{{{||{{{{|{{{{{|{{{{{||{{{{||{{{{{|{{{{{zz{{zz{z{|{{z{z{{{{z{{{{{z{{{{z{{{{{z{{{{{z{z{{{{z{zzzz{{{{zz|{{z{z{{z{z{z{|{z{{{{z{{{|{z{z{||z{z{{|zz{zzzz{{z{zz|{{z{z{{z{z{{{|{z{{|{z{{{|{z{z{|{z{z{{{z{{z{|{|{zz{{{z{z{|{{z{zz{{{z{{{{{z{{{{{{{{|{z{z{|{z{z{|{z{z{z{|{}{{z{|}{{{z{{||{{{{|{{{{{||z|{{||zz{{||{{zz||{{{{zzzzz|{{zz{}zz{zz{||{z{{|{zz{{|{z{z{|{zzz{|{z{zz|{z{z{z{z|{}{|{z|}{{|{|{|||{|{|{{{|{||z||{||{|{{||{|{|||{|{|{|{|{}}|||{}|||||}|}|||}}|{||}}||{|}}||||}}|||||}|||||||z||}|}|||}||}|}|||}|}|}}{|}|}}||}|}}|}||}}|}|}|}|}|}|~{~|{~}~~|}|~}~}~~~}~}~~}{~}~~}~|}~~}~}~~~}~}~}~}~}~}~{z{|{}{{{|}{{z{{{||z{z{|{{{{{||z|{{||{z{{||{zzz||{z{z{{z{|{}{z{|}{{zz{{||z{{z|{{{{{||z|{{||zz{{||{zzz||{z{zz|}{}|}{{{{{}}|{{|}||{|{|}|{|{}|{{|{}|{{|{}|{|{{}|{|{|}|{|{|{{{{|{}}|{{|}|{{|{|}|{|{}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{{{{|{}}|{{|}|{||{|}|{|{}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{{{{|{}}|{{|}|{|{{|}|{|{}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{{{{|{}}}{{|}|{}{}|}}{}{}}{{}{}}{|}{}}{}{{}}{}{}}}{}{}{|||||~~}||}}}|}|}}~}|}}~}||}}~}||}}~}|}|}~}|}|}~}|}|}||z||{}|||||}{||||}|}z{z|{{||}|||{|}|||||}||||||||||||||z||{}|||||}{||||}|}|{z|{{||}|||{|}|||||}||||||||||||||z||{}|||||}{||||}|}||{|{{||}|||||}|||||}||||||||||||||z||{}|}|||}{|}|}}|}}|}}}{|}}}}||}}}}|}|}}}|}|}|}|}|}||{||{~~||||}|||||}|~|||}|{||}~||||}~||||}~|||||~||||||}|}|}~~|}}}}}}|}}}~~|}}}~}}}}~|}|}}~|}|}}~|}|}|~|}|}|}}{z{|{}{|{{|}{{|{|{|||{|{|{{{z|{z||{||{|{{||{|{|||{|{|{{z{|{}{|{{|}{{|{|{|||{|{|{{{z|{z||{||{|{{||{|{|||{|{|{{z{|{}{}{{|}{{}{}{||}{}{}}{{}}}z|}{}}{}{{}}{}{}|}{}{}{{{{|{~~|{{|}|{|{|{|~|{|{||{{|{|{||{~|{|{{~|{|{|~|{|{|{|{||{}}}|||}||}|}}|}}|}}}}{|}}}||}}}}|}|}}}|}|}}}|}|}|||||}~~|||}}}|||}}~~||}}~|}|}}~||}}~||||}~|||||~||||||}{{z{|{}{{{{|}{{{{{{||{{{{|{{{{{||z|{||{z{{||{{{z||{{{{{{z{|{}{}{{|}{{}{}{||}{}{}}{{}{}}z|}}}z}{{}}{}{}|}{}{}{{{{|{~~|{{|}|{|{|{|~|{|{||{{|{||{||{|{|{{~|{|{|~|{|{|{|z||{}{||||}{||||}|}|||}|{{||}|||||}||||}|||||||||||||{{{|{}}}{{|}|{}{}||}}{}{}}{{}{}|{|}{}}}{{}}{}{}}}{}{}{|{||}~~|||}}}|||}}~~||}}~|}|}}~|{|}}~|||}~|||||~|||||||{|{z{|{}z}{{|}{{}{}{||}{}{}}{{}{}}z|}{}}{}{}}{}z}|}{}{}z{{{|{~~|{{|}|{|{|{|~|{|{||{{|{||{||{||{|{{|{|{|~|{|{|{|z||{}{||||}{||||}|}|||}|{{||}|||||}|||||}||||||||||||{z{|{}||{{|}{{|{|||||{|{|{{{|{||z||{||{|{{|||{|||{|{|{{{{|{}}}{{|}|{}{}{|}}{}{}}{{}{}|{|}{}}{}{{}}{{}}}{}{}{|{||}~~|||}}}|||}}~~||}}~|}|}}~|{|}}~||||}~||||~|||||||{|{{{{|{~~|{{|}|{|{|{|~|{|{||{{|{||{||{||{|{{||{|{||{|{|{|z||{}{||||}{||||}|}|||}|{{||}|||||}|||||}||||||||||||{z{|{}||{{|}{{|{|||||{|{|{{{|{||z||{||{|{{||{|{||||{|{{z{|{}{{{{|}{{{{{{||{{{{|{{{{{||z|{{||{{{{||{{{{||{{{{{{{|{}}}{{|}|{}{}{|}}{}{}}{{}{}|{|}{}}{}{{}}{z{}}}{}}{|{||}~~|||}}}|||}}~~||}}~|}|}}~|{|}}~||||}~|||{|~||||||{|{z}~~~~~~~~~~~~|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}|~}}}}~}}}}~~}}}}}}||}}}}~}|}}}}}}}|}}}}}}}|}}}}}}}|}~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~}}}~}}}}~~}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}~}}}~}}}}~~}}}}}}}|}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}~}}}~}}}}|~}}}}}|}||}}}~}|}}}}}}}|}}}}}}}|}}}}}}}|}~~~~~~~~~~~~~}~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~}}}}~}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}~}}}}~}}}~~}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}~}}}}~}}}|~}}}}}|}||}}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}}|}}}}}}}}}}~}}}}}}|}|||}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}~~~~~}~~}}~}}}}|}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~}}}}~}}}}~~}}}}}}}}}}}~~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}~}}}}~}}}}~~}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}}|}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}}|}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}}|}}}~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}|}~}}}}~}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}~}}~~~~~~~~~~~~~~~~~~~~~}~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~}}}~}}}}~}}}}~~}}}}}}}}}}}}~~}}}}}}}~}}}}}}~}}}}}}}~}}}}}~}}}}~}}}}~~}}}}}|}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}~}}}}~}}}}~~}}}}}|}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~}~~~~~~~~~~~~~~~~~~}|}~}}}}~}}}}~~}}}}}}|}}}}}}}|}}}}}}}|}}}}}}|}}}}}}~|}~~~~~~~~~~~~~~~~~~~~~}~~~~~~~|~~~~~~~|~~~~~~~~~~~~~~~~}|}~}}}}~}}}}~~}}}}}}}|}}}}~~}}}}}}}~}}}}}}}~}}}}}}~|}}|}~}}}}~}}}}~~}}}}}|}||}}}}}|}}}}}}}|}}}}}}}|}}}}}}|}}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~}}}~}}}}~}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~}~~~~~~~}~~~~~~~~~~}|}~}}}}~}}}}~~}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}}}}}}|}~~~~~~~~~~~~~~~~~~~~~}~~~~~~~|~~~~~~~|~~~~~~~|~~~~~~~~}|}~}}}}~}}}}~~}}}}}}}|}}}}~~}}}}}}}~}}}}}}}~}}}}}}}~|y{z{{zz{|{zzzzz}{{zz{{zz{{{z{{{}{y{{{{zzz{{{{z{zzzzzzz{zzz{{yzzzz}zzyyyzzyz{{zzz{}zzy{{zzzzy{{zzzyzz{{}{~{{z~}{{{|z~|{{{z|}{{~}{{{~}{{{~}{{{{{~}{{{{{{{|y{|}z|{}}}z|z{~{{}z{|||{{}z{{}}{|{}}|}z|{}}{|{}z|{zz{zz{{|{{z{z{}z{{zzz{z{|{zz{}}z{z}{{{z{z}{{z{{z{zyzzz{zz|{{zzzz}zz{yzz{zz{{zzz{{zzy{{z{zzy{{zzz{zzzy{z{{z{|{zzyzz}{{zz{{zz{{{z{{{{{y{{{{zzz{{{{z{zzz{{{{{~{{|||{{||}|{|{z||{{~}{{{~}{{{~|{|{{{~|{|{|{{zzzz|~zz{|zzzz|{|{zz||zz{~|zz|~|{zz~|{zzzz~||z{zzzzzzzzz}||{{{z{|{{|||{{{||}|z{{zz{{||{{{||{{{||{{{{{||{{{{{{{{{z{~{{|~|{{{||}|{{{|y{{~|{{{~|{{{~|{{{{{~|{{{{{{{{{z{|{{||}{{{||~|{{{z{{{||{{{|}{{{||{{{{{||{{{{{{~||||}|~|}~~|~||}||~|||~||~|{|}~|~|}~|~|~|}~|~|~|~{{{{|||{|||{|{||}||{||{{|||{{|}||{{}||{|{{|||{|{|{|zz|{~{|z~||{|z{}{{{z{||z~{zz{~|{|z~|{|{|z~|{|{|{||zz|{{{|z|||{|z{~{{{z{{||{{zz{|}{|z||{|{|z{|{|{|{||zz}{~{|z~}|{|z{~{{{z{|}|{}zz{~}{|z~}{|{|z~}{|{|{|||{{||}{||}}}{|||~|{}{|{}}{||{{}}{|{}}{}{|{}}{}{}{||{{|{}{||}||{|||}|{{{{{||{||{{}|{|{}|{|{|{}|{|{|{|zy{z{{zz{|{zzzzz~{{zzz{zz{{{z{{}zy{{{{zzz{{{{z{zzz{y{{{}z{{}{{z{z{}{{{zz{{{{{{z{{|z{{}{{{z{{}{{{{{z{zz{z{~{z{~|z{zz{~{{z{{|{{{{{z{{~{z{~|{z{z{~|{{{z{z{||{|||}{|{}||{|{|}|{{{|}|||||{||}}{{}|{|{|{}|{|{|{||{{|{|{|||||{|||~|{{{{{||{||{{{}|{|}|{|{|{||{|{|{|{yz{z}z{z}{{z{z{}zz{yzz{zz{{zzz{|z{z{z{z{z}{zzz{z{zyzz{|{zz||{{zz{}{{{{{{zz{{{zz{}{{yz}{z{zz||{z{{{z|{{|{~{||~||{|||~|{{{{|||{||z{{~|z|{~||{|{~|{|{|{|{{{|{{||}z|{}||z|z|}|{{z||||{||z{{}}{{{}|{||{}|{|{|z|{{{z{|{{|||{{{||}|{{{{{z{{|{{{{}|{{{}{{{{{|{{{{{{{|zz|{{z|{|||z|z{~{{{z{z||{||zz{||z|z||{|z|{|{|{|z|{yz{z}z{z}{{z{z{}zy{yzz{zz{{zzy{|z{z{{z{z{z{zzz{z{zyzz{|zzz||yzzz{}{{yz{{zy{{{zz{}{{yz}{{zzzz|{y{yzz|{{|{|{|||||{|||}|{{{{z||{||z{{||z|{||z|{|{|||{|{|zz{z{~{z{~{z{zzz~{{zzz|{z{|{z{{~{{z{~{{z{z{~{{{z{z{{z{|{{||}z|{}||z|z|}|{{z||||{||z{{}}{z{}|{|z|{}|{|{z|{{{z{|{{|||{{{||}|{{{z{{{{|{{{{}|{{y}{{{{z{|{{{{{{zz{z{{zz{|{zzzz{}{{zz{{zz{|{z{{|{{z{|{{zzz{{{{z{zzzzzzzzyzzzzzyzzz{zzzyzzzzzzzzzz{{zzzz{{zzyzz{zzzzyyzzzzyyzy{yyyzzz{yyyyzzyzzzzzzz{zzzyz{zzyyz{zzyyyyzzz{z{zzy{z{z{zz{{z{z{zz{z{{z{z{{z{zz{{z{z{{{z{z{zzzz{z{z{z|z{z{zz}{z{{zzz{{{zz{{|{zzz{|{{{zz|{{{z{zzzzz{|{z{{|z{z{zz}{z{zz|z{z{|z{z|}{{zz|}|{z{|}{{z{zyyzzzzyzzzyyyyzz{yyyyzzyzzzzzzz{zzyzz{{{yyy{{zyzyyyzz{zzzz{zzzyzzz{zzzyzzzzzzzzzz{{zzzzz{{zyzz{zzzzyzzzz{z{zz{z{z{zz{{z{z{|z{z{{z{z{|z{zz{|{{z{{|{{z{zzzz|{z{z{|z{z{{{{{z{{z{z{{{{z{{||zzz{|{{|zz|{{|{{zyyzzyyzzzz|zzzz{z{z{{{z{z{{z{zzzzzz{{{{z{{{{zzz{{{z{zz{{z{z{zzzzz{z{z{{{z{z{{z{{zzzzz{{{{z{{{{zzz{{{z{zz{{z{z{zzzzz{z{z{{{z{z{{z{{zzzzz{{{{z{{{{zzz{{{z{zz{{z{z{zzzz{|z{z{{|z{z{{z|{z{{zz{{{{z{{{{zzz{{{z{zz{{z{z{z{{|{{|{{|||{{{{||{|{{||{|||{||||{{{||||{{{{||{|{{{zzzz{z{zzz{z{z{zz{{z{zzzzzzzz{z{{z{zz{{z{z{{{z{z{zzzzz{z{zzz{z{z{zz{{z{zzzzzzzz{z{{z{zz{{z{z{{{z{z{zzzzz{z{zz{{z{z{zz{{z{zzzz{zzz{z{{z{zz{{z{z{{{z{z{zzzzz{z{z{z|z{z{{z}{z{z{zz{z{z{z|{z{zz|{z{z{|{z{z{z{{|{{|{|{{{|{|{|{{}|{|{|{{|{|||{||{|{{||{|{|||{|{|{zyz{zzzz{z{zzzzzz{zzzzz{zzz{zzzzzzzzz{z{zzz{z{zzzzzyz{zzzz{z{zzzzzz{zzzzz{zzz{zzzz{zzzz{{{zzz{{{zzzzzzz{zzzz{z|zzzz{z{zzzz{{zzz{{zzz{zzzz|{{{zz|{{{zzzzzz{{zzz{{{{zzzz{|z{zz{{{z{{zzz{|zzz{|{{zzz|{{z{zz{{{z{|{|{{{{|{{{{{{|{{{{{}{{||{{{||{{{||{{{{{|{{{{{{zzz{{z{z{{{z{z{{{{{z{{{{z{{{{z{{{{{{{{{{{z{{{{{z{zyzzzzzyyzzzyyyzzz{zyzyzzyzzzzzzz{{zzzz{zyyzz{zzyyyzzzzzzzz{z|zzzz{z{zzzz{zzzzz{zzz{{zzzz{z{yz|{z{zzzzzzz{zzzz{{zzzzz{{zzzzzzzzz{zzzz{zzzzz{zzzz{{zzzzzzzzz{z{z{{{z{z{zz{{z{{zzz{{{{z{{{{z{z{{{{z{{{z{z{z{z{zz{{{z{z{{|{{z{z{|{{{z{|z{{|{z{z|{{z{z|{{{{|{{{{{zzzz{{z{z{{{z{z{z{{{z{{z{z{{{zz{{{{{zz{{{{{z{{{{z{zzzzzzzzz{y|yzzz{z{zyzz{zzzzz{zzz{{zzzzz{z{yz{z{zzzzyzz{zzzzz{zzzzz{{zzzzzzzzz{zzzz{zzzzz{zzzzz{zzzzzzzzz{z{z{{{z{z{zz{{z{{zzz{{{{z{{{{z{z{{{z{z{{{{z{zzyz{zzzz{z{zzzzzz{zzzzz{zzz{zzzz{z{zzz{{{zzz{{{zzz{zzzzz{{{z{z{{|{{z{z{|{{{z{|z{{|{z{z|{{y{z|{{{z{|{{{{zzzz{{z{z{{{z{z{z{{{z{{zzz{{{zz{{{{zzz{{{z{zz{{z{z{yzz{zzzyz{zzzyzzz{zzzyzzzzzz{zzzzz|zzzzz|{zyzz{zzzzyyzzzyzzyz{yyyyzzz{zyyyzyyzzz{zzzzz|zzzzz|{zyzz{zzyzyzz{{z|{zz|{z{z{z{{{z{z|{z{z|{z{{z||z{zz||{{z{|{z{z{zzy{{zzzz{{zzzzz{z|zzzz{zzzz{{{{zz{|zz{zz|{zzzz{zzzzzzz{{z{|z{|{{|z{{{||{|{{|z|{||{{{{||{{{{{|{|z{{|{|{|zzzyz{{{zz{|zzzzz{{{zz{{{zz{{{{{{{{{|zzz{z|{zzzz{zzzzzyyzzzyzyz{yzzyzzzzzzyyzyyzzzzyzzzzzzyzzz{zzyyz{zzzzyyyzz{zzzz{zzzyzzzzzzzyzzyzzzzzzzzz{zzzzz{zzyzz{zzzzyzz{{{z|{z|{z{z{{{{{z{z|{z{z|{{{{z|{z{{z|{{{z{|{{{z{zzy{{{{zz{{{{z{z{{|z{{{{z{{{{{{{{{{}{z{{z}{z{zz}{z{zzzyzz{yzz{zz{{{{zzz{{{zzzz|{zzzz{||zzzzzz{{z{{{{{z{zzz{z{zzzzz{zzzzzzzz{{{zzzz|{zzzz{||zzzzzz{{z{{{{{z{zzz{z{zzzzz{zzzzzzz{{{{zzz{|{zzzz{||zzzzzz{{z{{{{{z|zz{{z|{zzzz{zzzzzzz{{{{zzz{|{zzz{{||zz{z{z{{z{{{{{z{zz{{z{{zzzz{zzzzz{z{{}{{{{{|{{{{{{||{{{{{{{{{{{{{{{{{z{{{{{{{z{{{{{{{zzz{{z|{z{|{z{z{{{|{z{{|{zzzzz{{{|{z{z{|{z{z{|{z{z{zzz{{{z|{z{|{z{z{{{|{z{{|{zzz{{{{{||z{{{||{{z{|{z{z{zzzz{{z|{z{|{z{z{{{|{z{{|{z{z{z{{{|{z{z{|{z{z{|{z{z{zzzz{{{|{z{|{z{z{{{|{z{{|{z{{zz{{{|{{{z{|{{{z{|{{{z{z{z{{|{|{{{||{{{{{||{{{{||{{{|{{{{||{{{{||{{{{|{{{{{{|{z{{{{|{{{|{{{{{|||{{{{|{{{{|{{{{|{{{{{|{{{{{|{{{{{{zy{{zzzzz{{zzzzz{z{zzzzzzzzzz{{zzz|zz{zz|{zzzz{zzzzzzyzz{zzzzz{zzzzzz{{zzzzzzzzzz{yzzz{zzzzz{zzzzz{zzzzzzyz{{{zzzz|{zzzz{{zzz{{zzz{{zzz{{{{zzz{z{{zzzz{{zzzzzy{{{{{zz{|{{zz{{||z{{{{z{{{{{{{{{{{z{{{{{zzz{{{z{zzzzz{|z|{z{|{z{z{{{|{z{{|{z{{|{z{{{||{z{||{{z{|{{{z{z{zzzz{{z|{z{|{z{z{{{{{z{z|{z{z|{z{{z|{z{z|{{{z{|{z{z{zyyzz{yzzyz{zyzyzz{{zyzyzzyzzz{zzzzz{zzzz{zzyzz{zzyzyzzz{{{zzzz|{zzzz{{zzz{{zzz{{zzz{{{z{zzz{{{zzzz{zzzzzzyz{{z{zz{|zzzz{{||zzz{{zzz{{z{{z{{{zzz{{{zzz{{zzzzzzz{{{{|{z{|{z{z{{{{{z{{|{z{{|{{{{{|{z{{{|{{z{|{z{z{zzzz{{z{zz{|zzzz{{{|zz{{{{z{{{zz{{{{|zzz{{|{zz{{{zzzz{zzzzzz{{{zz{{{zzz{{{|zz{{{zz{{{zzz{{{{{zz{{{{zz{{zzzzzzyz{{{zzzz|{zzzz{{zzz{{zzz{{zzz{{{z{zzz{z{{zzz{zzzzzzyz{{z{zz{|zzzz{{||zzz{{zzz{{z{{z{{zzzz{{z{zzz{zzzzzzzz{{z|{zz|{z{z{zzz{z{z|{z{z|{z{{z|{z{zz|{z{z{|{{z{zzy{z{{zzz{{{zzzz{{{zz{{zzz{{z{{z{{z{zz{{z{zzzzz{zzzzzzz{{z{zz{|zzzz{{{|zz{{{{z{{{zz{{{{|zzz{{|{zzz{{{zzz{zy{zzzz{zzzz{{zzzzz{{{zzzzzzzzzzzzzzzz{zzzzz{{zzzz{zzzzz{{|z{{z|}||z{z{|}z{z{z{|zz{z{|z}{z{|z{|z{|{{z{{|{{z{zzzzzz{{z|}z|z{z{|}z{z{z{|zz{z{|z}{z{|z{|z{|z{z{{|z{z{z{{{|z}{{|}||{{{||}z{{||}||{||}|z}||}|{{||}|{{{{}|{{{{{{{|{z{{{|}||{{{{|}z{{||{|z{||{}{}{|{}{{|z{}{{{{{|{{{{{z{|}z{{z|}|~z{z{|}z{z{z{~~z{z{~z}{z{~{{|z{~{{z{{~{{z{z|{|}~}}||}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}}~|}|}||zz{{|z{z{||zzyz{|}z{zzz{|zz{zy|z{{z{|{y{z{|{yz{{|{{zyzzz{{|z{{{||zz{z{|}z{z{z{|zz{z{zz{{z{|zz{z{|{{z{{|{{z{z{{{{|z}{{||{{{{|z}z{{||}||{||}{z{||}{{{{|}{{{{{}{{{{{{{z|{{z{|{|||{|{{|}||{||{|z{|||}|{|||}{z|z|}{|{{{|{|{|{{{|}~z{~{|}~{~{~|}z~{~|~~~{~|~~{}~|~~{~|{~~|~{~{~|~{~{yyzz{yz{|}z{|}z|}z}z}zzz{zz{{z{||{z{z{{}zz{z{zzz{{{{z{{{{{z{z{{{z{z{{{z{z{zzzz{zz{{z{||{z{z{{}z{{z{zzz{{{|z{{{{|z{z{{|z{z{{|z{z{z{z{{|z{{{{||{{{{{|}{{{{{|z{{{{|z{{{{|{{{{{|{{{{{|{{{{{z{|}|z{{z|}||z{z{|}z{z{{|zz{{{|z}{{{|z{|{{|{{z{{|{{z{z{z{{||{{{{||{{{{||}|{{||||{||{}{{||{}{{{|{}{{{{{|{{{{{{{{{~{}{{{~~~{{{~|}{{{~|}~{~|}~{{~|}~{{{|}~{{{{}~{{{{{{{{{|z}{{{||z{{{||}z{{||}||zzzzz{||}{{{{|}{{{{{}{{{{{{{{{{|z}{{{||z{{{||}z{{||}||{z{{z{||}{{{{|}{{{{{}{{{{{{{{|}|z}{{|}||{{{||}z{{||}||{|{|z}||}|{{||}|{{{{}|{{{{{{{{{|z}{{{||z{{{||}z{{||}||{||}{{||}}{{{|}}{{{{}|{{{{{{{{{~{}{{{|~~{{{||}{{{||}|~{||}z{||}~{{{|}~{{{{}~{{{{{|{|}~|}}||}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}}~|}|}||{z{{||{{{{||z{{{{|}z{{{|{|z{{|{|z{zz{zz{|{|{{{{{|{{{{{{{|}||{{{|}||{{{{|}z{{{|{|z{{|{|z}{{|z{||{|{{{{{|{{{{{{z{{||{{{{||z{{{{|}z{{||{|z{||{}{{{|}{z{|{}{{{{{|{{{{{{z{{~|{{{{|~~{{{{|}z{{{|{|~{{|{|z{{|{z{{|{~{{{{{~{{{{{{{{{||}{{{||{{{{||}z{{||}||{||}}{{||}}{{|}}{{{{}|{{{{{|{|}~|}{||}~~|{|||}|{|||}~~|||}~|}||}~|||}~|{|{}~|{|{||{z{|}|z{{z|}||z{z{|}z{z{z{|zz{z{|z}{z{|{{|{|{{z{{|{{z{z{z{{|z{{{{||z{{{{|}z{{||{|z{||{}{{{|{}{z{z}{z{{{|{{{{{zz{{~z{{z{|~~z{z{|}z{z{{{|~z{{{|z{{{{|{{{{{z{z{{~{{z{z{{{{|z}{{{||z{{{||}z{{||}||{||}|z{||}|{{{|}|{{{}|{{{{{{z{{||{{{{||{{{{{|}z{{||{|z{||{}{{{|{}{{{|{}{{{{|{{{{{|{|}~|}{||}~~|{|||}|{|||}~~|||}~|}||}~|{||}~|{{}~|{|{{z{{{z{{|z{{{{||z{{{{|}z{{||{|z{||{}{{{|{}{y{z{}{{{{z{z{z{zz{{~z{{z{|~~z{z{|}z{z{{{|~z{{{|z{{{{|{{{{{|{{z{{z{z{z{{{{|z}{{{||z{{{||}z{{||}||{||}|z{||}|{{{|}|{{{{}|{{{{{z{{||{{{{||z{{{{|}z{{{|{|z{{|{|z{{|{|{z{|{|{{{{{|{{{{{z{{|z{{{{||{{{{{|}z{{||{|z{||{}{{{|{}{{{{{}{{{{{|{{{{|{|}~|}{||}~~|{|||}|{|||}~~|||}~|}||}~|{||}~|{|{}~|{||z{{{|}}}}~}}}}}~}}}}~~}}}}}}}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}{{{}}|{|{}}|{|}}}|{|{|}|{|{|||{|{|{}}|||{{||}||{{{||}||{|{|}}|{||}}|{|}}}|{|||}|{|||}|{||||}}|||||||}|||{|||}|||{{{}}|}}{}}|}|~}}|}|}|}|}|}|~~}|}|}}~~}|}{|}~~}{}}|}~~}{}{}{~|||}~}}|}~~}}|}|}}}|}|}}~|}|}|}}~|}|}|}}~|}{|}}}~|}}}{}}}}}{}}|}}}}}|}}}|}|}}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}}||||}}|||}}|{|}}}|{|||}|{|||}|{||||}}|||||||}|||||||}|||}}}|}~}}}}~}}}}~~}}}}}|}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}|{|}~}|}}|}|}|~}}|}|}|}|}|}|~~}|}|}}~~}|}||}~~}|}}|}~~}|}{}{~}|||}~}|}~~}}|}|}}}|}|}}~|}|}|}}~|}|}|}}~|}{|}}}~|}}}{}}}}}}{}}}}}}}|}}}|}|}}}}}|}}}}}}||}}}}}}}|}}}}}}}|}}||||}}||||}}||}}}|{|||}|{|||}|{||||}}|||||||}|||||||}||||{{{}}||||}}||}}}||{||}||{||}|{||||}|||||{||||||{|{|}||||{|{~}|~||~}|~}~}|~}~{}|~}~}~~~}~}~}~~~}~||~~~~|{~}~~~||}{}|~}}}|}~}}}}~~}}}}}}}}}}}}~}}}}}}~~}}}}}}~~}}{}}}~~|}}}|}~}}}}|~}}}}}}}}}}|}|}}}}}|}}}}}}~|}}}}}}~|}}}}}}~|}}||||~}||||~}|||}}}||||}|{|||}|{||||}~|||||||~|||||||~||||{|{~}||||~}|||}}}||||}|||||}|{||||}~|||||||~|||{|||~||||{|{~}|{||~}|{|}}||{{|}|{|{|||{|{|{}~|||{||{~|||{{|{~|||}|}|}||}|||||{{|}|{{|}}}~~}}~~}~}}~}~~}}~}~~~}~}~}~~}~}~}~~~}~}}~~~~}}~}~~~~}}}}}~}}}}}~}}}}}~}}}}}~}}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}~}}}}}~}}}}}~}}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}~}}}}}~}}}}}~}}}}}}}}|}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}~}}}}}~}}}}}~}}}}}}}}|}|}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}~}}}}}~}}}}}~}}}}}}}}|}|}}~}}}}}}}~}}}}}}}~}}}~}}}~~}}}}}~}}}}~~}}}}}~}}}}}}~~}}}}}}~}}}}}}~~}}}}}}~~}}}}}}~}}}}}~}}}}~~}}}}}|}}}}}}~~}}}}}}}}}}}}}}~}}}}}}}~}}}}}}~}}}}}~}}}}~~}}}}}|}}}}}}}~}}}}}}~}}}}}}~~}}}}}}~~}}}}}}~}}}}}~}}}}~~}}}}}|}}}}}}}~}}}}}}|||}}}}}~}}}}}}}~}}}}}}~}}}}}~}}}}~~}}}}}|}}}}}}}~}}}}}}}|||}}}}~}}}}}}}~}}}}}}~}}}}}~}}}}~~}}}}}|}}}}}}}~}}}}}}|{|||}}}~}}}}}}}~}}}}}}}}~}}}}}~}}}}~~}}}}}}}}}}}}~~}}}}}}}~}}}}}~~}}}}}}~~}}}}|}~}}}}|~}}}}}~}}}}}~}}}}}}}|}}}}}}}}}}}}}}}}}}}}}~|}}||||~}||||~}|||~~}|||||}|||||~||||||}|||||||}|||||||}~||||||~}||||~}||}}~}||}||}||}|}}||}|}|}~}|}||||~}|||}|~|||||||}}||||}}|||}}}|||||}|||||}||||||}|||||||||||||||}|||||||}}||||}}|||}}}|||||}||||||||||||}}||||||||||{|||}|||}}|}}}}~}}}}}~}}}}~~}}}}}}}}}}}}~~}}}}}}}~}}}}}}~~}}}}}~~}}||}{~}|||}~}||}~~}||}||}||}|}}~|}|}|}}~|}|}||}~|}||}}~||}}|}~}}}}|~}}}}}~}}}}}~}}}}}}}|}}}}}}}|}}}}}}}|}}}}}}|}}|{{{~}|{||~}|{|~~}|{|||}|{|||~||||||}|||||{|}}|||{{{|||||{||~}|{||~}|{}}~}|{}||}|{}|}}|{}|}|}~}|}||||~}||{|}|~||{{{{}}|||{}}|||}}}|||||}|||||}|{||||}|||||{||}||{{||||||{{{||||z||||}|||||||||||{{{{|{||}~|{|{|||~|{{|||{~|{{yzz{||||z|||{}|||{{{z|{{{{y{{z{z|}||{z{||{||{z|{{{||{||||||||||||}||||||||||||{{|||||}}||||||}}||||||}}|||z|z||||||||}||z|{}z|{|{|{{|{|{}}}||{||||}||z||{|}||{|{||||{|||{}|||{|||||{|{}|{|z||}||{|z||{}|{||{|{}|{||}||||}||||}||||||||{|||{{|||||}}||||||}}||||||}}||||||}|||}|||{}|||||{|||||{{||||}~}||||||}}||||||}}||}|{|{}|||||||}|||||}z|{|||{{||||}}}|||||||}||{||||}||{|{|||||{|||}|||||||||{|{}|{|{||}||{|{|||}|{||||{}|{||}|||||}|||}||||||||{|||{{|||||}}||||||}}||||||}}||{|{|||||{|||}|||{|||||{|{{|{|{||}}|{|{||{}|{||{||}|{||||}}|||}}||}}|||}|}||||{{||||}~~||||}|}~||||||}~||{|{|||||{|||{}||{|||||{|{}|{|{||~~|{|{|||~|{||{|{~|{||}|||||}||||}|||||||{|||{{|||||~~||||||}~||||||}~||{|{|||||{|||{}||||||||{|{{|{|{||~~|{|{||{~|{||{||~|{{z{z||||{||||}||||{||{|{{{{{{{{|~~|{{{|||~|{z||{|~|{||||||||{|||{{{}|}}}}|}}}}|}}}}|}}}}}|}}}}}}}}}~}}}}}}}}}}}|}}}}}|}||||}}}}|}}}|}}}}||}}}}|||}}|||}}~}|||}}}~}||}||}~}|||||}}|}|}}||}}}|||}}}|||||}|||}}}}|||}|}}}|||||}}}|||||}}|}|}}||}}}|||}}}|||||}|||}}}}|||}|}}}|||||}}}|||||}}|}|}}||}}}|||}}}|||||}|||}}}}|||}|}}}|||||}}}|||~{}|||~}||~}}||~|}}|{~|~}|~|~|}}|~|~||~}|~||~|~}||}}|}|}|||}}}||}}}|}}}}}|}}}}|}}}}}}}}}}||}~}}|||}}~|}||}|}|||}}|||}}|||||||||||}|||||}~}|||||}}||||||}}||||}{||||}||||}||||||||||||}||||||}~||||||~|||||||~||||}{||||}||||}||||||||{|||}||||||}||{||||}|||||||}||||}{||||}||||}||||||||{|||}||||||}||{z|||}|||||||}||{|{|||||{||||}|||||||||||{}|{|{||}||{|{||}|{|||||}|{}}||}|}|||}}|||}}|||}}||||}|}||}|}}}}}|}|||~}||||}|~||||}|}|||}}|||}}||||}}|||||{|||||}}}||||||}||||||}}||||||}||||}|||}}|||||||||||{|||||}~}||||||}}|||||}}||{|{|||||{|||{}|||{|||||{|{{|{|{||}~|{|{||{~|||{||~|{{|{|||||{||||}|||||||||||{{|{|{||}||{|{|||||{||{|}|{||}|||||}||||}||||||||||||{{|||||}||||||{}}|||||}}||}}|||}|}|||}}|||}}|||||||||||||||||}}||||||||~||||||~|||||||||||||||}||||||||||||}||||||}}||||||}}||||||}|||{}{}|||}}||{}}||||}}|||||{{||||}}}||||||||||{|{||||||||}||||}|||}}|||||||||||{{||||}~}||||||}}||||||}}|{{{{||||{|||{}|||{|||||{|{{{{|{||}~|{|{||{~|{{|{|{~|{{{z|}zz|}{zz|}|{|{y|{{{zz{{{{|~|{{{|}|}{{{}{{|}{{zzyz~zzz~{z|{~{{|{zy{z|{zzz{zy~|}zzz~{{||zzzz|z{|z{z{z|{{y|{{{z{{{{{{y{z{zzzzzy{|}|{zz|{{{{{z{{{z{{{|{{||{|{|{{~||{{{{|{{{{{|||{{{}|~|{{|||{~|{|{||{~|{{{{|}{{|}{{{{}|{|{||{{{{zz{{{|~|{{{|}|}{{{}{{|}{{{zz{z{{z|{{~||{{|{~z{{|{zzz{z{~}~{{z~{{|~{{{{|z{~{|y{z{||{|{{{~|{|z{{{{|z{z{|z{y||||z{||{{{|z|{{{{{|{{{{z~|z~|{|{~|{||{y|{|{zzz{{{~~}{{{~||}|{{|{||}|{|{{{||}||}{~||}|{||{|{{{|||{{{}~~|{{|}||~|{}{|||~|{z{{|~{{{{{~||{{|{~y{z|{|zz{{{~}~{{{~{||~{{{{||{~{|z{{{|{|{|{{~|{|{{{{{|z{z{|z{{||||z{||{{{|z|{{{{{||{{{|||||||{|||{{||||{{{||z{{{|}||{{|||}{|{|{||}{||{{{|~}||~}{|~}|{}{~}{{{|y|{{{~~~|{{~}|}~|{}{||}~|{{{{{~}{{~}{~|}{|}~|}{|{{zz{{{~~~{{{~}|}~{{}{||}~{|z{z|~{|{~{{~~||{{{{{|{{|{|z{z~~~|z{~|||~|z|{{|{~||{{{|~|||~|{~|||{||||{{{||z{{{~~~|{{~||}~|{|{||}~|{z{z|~{{{~{{~{|{{{{{{{z{|z{z{z~~~{z{~{|{~{z{{{|{~{{|||{{{{{{{{{{}|~}{{~}|~|~}|}}~~}|}||||{}~~~{|{~}|}~{|}|}|}~{|||||~}||~}|~|~}|}}~~}|}|||}|}~~~|}|~}|}~||}|}|}~|{{|{|~}||~}}~|~}}{|~~|}{||}}|{~}~|{|~}}}~|{}}{|}~{{{|{|~}{|~}|~{~}|||~~||||||||{~}~{{{~}|}~{{}|||}~{{{|{|~}{|~}|~{~}|{|~~||{||||{|~}~{{|~}|}~{{}|{|}~{|~{||~}||~}{~~~}|~~~~||~{|||~{~}~|~{~}|~~|~}{~|~~|||{|~|~|||~~|~~~~|~|~~~|~||||~|~~}|~|~~|}~|~||~|}~||{{{|||||||{|~||||||||||{||||{{|~}{{|||}||{|{||}|||{{{||{|||{{~~|{||{||{||{|||{{{}|~{{||||~|{{{||{~||{{{||{|||{{{~|{||{||{||{|||{{{|}|{z||||{|{{{||{{|z{zzz~}zz~}{~|~}|||~~|{|{zz{{z{|}~z{z}{|~z{}{|{|~z|zzz{~{|z~{||~~{||{||{||{|||{zz||}|zz~||||z||||{|||}|{{{||{|||{{~~|{|{{||{|{{|||{{{}|}|{{|||~|{|{||{~||{{{|~|||~|{~|~|{{|~~|{{{|||{{{~}||{{~||}|{|{||}~|{{{{z||{z||{{|||{{|{||{{{zzz{{{|~|{{{|||}{{|{{|}{{{z{z||{{{|{{~{|{{{{{{{{z{|zzz{z}|~{z{|{|{~{{{{|{~{|{{z{{}|{|}{{~|}|{|{{||z{z{|{{z|}||{{{}{|{|{{{{|{||{{{|~|||~|{||~|{|||||{|{|||{{{|}}|{{~|{}||{|||}||{|||{{{||}|||}{~||}||||||{|{|||{{{}}||{{|}||~|{}{||~||{{{{|||{||{{~|||{|{|||{{{z|{{{|}||{{|||}{|{|{{|{||{{{|~{||~{{~|~{{{{~~{{{{|||{{{~}}|{{~|||||{{{||{|{{{{z||{z||{{|||{{|{||{{{zzz{{{|~|{{{|||}{{{|{{|}{yyyzzzyy{{zyyz}zzyyx{zzyyxyyyz{}zyy{{zzzyz{zyzzzzzz{|{yz|{z{y|{{{zzzz{zz{yyyz{|}{zy|{{z{z|{{z{z{y{z{zz~z{z~{zzz~{z{zzz{z{{z{z{zz~}|z{~|{yzz~{{|{zzz{z{|z{{|||z{z}{z|z{{{{{{yy{zz|~zz{||{|zz||z{z|zyzz{zzzz|{{z{{|zz{zy{zzzzyyzyz}}zzz}{z{zz}{zzz{zz{z{z}{z}{zzz{{z{zyz{z{{zxz{zz}}zz{}|{zzz}{{|{zzyz{z{z|z{|{zz{{}z{zzz|z{{z{z{zz|~zz{|}{zzz|{{|{zzzzzz{}{zz{{{y||{{{zy{zzz{yzzz{}}{zz}{{{{z}{{z{{{yyz{z|zyz}zz{{{z{zz{{{yz{{zyzz|}zzy}{{zzz|{zz{zzzyz{z~zyz~{zz~{zzzzz{{{zzzzyzz~~|zy~{zzzz~{{zzzzz{z{z~z{z~}}z~}z{}yz}z{{zxz{zz~~|z{~}{}zz~}{|{}zz{z{{~z{{~}}z{}{z}z{}{{{{yz{zz~~|z{~}{}zz~}z{z}zzzzz{~{zz~{{{y|{{zz{z{zz{{zyz{~~|zz~{{{{z~{{z{{{z{z{{~z{{~||z{{|{|z{|z{{z{z{zz~~|z{~|{|zz~|{|{|zzyz{{|z{{|{z{|~{{{~||{{~}|}|z}|{{}}|{z|~}||{~|}|{|~||{}|{z{z}{}{{{}}|{{|}|{|{{}{}{{z{z{}~|z{}}{|{z}}{{{|{z|{}|}{|{}}}{{|}|||{||{}}|||{|}~{z|}}|}{z}}|}|}{{{|{|}|{|}|||{|}|||{|||{{||{||}}}{{}||||{}||{|||z{{{|}{{{}||{{|}|||{||{{{||{{|}}|{{}|||{{}||{||{z{z{z|z{z}{{zz{}{{{zz{{{{{{z{z}~zz{}|{{zz|{{|{{zz{z|z~z{z~|{zz~}{{{zz}{|{{{z{zz}|z{~|{|{z~|{|{{z}z~{~{}{~{}~|{{|~{{|{{~{~~{{z~{{}}{~}~{|{z}~{~{|zz{z{{|{{{}||{{||{{|z{|{{{{{z{z{|~{{}|{|{z||{|{|{z{z{{|{{z}{{{{||{{zzz{{{{{{z{z{|}{z}|{{{z|{{|{{{z{zzz}z{z}{{zz{}zz{zz{zzzzyz{zz|}zz{{z{zz}{{zz{zzzzz{~zzz~{zzz~|{zzz|{{zzz|zzz|}{|zz~{zzz~{|zzzz{|{{{{{|{{{}{z{z|{{|zz|{{{{||{{{{|}{{{}||{{|{{||z{z{z{{}z{{}||z{{|{{|z{|{{{{{z{zz}}zz{}|{|z}|{|{|zz{z{{|z{{|||z{{|zz|z{|z{{zyz{zz|~zz{||z|z||{{z|zyzyzz}zzy}{{zyz|zz{yz{zzzyyyzyy}}zyz|{z{zy{zzz{zyyzy{{zyz}{zzy{}{{zz{{{zz{{zyz{|}zzy}{{zzz{{y{zzz{z{{~z{{~||z{~|z{|z{|z{{z{z{zz|||z{~|z|zz~||{|zz{{z{z{z|z{z|{{z{|}z{z{z{z{{z{z{zz|}zz{||{{zz|{{|{zz{z{{|z{{}||z{{|{z|z{|{{{{zz{zz|}zz{}|{|zz||{{zzz{z{{}{{z}{{{z|{{{{zz{{{{{{z{z{}}{z{}|{{{z}{{|{{zyzzzzzyzzz{zzyy{{zzzyz{yz{yyyzzz{{yyz{zzzy{zzzzzyyyyyzyyyyyyzyyyy{zyyyyyyzyyyyyyyyzzyyyzzzyyzzzyyyyzz{z{z{zx{z{z{zx{{{zzyy{zz{zyy{{z{{zzz{{z{z{{z{z{zzyzzzzzzzzz~zzzz~{zzzyz{zzzzyyyzz~zzzz~{zzz~zzzzzzyy{zzz{zz{zz{~zz{y~{zzzy{{{z{z{zzzz~zyzz~{zz{~z{zzz{zzz{z{{zz{z{z{zz{{{zzy{{zz{zyy{{z{{zzz{{z{z{{z{z{z{yzyzzz{zzz{zy{y{zzzyyzzzzyzzzyyz|yyzz{zzy{{z{zzy{yzyzzzzzzzz{zzyy{{zzzyz{yz{yyyzzz{zyyz{zzzy{zzzzzyzzz{z{z{z{z~z{zy~{{zzyz}zz{zyy{{z~{zzz~{z{z~{z{z{zz{zzzzzzz{zz{zz{y{{zzzyz|zz{zzzzzz|{yzz{}zz{{{{zzz{zyzzzzzzzzzzzzzz|zzzzyz{yzzzyyyzz{{zzz{zzzz{zzzzzzyyyyyzyyyzzz~yyy~zyyyyz{yyyyyyyyy~{yyy~zyzy~zyzyyy{yzyzzzy{zzz~z{y~{zzyyzzzzyzzzyyz~{yzz~zzy{~z{zzy{yzyzzzzzyzzz~zzy~{zzzyz{yz{yyyzzz~}yyz~zzzy~zzzzzyzzz{z{z{zz{z~z{zz{{z{y{{zz{zyy{{z~}zzz~|z{z~{z{z{zzyzzzzzzzzzz~zzzz|zzzyzzzzzzzzyzz~{zzz~zzzz~zzzzzzyyyyyy{{{zzz{z{z{zz{z{z{zz|{{zzy{{zzzzy{{z{{zzz{{z{z{{z{z{zzzz{z{z{zz{z~z{zz~{{zzy{{zzzzz{{z~{zzz~{z{z~{z{z{zzzz{z{z{zz{z{z{zz|}{zzz{{zz{zy{{z{|zzz{{z{z{{z{z{zz{{{{|{|z{{{|{|z{|||{|z{|{{|{{{|{||zz{||{|z||{|{|z{zz{|{{{{z{||{{{z|{{{{z|{|{{{|z{{|{{z{|{{{{|{{{{{{zzzzzzzzzzzz~zzzz~{zzzyz{zz{zzzzy~zyzz~zzzz~zzzzzzzzzzzzzzzzzz{zzzz{{zzzyz{zz{zzzzzz{yzz{zzzz{zzzzzzzzz{zzzzzz{z~zzzz~|zzzyz}zz{zzz{zz{yzz~{zzz~{zzzzz{{zz|{|{{{z|{|{{{z|||z{z{|{{|z{z||{||z{||{{{||{|{{{zzz{z{z{zz{z{z{zz|{{zzy{{zz{zzz{{z{{zz{{z{z{{z{z{z{yzyzzzy{zzz{zy{y{zzzyyzzzzyzyzyyz|zyzzzyy{{z{zzy{{zzzzzzz{zzz{zz{y{zzzzyz{zzzzyzzyz|{yzzzzz{{z{zzz{{yzyzzzy{zzz~zy{y~{zzyzz{zzyzzzyyz|zzzz~zz{~z{zzy{z{{z{z{z{z{{z{||z{z|{z|z{|{{{{||{zz{|z{{{|{|{|{{z|z{{zz{z{z{{z{z{z{{z{{{zzy{{zz{zzz{{z|{zzz{{z{{{{{z{{yyyyyzyyyzzy{yyyyzzzyyyz{yyzyyyyyyz{yyyzzzzyzyzyyyyyyyzzzyyzzz{zyzy{{yzyyzzzzyzzzyyz{zyyz{zzyy{zyzyyzzz{z{z{zz{z~z{zz~{{zzy{{zz{zzy{{z{{yzz~{z{z~{{z{zzzz{zzzzzzz{zzz|zz{y|{{zzyz{zz{zzzzzz|{yzz|{zz{|{{{z{{zz{z{z{{z{z{z{{z{{{zzy{{zz{zzz{{z|{zzz{{z{{{{{{z{zzzzzzzzzzzz{zzzz|{zzzyz{zz{zzyzzz{{zyz{zzzz{zzzzzyzzzyzzyzzzyzyzz{zyzyzzzyzyzzzzzzzyzzz{zzyzz{zzyzyyyyyyzyzyyzyxzyyzyyyzxxzyyyxyyyyzzzyyzzzyzyzzzyyyyzy{zz{zzz{zzzzzzzzzzyzy{zzz{yyzz{zzzz{zzzzz{zzzzzzyyyyyzyyyzzzyyzyzyzyyyyzzyzyzzyzzzyzzzz{zzzzzzyzyyyyzyzzyzzzzzzzzzzy}zzyzyy{zz{zzzyzzzzzzz|{zzzz|zzzzzzyz{zzzzz{zzzzz{zzzzzyz{zzz{zyzz{zzzz{z{zzz{zzzzzzyyyzyzzyyzzzxyyzzyzyzzyzzyzxyzyzzzzyzzzzyyyzzzyzyyyyzzzyzzzzzyzyzz{zyzyzzzyzyzzzzzzzyzzz{zzyzz{zzyzyzzz{zz{zz{zzzzzyzzzzyyy}zzz{zzzz{zzzz{z{zzz{z{zzzzyzyyzyzzzzyzzzzzy{zzyzyy|zz{zzzyzzzzyzz{}zzzz{{zzzzyyzyyyzyyzzzyyzyzyyyyzyyyyyyyzyyzzzzyzzzyyzzzyyyyyyyyzyzzyyyzzzyyzzyzyzzyzzyzxyzyzzzzyzzzzyyyzzzyzyyyzzzzyzzyzzzyzzz{zyzyzzzyzyzzzzzzzzzzzzzzyzzzzzyzyzyyzyzzyzzzzzyzz{zzyzzz{zz{yzyyzzzzzzzzzyzzzzzzzyzzyz{zz{zzz{zzzzz{zzzz{z{zzz{yzzz{z{zz{z|zzz{zzzzzzyyyyyyzzzz{zzz{{z{zz{{zzzzz{{zzzz{z{zyzzzzz{zzzz{zzzzz{zzzzzzzzz{{z{zz{{zzzzz{{zzzz{z{zyzzzzz{{zzz{{zzzz{{zzzzzzzz{{z{zz{{zzzzz{{zzzz{z{zzzzzzz{{zzz{{zzzz{{zzzzzzz{|{z{zz{|zzzzz{{zzzz{z|zzzzzzz{z{zz{z{zzz{z{zzzz{z{{{{{{{{{{{{{z||{{{{{{{{{{{z{{{|{z{{|{{{z{|{{{{{zyzzzzzzzzzzzzzzz{zzzzzz{zz{zzzyzzzzzz{zzzzzzzzzzzzzzzzzzzzzzzzzzzz{zzzzzz{zz{zzzzzzzzzz{zzzzz{zzzzzzyzzzzzzzzzzzzzzz{zzzzzz{zz{zzzzzzzzzzz{zzzzz{zzzzzzz{{zzzz{{{zzzzz{zzzz{z}zz{z{zzzzzzzz{{zzzz{{z{zz{{yz|{{{z{z|{{z{z{|{{z{{{|{z{{{zz{{{|{{||z{z{||z{z{yyzzyyzzyzzzyzyzyzzyyyzzzyzyzyzyyzzzzzzzyyzz{zzyzyyyyzyzzzyyzzyzyzz{zyyzzzzyzzzzzyzzzzzzz{yyzzz{zzzyzyyzyzzzzzzzzzzzz{zzzz{z{zzzzyzyzzzzzzzzzzzzzzzzzzyzzzzzzzyzzzzzzzz{zzzzzz|zzzzzzzzzzzzzz{zzzz{zzzzyzzz{{z{zzzz{z{zzz{z|{zzzzz{zz{zz{zz{|zzz{|{{{z|{{zzzzyz{zz{zzz{zzzzz{{zzzz{z{zz{{zzzz{zzzz{zzzz{zzzzzzyyyzyzzyyyzzyyyzzzyyyzzyzyyzyzyyzzzzyzzz{yyyzzyyyyzyzzyzzyzzzzzyzzy{yzyz{z{zyzyyzyzyzzzzzzzyyzzzyzyzyyzzzzzzyzzzyzyzz{zyzzzz{yzzzzzzzzzzzzzzzzyzzzzyzyzzz{zz{zzz{zzzzz{{zzzzzz{zz{{zzzz{zzzz{zzzzz{zzzzzzzzzyyzyzzzzyzz{zzzz|z{yzzz{zz{zzzyzzz{yzz|{zyzz|{z{zzzz{zz{zzz{zzzzz{{zzzyzz{zzz{zzzz{zzzz{zzzzz{zzzzzyy{{y{zyz{{zzzyzzyzzzy{z{yzz{yyzy{{zzzy{{zzyz{{zzzzyyzyzyzyyzyyyzyyzzyyzyyzyzyyzyzyyyzzzzzyzzzyyzzzzyzyyyzzzyzzyzyzzzzy{zyzzzy{yzyzzz{zzyz{z{zyzzzzy{zzzzzzyzy{zy{yz{z{zzyz{{yyzzz{{{yzz{zyzy{zz{zy{z{zz{{z{zzyzzz{{z{zz{zzzzzzz{zzzzz{z{zzz{{zzz{{{zzz{{|zzz{{{{zzzzyzyz{zyyzz{zyzyzzzyyzyz{{{yyzzzyyyzzzzzyzz|zzzzzzzzyzyyy{zyzyz{yzyyyzzyyyyyzzzyzzyzyzyzzzyyyzzzyyyzzzyyyyyyy{{y{zz{{zyzyzzyzyzy{z{yzz{yyzy{{yzyy{{zzyz{{zzyzyyz{{zyzzy{zzzzy{{yzzzy{z{yzzz{zzyz{z{zyzz{zy{zz{zzzyzz{{{y{z{{zz{z{{{{z{z{{{{{z{{{{z{{{{{{{{{|zz{{{{{{zzzyy{yzy{yy{y{zyyz{yyzzy{{{yzz{{zzy{{zzzy{z{zyz{z{zzyyyyyzzyzyyzzyzyyzzyyyyy{zyyyyzzyyyzzy{yyzzyyy{zzzyyyyyyy{zyzyyz{yzyyzzyyyyy{zzyzzzzyzyzzz{yyzzzyy{zzzyyyyyzy{{y{zyz{{zyzzzyzyzy{z{yzz{zyzy{{y{yy{{zzy{{{zzyzyzyz{zzzyzz{z{zyzzzzzyz{{{zyzz{zyzz{{{zzz{{yz{z{{zzyzz{{z{y{zz{z{zzzz{yzz{z{{{y{z{{z{y{{z{zy{z}{z{{z}{z{zyyyz{yyz{yz{{{{zzz{zz{yzz{{zzyzzzzzzzz{{zzzzzyzz{zzzzz{zzzzz{zzzzyzzzz{zz{zzz{{zzzzzzzyzzz{{zzzzzyzz{zzzzz{zzzzz{zzzzzzzz{{zz{zz{{{zzzz{zzzzzz{{{zzzzyzz{zz{zz{z{zz{{z{zzzzzzz{z{{yz{{{zzz{z{{z{z{{{{{z{zzz{{z{zz{{z{zzz{z{zzyzzzz}{z{{zz}{zz{z{{z{z{z{{{z{z{z{z{{z{zz{{{{z{{{{{z{zzyz{{z{zzz{z{zzzzzzzzzz{z{zzz{{yyzzzzzz{{zzzz{{zzzzzzy{{{z{zz{{z{zzz{zzzzzz{z{zzz{{zzzzz{zz{{{zz{{{{zzzzzyz{{z{zzz{z{zzzzzzzzzz{{{zzz{{zzzzzzzz{{{zzz{{{zzzzzzz{{z{zzz{{{zzzz{zzzzz{z{zzz{{zzz{zzzz{{zzzz{{zzzzz{z{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{z{{{{{z{{{{{{{zzzzz{{z{zzz{{{zzz{{zzzzz{{{zzz{{zzz{{z{z{{zzz{{{zzzzzyy{zzyzyy{zyzzyy{zyzzzy{z{yzyzzyzyzzz{zzz{zy{zz{zzyyzzz{zyzyzz{yzzyzzzyzzzzz{{yzzzzyzyzzzyzyz{yzzzzzzzyzyzzzzy{zyzz{zyzyz{yzyzy{zzyzy{zzzy{zyyzy{zzyz{zzzyzyzzz{{y{zzz{{zzzz{zyzzzz{{{yzz{{zzy{{z{zy{{zz{{{zzzzzzz{{{z{zz{{z{zzzz{zzzzz{z{zzz{{zzz{{zzzz{{{zz{{{zzzzzzzyz{zzzyzz{z{zyzz{zzzzz{{{zzzz{zzzz{zzzzz{zzzz{zzzyzzyz{zyzyzz{yzzyzzzyyzyzz{{yyzyzyyyzzzyzyzz{yzyzzyzyzyyzzzy{yyzz{zyyyz{yyyzy{zzyzy{zzzy{zyyzy{zzzyy{zzyyyyyz{{y{zyz{zzyzyzzyzyzz{{{yzz{{yzy{{zzzy{{zzyz{{zyzyzyz{zz{yzzz{{zyz{zzzzzz{{{zzz{{yzz{{z{zz{{zyz{{{zzyzyz{{{z{zy{{zzzzzz{zzzzz{z{zzz{{zzz{{zzzz{{{zyz{{{zzyzyyyzy{{y{zyz{{zyzyzzyzyzz{z{yzz{{yzy{{yzyy{{zzyz{{zzyzz{||{|z{{||{{z{|{|zz{{{|}z{{{|{|z{{|{||{{|{||{||{||{z{{zzyyzz{{|z{{z{|{|zz{z{|}y{z{z{|zz{z{||{{z{||{|z{||{z{{z{{zzz{{}z{{z{|{|zz{}{|}{{}{|{|{{{|{}|{{z{}|{|z{||{z{{z{zzzz{{|z{{z{|{|~z{z{|}z{z{z{~~z{z{~|{{z{~|{|z{~|{z{{z}|{{z{}}{{{z{|}||z{}{|}{{}{|{|zz{|{}|}{{{}|{|{{||{z{{|}~|||{}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{||}~|{|{{|{z{|z{z{{|z{{y{{{|zz{y{|}z{z{y{|zz{z{zy{{z{|yyzz{|z{y{{z{||{|z{||{{zy{{|zz{{y|}z{{{|z|z{{|{|z{{|{|zyz|{|z{zz{z}{{{zz{}z{{z{|}||z{}{|}{{}{|{|{{{|{}z}{z{}z{|z{|z{z{{z}~z{zz{}z{{z{|}|~z{z{|}z{z{z{~~z{z{~z}{z{~z{|z{~z{z{}|}~|}||}}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}|zzzzzzzyzz{z{yyzzzzyzzzz}zzzzz{|zzzz{zzyzz{zzzzz{zzzzz{z{|z{zz{{|z{{{{{|zz{z{|}z{z{z{|zz{z{{z{{z{|zzzz{|z{z{{z{||{|z{{||{{z{{|zz{{z|}z{{{|{|z{{|{|z{{|{|zzz|{|z{zz{z{|{{|z{{|{}{z{{|{z{{{z}{{{{|}||{{|}{z{{|}{z{z|}zz{z{{z{|zzzz{{}z{|z{|||z|}{|}||}||{|zz|||}|{{z|}|{|z{|||z{~z}~{{{z~}~{{~z~|}~z~}~|}{~}~|~~~z~|~~z}{{~~z~|{{~{~z~yyzz{yyzzzy{|}z|}z}{}zz{{{z{zz{{{zzzz{{|{zz{z{}{{zzzz{{z{{{z{z{{{zzz{{zzzzzzz{{{z{{z{{{zz{z{{|{zz{z{}{zz{z{{zz{{|z{z{{|{zz{{|{z{z{z{|{z{z{{|{{{z{|{|{z{{z|}{{{z{|{{{{{||{{{{||{|{{||{z{{z}|{{{z{}|{{{z{|}||z{{{|}{{{{{|{{{{{|z}{{{|z{|{{|z{z{{z{||||z{|}|{{z||||{z|}||}||}||||{||{}z{||{}zzz|{|z{zz{z{~|~|{{~~{}{{~|~~~{~}~|}{~}~|}~{~|}~z{~|}~{{z|}~{{{{{z{|z{|z{{|z}{z{{{|zz{{{|}z{{{|}z|yzz{z{{|}{z{z|}zz{z{{z{|z{|z{{|z}{z{|{|zz{{{|}z{{{|}||{z{||{{|}||{||}||{z{{z}|z{|z{}|z}{z{|}||z{{{|}z{{{|}||{{{|z}{|}|z{||}|z{z{{z{|z{|z{{}z}{z{|{|zz{}{|}z{}{|}||{{|}z{{|}}z{z|}zz{z{{z{~{{|z{{~{}{z{{{~~z{{{|}{{{{|}|~{{|}z{{|}~z{z|}~z{z{}{}~|}||}}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}|{z{||{|z{{||{{z{|{|zz{{{|}z{{{|{|z{{|{||{z{||{||{||{z{{z}||{|z{}||{{z{|}||z{{{|}z{{{|{|z{{|{|z}{{|z{||{|z{z{{z{||{|z{{}|{{z{|{|zz{}{|}z{}{|{|z{{|{}z{{|}zzz|{|z{zz{z{~|{|z{{~|{{z{{{~~z{{{|}{{{{|{|~{{|{|z{{|{zzz|{~z{zz{z{||{|z{{}|}{z{|{|{z{}{|}{{}{|}||{{|}}z{{|}}{z|}|z{z{{{}~|{||{}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||}~|{|{|{{z}|z{zz{}|z{{z{|}||z{z{|}z{z{z{|zz{z{|z}{z{|z{|{|z{z{{z{|z{zz{{}z{{z{|{|zz{}{|}z{}{|{|zz{|{}z{{z{}zzzzzzzz{{z{~{{{z{{~{{{z{{{~~z{z{|}{{z{{{|~z{{{|z{{{{|zzz{{zzz{{z{|z{|z{{|z}{z{{{|zz{{{|}z{{{|}||{{|}|z{{|}|z{z|}|{z{{z{||{|z{{}|{{z{|{|{z{}{|}{{}{|{|z{{|{}z{{|{}zzz|{|zz{{{}~|{||{}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{||}~|{{z{zz{||||~}|||~}|}}|~}|}|~~}|}|}|}|}|}|~~}|}||}}~}||||}}~}||{{{|||z{|||{{{|||{{||||{{{z}|{{{{{|{{{{{|||{{{{|{||{{{|{{|||{||||{{{|||{{||||{{{{}||{{{||{{|{{|||{{|{|{||{{|{z{z}|z{|}|{}z|}|{{~|}|{{{{}|{{{z~~}{{z{}|~}z{z|{|~}z{{{z{}|{z}||{{{}||{}|}||{}{{}|{}{{{|{}{{{}}}{{{{|{}|{{{||||||||||||}||||||||||||||}|||||||}||||||}}||||||}}||{|||||~}||~}|}}|~}|}|~~}|}|}|}|}|}|~~}|}||}}~}||||}}~}||{z{z~}{z{}{{}z|}{{{~{}{{{{{}{{{{z~~}{{z{}{~}z{z{{{~}z{z{z{}}|{z}|{{{}{|{}|}{|{}z{}|{}z{{|{}z{z}}}{{z{|{}}{{z||||||||||||}|||{|||||z||||}{|||||{}|||||{}}||||||}}|||{{|||||||||{||||{|||||{|{|}|{|{|||z|||{|||{||||{||{|||}|}|~}||}~}|}}~}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}||}|~}|}|{|{~}|{|~}||}{}||{~|}||{|{}||{|{~~}{|{|}|~}{|{|||~}{|{{{{}}|{{}}|{{{}|{}|}}|{}{|}|{}{{||{}{{{}}}{{{{|{}|{{{|||||}||||}||}|||||||}|||||}|||||||}||||}{}}||||||}}|||{{||}||||}|{{|||||||}|{|{|}|{|{|||{|||{}||{||||{||{||{z{z|}|{{|}|{{{||{{||}|{{{{}|{{{{||{{{{{}{|{{{z|{{|{{{|{|{~}|{|~}|~{|~}|~}~}|~}~|}|~}~|~~~}~||}}~~||{|~}~{{||{{{|}|{||}|{{{|}|{}|}|{}{|}||}{{||{}|{{}}}{{|{|{}}{{||||||||||||||}|||||||||||||}{||||||}||||||}}||||||}}|||{{|||||||||{{||||{||||||{|}|{|{|||{|||{||}{||||{|}{||zz{z||{{z||{{{{||{{{{||{{{{}{{{{{||{{{{{|||{{zz{{{|{{zzzzz{|{zz{|{{{{{|{{{{{{{{{{}{z{z{{|{{z{z{|}{{zz{{{}{zz}|}|}|{}{{z{{{{z}{{{z~|~|~|||~~~||}}~~|~}~~~|~}~|}|~}~}~}}~}~|}~}}~|||}~}|~||||}}|||}}||||}}||}}}}||}||}||}||}|}|||}}}||||||}}||||{||}}|{|}}||||}}|||}}}|||||}|||||}|||||}|}|||||||}|{||{|{}}|{|}}||||}}||}}}}||}|}}||}|}|}{}}|}|}|}|{||}}|{||{|{}}|{|}}||||}}|||}}}|||||}|||||||{|||}|}|||{|||}|{||{|{}}|{|}}||||}}|||}}}|||||}|||||||{|||}|}|||{|||}|{|}}}}|~}}}}~}}}}|~}}}}~~}}}}}|}}}}}}~~}}}}}}~}}}}}}}~}}}||||~||||~|||}|~||||~~||||||}|||||~|}||||||}||||||~}|||||||||||||||}|||||}|}|||}||}||}||||}}||||}}|||||}}}|||||||}||||}||}||}|||||}|||||}|||||||}||||}{}{|||||}}|||||||||||||||}||||||||||||||}|||||||}||||||}{z||||}}|||||||||||||||}||||||||||||||}|||||||}|||||{|{zz||||}||||||||~}|||~}|}}|~}|}|~~}|}|}|}|}|}|~~}|}||}|~}||||}~}|||||||||||||||}|||||}|}|||}||}||}||||}}||||}}}|||||}}|||{||~||||~||{{|~||||~~||||||}|||||~|{|||||{|{||||{|{|||{{|||||||||{{||||{}|}||{}{|}||}{|||{}||{|}}{||||{}}||{{{||}||{|}|{{||}|{|||}|{|{|}|{|{|||{|{|{}{|{|{||{{|{{{{{|||||{|||{{||||{|||||{|{|}|{|{|{|{|{|{||}{|{||{|}{{zzzz{{zzz{{z{zy{{z{z{{z{z{z{z{zzy{zzzz{|{{{zz{z{{{zzyyyz{{{|{zz{|{{z{{|{{{||{{{zzy{{{z{y{{z{z|{{{{z{{{{|z{z{z{{|{{{z|{{{{}|{{|{z{{|{{{{{|{{zz|{{{||{{{{{{{|{{{{{z{z{{z{{{{{{z{{{{z{{{{z{{z{zz{zzzz{z{{{|{z{z{{{|{z{yyzzz{zzz{|z{z{{|z{z{|z{z{z|z{yzz{{yzz|}{{zzz{z{{{zyzy{z{|zz{|z{{z{|z{z{|z{z{{{zzz{z{|zzz{|{{{zzz{{{{{zz{z{z{{{{{|{{{z{|{{z{|{{z{{{{{z{zz{{{z{{{|{z{z{{{|{z{zz{z{{{|{{{|{{{{}|{{|{{{{|{{{{{|{{zz|{{{||{{{{{{{|{{{{yzzzz|{zzz|z{z{{|z{z{|z{z{z|zzzzz{zyzz|}{{{zz{z{{{zyzy{z{|{zz{|{{z{|z{z{|z{z{{{zzz{z{|zzz{|{{{zzz{{{{{zz{{{{{|{{{{|{{|}|{z|{|{z|{|{{z|{|{z|{|{||{{|{{{{|{{{{{z{{{|{{{{|{{{}|{{|z|{{|{{y{{|{{z{|{{{||{{{{{{{|{{{{{{{{{{|{{{{|{{{||{{|||{{|{|{{{|{|{{|{|{||{{|{{{{||{{{{z{z{|{z{{||{{z{|{{{{|{{{{z|z{{zz{{{z{|}|{z{z{{{|{z{zz{z{|{zz{|{{{z{|{{{|{{{{{{{z{{z{|{zz{|{{{{zz{{{{{zz{{{{{|{{{{|{{{|}|{|{|{z|{|{{z|{|{z|{|{||{{|{{{{|{{{{{{{z{{{{{{{{{{{{{{{{{{{z{{z{{z{{zzz{{{{{|{{{{{{{|{{{{z{{{||{{{||{{{}||{|{|{|{{{|{|{{z{|{{{|}{{{{{|{|{{{{{z{z{|{z{{|{{{z{|{{z{|{z{{{{{z{z{|{{z{|||{z{z{|{|{z{{{{{{|{{{{|{{{|}|{{|{|{|{|{{z|{|{z|{|{||{{|{{{{|{{{{{{{z{{{{{{{{{{{{{{{{{{{{{{z{{z{{zz{{{{{||{{{{{{{|{{{zzzzz{{zzz{{z{z{{{z{z{{z{zz{z{zzzz{zzz{|{{{zz{z{z{zz|{{{{{{{z{{zzzz}|||}}||}}}||||}}|||}}||||}}|}|||||}||}}}||}|||}}||}{{|{|}|{{|}|||{}}|||}}|||||{||||{|||{|}}}|{{{|||||{{{{{{{}|{{{}|||{}}|||}}|||{{{|{|{{{{|{{}}||{{{|||||{{{{{{{}|{{{}|||{}}|||}}|||{{{|{|{{{{{{{}}||{{{|||||{{{{{{{}|{{{}|||{}}|||}}|||{{{|{|{{{{{{z}}||{{{|||||{{{{{{{|{{{{|{{{|{|{{|{|{{|{|{|{|{|{||{|{|{{|{{{{|{{{{}|}|}|}||||}}||}}}}|}|}}|}|}}}|}|}||}|}|}||}|}|||}|}|{{{{{||{{{||{{|}||{|{||{|{|{|{|{|{||{|{||||{{|{||{{{{{{{{|{{{{||{{|{||{|{|{{|{|{{{|{|{||{|{|{|{{{{{||{{{{{{{{|{{{{||{{|{||{|{{{{|{|{{{|{|{||{|{||{{{{{{|{{{{{{{{{|{{{{||{{|{||{|{{{{|{|{{{|{|{||{|{|{{{zz{{|{{{{z{{z{|{{z{|{{{{{|{{{||{{{{{{{{{{{{|{{{{|{|{{z{{{{{{z{||{|{|||{|||||{|||||||||||||||||||{||||||{||||{|{}|{|{{{{{|{{{{||{{|}||{|{|{{|{|{{{|{|{{|{|{||{{|{{{{|{{{{{{{{|{{{{|{{{{}|{{|{|{{|{{{{{|{{z{|{{{||{{{{{{{|{{{{{{z{{{{{{|{{{{{|{{{{|{{{{{{{{{{{z{{{{{{{|{{{{{{{|{{z{zz{{{{z{{{z{{{{{z{z{{z{{{z{z{{{z{{{{z{|{{{z{{z{{{zzyzzz{z{zz{zzzz{{{{z{z{zzzz{{zzzzz{zy{{|z{z{z{z|zzyyyyyzyxyy{zyzyz{yzyzzyzyzy{yzyyyyzyyyzzyzxzzzzzyyyyyyzzzyyyzzzzyz{zzyz{zzyzyyyyyzzyzyy{|zzyyzzzzzzyzzz{z{zzzz{{z{z{{z{z{{zz{zz{zzz{zzzzz{{zzzz{{{{{zzzz{zz{zz{y{{z|z{{zzzz{z{{zzzz{zzzz{z{{|zzzz{{z{zzzzzyzz{z{zz{zzzzz{{{z{z{zzzy{yzzzzz{zy{{|z{z{z{z|zzyyzyzzzzzyz{zzyz{yzzz{zzzzy{yzyzzzzyz{{zzzy{{zzzzyzy{z{z{{{z{{y|z{{zzyz{z{{zy{z{zzzz{z{{|zz{y{{z{zzzyzyzzz{zzz{zzzz{{{{z{z{zzzz{{zzzzzzzy{{|zzz{z{z|zyzzzz{z{zzz{{z{z{{z{z{{zz{zz{zzz{zzzzz{{zzzz{{{{{zzzz{z{z{z{{{{z|z{{zzzz{z{{zz{z{zzzz{z{{|zz{z{{z{zzzzyzyzz{zzzz{zzyz{zzzz{yzzzy{yzyzzzzyz{{zzzy{{zzzzzyyyzyz{zyyz{zzz{{zzy{zzyyzzyzyzz|{yzy{{{zyz{{zz{zyzy{z{z{zz{z{{|z{{zzyz{z{{zy{z{zzzz{z{{|zzzy{{z{zzzzzzzz{z{z{{z{{z{{{z{z{{zz{zz{zzz{zz{zz{{zz{z{{{{{zzyzzzzz{zzzz{{zzz{{{z{{{zzzy{zzzzzzzzz{{|zzz{{{z|zyzyzzzz{zzzz{{zzz{zzy{{zzzzzzzyzz|{yzz{{{zzz{{zz{zzzz{z{z{zz{z{{z|z{{zzz{z{{zz{z{z{zy{z{{|zzzz{{{{zzzzzzz{z{z{{z{{z{z{{zzz{zz{zz{zzz{yz{zz{}zz{z{{{{zzzzz{z{z{zz{z{{z|z{{zzz{z{{zz{z{zzzz{z{{}zzzz{{{{zzzyzyzzz{zyzz{{zzz{{{{z{{zzzzzzzzz|{yzy{{|zyz{{{z|zyzz{z{z{zz{z{{z|z{{zzzz{{{zz{z{z{zz{z{{|zzzz{{{{zzzzzzzzz{zzzz{zzzz{{{{z{z{zzyz{yzzzzyzz{{|zzz{z{z|zzz{z{zz{zzyz{z{z{{{{{{z{}z|z{}{||{}|{|{{|{{z{{{z{{}|{{z{}{||{{|{|{|{|{||{||{|{||{|{||{||{||{|{{{|{||}|{|{|||}|{|z{{{{||{{{||{{|{|{||{|{|{{|{{|{|||||{||}|{{|{|{|{zzz{z{z|{{{z|{{|z|{{{{|{{{{{{{{{z{{z{{|||{{z|{{{|{zzz{z{z|{{{z|{{|z|{{{{|{{{{{{{{{z{{zzz|||{{z|{{{|{z{zzz{z{z{{z{{z{z{{{{z{|{|{zz{z|{{|{{zz{zz{z{{{|{z{{{{{{{|||{{||{||||{{{||{{{{||{{{{|||{{{{||{{|||{{|{zz{z{z{zz{z{{z|z{{{{z{{{{{zz{{{z{|{{z{{||zz{{{||zzzzzz{z{zz{z{{z{z{{{{z{{{z{zz{{zz{|{zzz{{|zz{{{{|zzzzzz{z{zz{z{{z{z{{zzz{{zz{zz{zzz{|{zzz{{zzz{{{{{zzzzzzzz{z{zz{zzzz{{z{zz{zzzzz{zzzzzz{zz{{{z{z{zz{zzzzzzz{{zzzz|{zzz{{{{z{{zzz{{{zz{z|{zzz|{|zzz{zz{zz||zzz{{{{zz{{|{{{z|{{{{|{{z{{{{{z{{|{z{z|{|{zz{{{|zzzz{z{z{zz{z{{z|z{{z{z{{z{{zz{z{z{{z{z{{|zzzz{{{{zzzz{z{z{zz{z{{z|z{{z{zz{z{{zz{z{zzzz{z{{|zzzz{{z{zzzzzzzz{zzzz{zzzz{{{{z{z{zzzzz{zzzzzzzz{{|zzz{z{z|zyyzz{zyy{zzzyzy|{{yxz{zz{yy{yz{zyyzyz{{zzzz{z{zyyyxyyyxyyyzyyyyzzyyyyyzyyyyyzyyyyyyyyzyyyyzzyyyyyyyyyyyyyyzzyyyzzzzyyzyyzyyyyyyyyyyyyz{yyyzzyzyyyxyyzyzzzyyyzzzyyyzz{yyzzyz{zyzyzzzyyzyy{{yyzzzz{zyyyyzzzzy{yzzzzy|{{zyy{zz{yzyzz{zyyzyz{{zzzz{z{zyyxzyzyzzyzz{{yzzzz{yzzzzzyyzyyyzyyyzz{z{zyzzzz{yyyyzz{zy{zzzyzyz{{yyz{zz{yy{zz{zyyzyz{{zzzz{z{zyyyyzyzyzzyyzzzyyy|z{yyzzyz{zyzyzzzyyzyy{{zyzzzz{zyyyyzz{zzy{zzzzyz{{zyy{zz{yzzzz{zyyzyz{{zzzz{z{zyyyyyyyyyyyyyyyyzzzyyzzyyzyyzyzyyyyyyy{{yyy{zyzyyyzyzyzzyyzz{yyz|z{yyzzyy{yyzyzzyyyzyy{{zyz{zy{yyyyyzz{zzy{zzzzyz{{yyz{zz{yy{yz{zyzzyz{{zzzz{z{zyyyzyzyzzyyzzzzyzzz{yyzzyz{zyzyzzzyyzyy{{zyzzzz{zyyyzyzyzzzyz{{{yzzz{yzzzzzyyzyzyzzyyzz{{{zy{zzz{yzyyyyyyzyyyzzzyyzzzyzzyyzyyzyyyy{yxyy{zzzyzzyzzzzyyyyyyzyyyzzzyy|zyyz{yzyyyyyyyz{yyyy{{zzyzzzyzzyzyzyzzyyzz{yyyz{{{yz{zy{yyzzzzyyyzyy{}zyz{{z{yyyyyzz{zzy{z{zzzy{{{zy{zz{yz{zz{zzyzyz{}zzz{{z{zyzxzyzyzzzyzz{{yzzzz{yzzzzzyzzyyz{zyzz{{{zyzzzz{zyzyzz{zzy{zzzzzzz{{yyz{z{zz{yz{zyyzyz{{zzzz{z{zyyyyzz{yyz{yzz|{z|z{||{{zz|{{{y|{|{{y|{{z{||zzz}|||z|{{{{{y{zzz{zzz{z{{{zz|}|{yz}|z|{z|{z{zy{zz{}|z{{}{|{yz{z{{{{z{{{|{{{z||}{z{|z{|z{|z{{{{{z{|}{z{||{}{z{y{z{{|{{{|||{z{|{{|{|{{{{{{{{z{|{{{|||}{z|{{{|{zzz{z{zzz{z|{{zz|{{{y{{zz{yz{z{{zzyzz|||zz|{{{{zzzyzyzzzyzzzyzyz|{{zyz{zz{zyzzzzy{zzy{{zzzz|{{yzzzzzyzzzzzz{zzzz{{{zyz|{z{zy{z|zy{z{zy{zzz{zz|{z|z{z{z{zzz{z{zz{z{{{zz{{z{{z{{z{{z{z{zz{{z{{|{{zzzzzzz{zzz{zz{{zzz{{{yz{zz{zz{zz{z{zzzz{{{zz{{|{zzzzzzzzzzzzz{{yzzz{{yzzzz{zyzzzzz{zzzz{{{zzz{{{zyyyyyyyyyyy{zyyy{zzyyzzzzzyy{zzyzyyyyy{{zyyzzzzyzyyyzyzzyyz|zzyy|zyzzzzzzzzzzzyyz{zyzz{{|zy|zyzz{{zzzzzzzzzzz{{{zz{z{{z{zz{{z{zzzz{{zzzz|{{zz{{{{zyzyzz{zzy{z{zzzz{{{zyz{zz{zz{zz{zzzzyz{{zzz{{z{yyyyzz{zzy{zzzzzyz{{zyz{zz{yz{yz{zyyzyz{{zyzz{z{zyyyyyxyyyyyyxyyyzyyyxzzyyyxyyyxxyyyyyyyyyyxyzyyxyyyzyyyyyyzyyyyzzyyyxzyyyyyzyyyyyyxyyyzyyyyzyyyyxyyyyxyxxyyyyxxxzyyyyzyyyyxyyyxyyyxyyxyzyxxyyyyyxyxxyzyzyyyzyy{yyyzzy{yyzzzz{yzzzyzzzyyzyz{yyyzzy{yxzyzzzyzy{yzyyzzzzzyzzzzzzyzyyyzzyyzzzz{yyzzzzzyyyyyzyyyyyzyyyyzzyyyxzzyyyyyyyyyyyyyyyzzyyyzzyyyxyyyyzyyyzy{yyyyzy{yyzzzz{xyzyyzyyyyzyz{yyyzzy{yyyyyzyyyyyzyyyxzzyyyyzyyyyyzyyyyyyyyyyzyyyyzyyyyyxxyzyyzyyyzy{yyyz{z{yy{zzz{yzzzzzzzyyzzz{yyy{zz{yxzyzzzzyzy{zyyzzzzzyzzzzzzyzyyyzzyyzzzz{yyzzzzzyyyyyyyxyyyyyyyyyzyyyyzyyzyyyyyyyzyyyyyzyyyxzyyyyxyyyyzyyyyzy{yyyzy{yyzzzz{yyzyyzyyyyzyz{yyyzzy{yxzyzzzzyzy{zzyzzzzzyyzzzyzyyzyyzzyyzzzz{yyzzzyzyyyyyyyzyyyyzy{yyyzz{yyzzzz{yzzzyzzzyyzyz{yyyzzy{yyyyyzyyyyyyzzyyyzyzyyzzyyyyyyyyyyyxyyyz{yyyzzyzyxyyyyyxyyyyyyyyyyzyyyyyyyyyyyyxyyyyyyyyzyyxzzyyyyyyyyyxyyyyyyyyyyzyyyz{yzyyyyyyyzyyyyyzzyyxzzyyyyyyyyzyyyyzy{yyyyzy{yz{zz{yyzyyzyyyyzyz}yyyz{y{yxzyzzzzyzy{z{yyzzzz{zzzzyzyzzyyzzyyzzzz}yyzzzz{yyyzyzyyyyzyzyyyyzzyyyyzyyyyzyzzyyzyyyz{zyyyzzyzyyyyyyyzzzyzyzzzzyzz{zzyyzz{zzyzz{zzzyzzyyyzyzzz{{zyz{zzzyyzyzzzzyzz{zzyzzz|zzyzz{zzzyzzzzyzzzzz}{zzz|zzzyyzzzzzzyzz{zzyyzz{zzyzz}zyzyzzyyzzyzzz{|zyz{{yzyy{z{z{zz{z{{|zz{z|{|zz{|{{|z{|zz{{z{{{||zyz||{|zzzzzzzz{zz{{{{zzz|{{{z|{z{{zz{zzz{zyz{|{{zz|{{{{yyyyyzyyyyzy{yyyyzz{yyzzzz{yyzzyzyyyyyyzyyyzzz{yyyyzyzyyyyzy{yyyyzz{yyz{zz{yyzzyzyyyyzy{yyyzzz{yy{zzyzyy{zzy{yz{zzz{yzz|zz{yz{zyzyzy{zy{yyyzzz{y{y{z{z{zy{z{z{yz{z{{{zz{{|z{zz{zz{zzy{{zz{yz{|{{yyzyzzzzyzy{z{yyzzzz{yzzzzz{yzzyyzzyyzzzz{yzzzz{yxyyyyyxyyyyyyyyyyzyyyyzzyzyxyyyyyzyyyyyzzyyyzyyyyyyyyyxyyyyyzyyyyzyzyyzzyzzyy{yyyzyyyyyz{yyxzyyyyyyyzyyyyyyzyyyyy{yyyyzyyzyyzyyyyzzyyyyzzzyy|yyyy{zyzyzzzzyzzz{zzyz{z{zz{zzz{zzzzzzzzzyzz|{zzz{zzzyzyzzzzyzy{z{yyzzzz{yzzzzz{yzzyyzzyyzzzz{yyzzzz{xyyyyxyyyyyyzzyyyyyyzyyxzzyzyyyyzyyzzyyxzzzzyyzzzyyyyyxyyxxyyyyyyzyxyyyyyyyyyzyyyyxyyyyxyyyxyzzyyxzyyyyyyyyyyyyyyyyyzzzyyyyyyzyyyyyyyyyzyyyzzyyyzzzyyyzyyyyyyyyyyyyyyyzyyzyyyyzyyyyyyzyyyyyyzyyyyyyyyzzzyyzzyzyyyyyyyyyyyyyyyyzyyyyyyzyyzzyyzyyzyyyyzzzyyyzyyyyzyzyyyyyyyyyyyyyyyyyyzyyyyyyzyyyyzyzyyyyzyyzzyyxzzzzyyzyzyyyyyyyyyyyyyyyzzyyyyyyyyyyzzyyyyyyyyyzzyyyzzzyyyzzyzyyzyzyzyyyzzyzyzyxzyyyyyyyyzyyyyyyyyyyzyyyyzzyyyzzyzyzzxyyyyxyyyyyzzyyyyyyzyyyzzyzyyyyzyyzzyyxzzzzyyzzzyyyyyyzyyyyyyzyzzzyyyzyyzyyyzyyzyyyzyyzzyyyzzzzyyzzyzyyzyyyyyyyyzyyyzzyzyyyyzyzzzyyzyyzyyyyzzzyyzzyyyzzyzyzyyyyyyyyyyyyyyyzyyyyyyzyyyy{yzyyyyzyyzzyyyzzzzyyzzzyyyyyyzyyyyyyyzyzyyyyzyyzyyzyyyyyyyzyyzzyyyzzzyyyzyyzyyyyyzyyyyyyyzyyzyyyzyyyyyyzyyyyyyzyyyyyyyyzzyyyzyyyyyzyzyzyyyyzzyzyzyzyyyyyyyyzyyyyyyyyyyzyyyyzzyyyzzyyyzzyyyyyyyyzyyyzzyyyyyzyyyzzyyyyyyzyyzzyyxzzzzyyzzzyyzzyyyyyyyyzyyyzzzyzyyyzyzzzyyzyyzyyyzzzzyzzzzyyzzyzyzyyyyzyyyyyyyzyzzzyyyzzzyyyyyzzyyyzyyzzyyyzzzzyyzyzyyyzxyyyyxxyzyyyyzyyzyyyyyyyzyyyyyyyxyyyyyxyzzzyxzzyyyzzyyzyyyyyzyzyyzyyzyzyyyyyzyyyyyyzyyyyyyyyzzzyyzzyyyzzyzyzyyyyzzyzyzzyzyyyyzzyzzyzyzzyyyyzzyyyzzzzyzzyzyzzyyzyyyyzzyzyzzyzzyzyzyzzzyzyzyyzyyzzzzyzzzzyyzzzzzzzyyyyyyyyzyyyzzzzzyyyzzzyzyzyyzyyyyzzyyyzzz{yyzzzzyzyyyyyyyyyzyzyzzzzzyyzzzzzzzyzzzzyzyzzzzyzyzyzzyzzzzzzzzzyzzzzyzzyzzzzzyyzzzzzzzyzzzzyzyzzzzzzyzyzyyzzzzzz{zzyz{zzyzzyzz{zzyyzzzzzzzyzzzzyzyzzzzyzyzzzyzzzzzzz{zzyz{yzyzzz{z{zzzzz{{{zzzzz{{zzzzz{zzzzzzyzzzzzzzzzz{zzzz{zzzzzz{z{zzzzz{z{{zzzz{zzzzz||zzzzzz{zzz{yzz{|zzz{{zzzzyyzyzyyyyyzyzzzyyyyyyzyyyyzyyyyyyzyyzzyyyzzzyyz{zyyyyyzyzyyyyyzyzzzzyyzyyzzyyyzyyzyyyzyyzzyyyzzyyyzzzzyyzyzzzyyyzzzzzzzzzzyzyzzzyzzyzzzyyzyyzzyzyzzyyyzz{zzzzzzz{zyyyzzz{zzyyzzzzzyyyz{yzyyzz{zyzzzzyzzzzyz{zzyyzzzzzzzyz{zzzzzzz{zyzz{z{yz{z{y{zz{zz{zzyyzzz{zz{{z{yyyyyyyyxyyyyyyzyyyyyyyyyyyzyyyyyyyyyyzyyyyzzyyzzyyyyyyyzyyyyyyyzyyzyyyyzyyyyyzzyyyyyyzyyyzyyyyzzyyyyyzyyzyyzyzyyyzyzyzzyyzyzyyyyyyzyyyyzzzyyyzzzyyzzzyyzyyyyzyzyzyyyyzzzzyzzyzzzzyzyzzzzyzyzzzyzyzzyyyzzyzyz{zyzzzzyzyzyzyyzzyzzzzyzzyzzzyzz{zzzyzzzyzzzyzzzz|zzyz{zzzzyyyyyyyyzyyyzzyyzyzyzyyyzzyyyyzyzyyzzyyyzzzzyyzzzyyzyyzyzyyzyzyyyyzzy{zyzyzyyzyzz{{zyzz{yyzy{zyzzy{zyyyyyyyyxyyyyyyyyyyyyyyyyyzxyyyzzyyxyyzyyyyyzyyyxyzzyyyzyzyyyyzzzyyzyz{zyzyzzz{yyyzzzy{yyyzzyyyyzyyyyyyz{yz{yyzyzy{yzz{zy{zz{zyzz{zyyzzz{{{zyz{zyyz{zy{yz{zzzy{zzyzzzzzzzzz{zz{zzzz{zz{zzz{zzz{yzz{{zzzz{zzzzz{z{zzyyy{yyyyyy{yyyyzy{{yyzyzz{{yyyzz{y{yyyzyyyyyyy{yyyyz{y{yyyzzyzyzzz{yyyyz{zyyyyzyyyzy{z{yyz{yyyz{{yyyz{{yyyyyzyyzyzyzyzyyyyzzy{zyzyzyyzyzy{{zyzz{yyzy{zyzzy{zyyy{yyzzyzy{zz{zy{{z{zyzz{{yyzzz{{{zyz{zyyz{zy{yz{zz{y{zzyzzyzzzzzz{zz{zzzz{zz{zzz{zzz{zzz{{zzzz{{zzzz{{{zzyyyyyzzyzyzzzzzyzzzyzyzzzzyyzzzz{{zyzzzyyzyzyyyzyzzzyyzyyzyyyyzzzyyyyyzyzyzzz{yyyzzzy{yyyzzyyyzzyyyyzzz{yzzyyzzyzyzzzz{zyyz{zyzzz{yyyzz{z{yyz{yyyz{{yyyz{{z{yzzzyyzyzyzzyzyzyzzy{zzzz{yyzzzz{{zyzz{yyzy{zyzzy{z{yz{yyzyyyy{zzyzzy{zzzyzz{{zyyzz{y{yyyz{yyyzzy{yyzzz{y{{{y{{{zz{{{yz{z{{zzz{{{{{{{{{{{{{{{{{{{{z{{{{{z{{{z{yzyyzzyyyzzzz{zyz{y{yzzz{yyyzz{y{yyy{{yyy{zyyyy{zz{yz{yyyyyxy{yyyyyy{zyyzyyyyyyyyy{yyyyyzzyyyyzy{yxyyyzy{{yyzyyyy{zzyyyy{zzyzyyyzyyyyz{yyyyyzzyyyzzy{yyzzyzy{{yyzzyzy{zzz{yy{zz{zyyyzyyyzz{z{yyz{zyyz{{y{yz{{zzy{{zyzzyzz{zzzyzz{zzy{zzzzzyzzz{{{zyzz{zyzy{{{zzy{zzz{{yy{z{zy{z{z{{y{{z{zy{z{z{z{z{{{z{z{{y{z{zy{yz{zz{y{yyyy{yzz{zz{{{{zyyzzyyyzzzz{yyzyz{zzyyzzzyzzz{zyyzzzyyz{zzzyy{zzzyzzyyzzyyyzzzz{zyzzz{zzzyzzzyzzz{zyzzzzyyz{zzzzy{zzzyz{yzzzyyy{zzz{zy{{z{zyzz{zzzyzy{z{yzzzyyz{zz{yy{zz{y{zz{zzzzzz{zz{zzzz{{zzzzzzzzzzz{{{zzzzzzz{z{zzz{zzzzz{zz{z{zz{z{z{{z{{{{zz{z{{z{z{z{{{z{z{z{z{{z{zz{{z{z{yyyzzyzyzzzyzzyzzzy{zzyyzyyyyzzy{yyzz{yyyzyyzzz{zzyy{yyzzyzy{zzyzzy{{zy{zzz{zyyyzz{y{yyzz{yyyzy{zzz{z{y{yyyzzyzzyzzzzyzyzzy{zyzyzyyzyzz{{zyzz{yyzzyyzzz{zyzyyyzzzyzyyzzz{yyz{z{{zyyz{zyyzz{z{yyz{{yyz{yyzz{{zzyyzz{{zzz{z{{z{z{z{{{{{z{z{{z{z{{{{{z{{{{z{{{zzz{{{{zzz{yyzzzzy{zzzzzy{{zz{zzy{{zzyzz{z{yzz{{yzzz{z{zz{zzy{{yyzyyyy{zzyyzy{{zyzyzz{zyyyzz{y{yyyzzyyyzzy{yyyz{y{yyyzzyzyyzzzyyyyzzyzyyzyzyyzyzz{{zyzzzyyzzzyyyzzyyyyyyyzzyyyyzzz{yyy{z{zyzyy{zyyzz{zyyyy{zyyy{zyyyy{yyyy{yyzzyzy{zzz{yy{zz{zyyz{zyzzzz{{{zzz{{yyz{{y{zz{{zy{zz{{zzzzz{{zzzzz{{z{zzzz{zzzzzzz{zzzz{zzzz{zzzzz{zzzyyyzyzzyzyyzzzyyyzzzy{zyzzzyyzyzz{{zyzz{yyzz{zyzzz{zyyz|z{z{{z|z{|z{z{|z}{z{z{|zz{z{|}z{z{|}||z{|}|z{{|}|z{zzzyyy{{z|zyzz{z{|y{{z{z{|zz{z{|}y{z{{{|yz{z{|z{{z{|z{zz{zzz{{z|zzzz{z{|z{{z{z{|~z{z{|}{{z{{{~~z{z{~{{{z{~{{z|{|{z{{||z{z{{|}|z{{{{|}||z{{{|}z{z{{{|zz{z{|z}{z{|z{||{|zz{{|}zzz{{|{}z{{}{|{|{z{}{|}{{z{|{|{z{z{}|{{z{||{||{~|{{{|~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{|z{zzz||{z{z||{|zyz{||{{zyz{|zz{zy|}y{z{|z|zz{|{|z{{|{|zyzzz|z{z{{|z{|z{z{|z}{z{y{|zz{z{z}z{z{|}z|z{|}{y{{|}zz{z|{~z{zz{|zzz{{|{|z{{{{|{|~z{{{|}{{z{{{~~z{z{~|{{z{~|{||{|z{z{{|}{z{{|}}z{{}{|}||z{}{|}{{z{|{|{z{z{}|}{z{||{||{~|{|{{|~|||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{|{||{zz{z{{|{z{zyzz{y{{{{|}z|z{{{|}y{z{{{|zz{z{|y}{z{|z{||{||{z{{|||{|{z{||{{{{|}||z{{{|}y{z{|{|zz{|{|z}{|{|z{||{|z{z{{||z{|{{{|z}{{{|}||z{{{|}z{z{|}||z{|}|y}{|}|z{||{zz{z{{|}z{z{{|}z{{}{|}||z{}{|}z{z{|{|zz{z{}z}{z{|z{||{~z{z{{|~z{z{{|}z{{{{|}|~z{{{|}{{z{{{~~z{z{~{}{z{~{{||}~|}|}}|~|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||zyzzzzzzz{zzzzzzz{z{zyzzzzzzzzz}{zzzz{|{zzz{{{yzz{z{zzzy{{z{zzz{{zzzz{z{z{zy{z{zzz{zz}{z{zz{|{{zz{{{zzz{z{zzzz||{z{{z||{|z{z{||{{zz{|zz{zz|}{{z{|{|{z{|{|{{{|{|{zzz{|z{z{{z|z{|{{z{|z}{{{{|{z{{{|}{{z{|}||z{|}|{{{|}|{{z|{|z{zz{|}zzz{{|{}z{{}{|||z{}{|}|{z{|{|{z{z{}|{{z{||{||{~{{{{~|~{{z{~|}~z{~}~|}~{~}~|}{{{~|~~~{{z~~{}{z{~{~|yyzz{zyzzzz{|}z|}z}{}zzz{zzzzzzzzzzzz{zzzzzzz{|zzzzzz}zzyzzzzzzz{{z{zz{zzzzz{|{{z{{z|zzzz{z{{z{{z{z{|zz{z{|}z{{{{|zz{z{|z{{z{|z{z|{|{{zz{||zzz{{|{|z{{{{|{|zz{{z|}z{z{{|zz{z{||{{z{||{||{z{{z{{|{{{z{{|}{z{{{{|}||z{{{z}{{z{{|{z{z{|{}{z{|{{|zz||{z{{z}|{|z{|{}|{{}{|{|zz{}{|}|{z{|||z{|{}z{{|{|zzzzz~|~z~{z~|~|z{|~~z}{}~|~~~z~}~|}{~z~|}~z~|}~{{~|}~{{zz{|z{z{{z|z{|z{z{|y}{z{z{|zz{z{|}z{z{|}||{z{|z{{|}|z{z|{|z{z{{||z{|{{|{|z}{{{|{|zz{{{|}z{z{|}||zz{||{{|}||{||{|z{z{{||z{|{{|}|y}{{{|}||z{{{|}{{z{|}||z{{|{}{|}|{{|zz|z{z{{z}z{|z{|{}z}{}{|{|zz{}{|}z{z{|}||z{|}z{{|}zz{zzz~{{z{{z~{{|z{z{~z}{z{z{~~z{z{|}z{z{|}|~z{|}z{{|}~z{z|{~|}|}}|~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}|||{||{z{{|||{|{{|{||{{{{|{|zz{{{|}z{z{|{|zz{|{||{z{||{||{||{z{{|||{|{{|}||{{{{|}||z{{{|}{{z{|{|{z{|{|{}{{|{{|zz||{z{{z}|{|z{|{}|{{}{|{|zz{}{|}z{z{|{|zz{|{}z{{|zzzzzz~|{z{{z~|{|z{z{~|{{z{z{~~z{z{|}z{z{|{|~z{|{|z{{|{zzzzz||{z{{z}|{|z{|{}|}{}{|{|zz{}{|}{{z{|}||z{|}}{{{|}|{z|{~|{|{{|~|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||{{{{{||{|~}{||~}||{|~}||}|~}|||~~}|||{|}|||{|~~}|{|{}|~}|{|{z{{|{{z{|{|{z{|{|{{z|{|{{{|{|{{{z}|{{{{y||{{{{{||{{{{{z{{|{{z{|{|{{{|{|{{{|{|{{{|{|{{{{}|{{{{{||{{{{{||{{{{{{{{|}{{{|}|{{{|}||{z|}||{||}||{{z}||{{{{||{{{{}||{{{{{zz{z{{z{|{|{{{|{|{{z|{|{{~|{|{{{z}|{{{{~~|{{{{{|~{{{{{{{{{|{{{}{|{|{}{||{{}{||{{|{||{|{}||{|{{||{|{{|||{{{{{{{{{|{|~}{|~}||{|~}||}|~}|||~~}|||{|}|||{|~~}|{|{}|~}|{|{{{{{{}{{{}|{{{{}||{{{}||{||}||{{{}||{{{{||{{{{}{|{{{{zzz{z~{{zz{zz{z{{{{{z{{{{z~z{{{z{z}z{z{z~~{z{z{{z~{z{z{{{{{||{{{}{{|{}{||{{}{||{{|{||{|{{||{|{{||{|{{|{{{{{{{|{|{|{{{{|||||||z|}{||z|||||z|||{}z|||{|z}||{|{{|}||{{||{|{|~}{||~}|||~}||}|~}|||~~}|||{|}|||{|~~}|{|{}|~}|{|{|{|{|}{{{}}|{|}}||{{}}||{||}||{|{}||{|{|||{|{|}||{{|{{z{{{~{{{{~{|{{z{|{{z|{|{{~|{|{{{z}|{{{{~~|{{{{{|~{{{{{{{{{||{{{}||{|{}||{{}{||{{|{||{|{}||{|{{||{|{{|||{{{{{|{|{|{{{{|||||||||}{||||||||||||{}||||{||}||{|{||}||{{z{{{|{{{{|{|{{{{{z{{|{|{{{|{|{{{z}|{{{{{||{{{{{||{{{{||{|}|~}}||~}||}|~}|}}~}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}|{{{{{~}{{{~}|{{{~}||{{}||{~|}||{{z}||{{{~~|{{{{}|~{{{{{{{{{}}{{{}}|{|{}}||{{}||{||}||{|{}||{|{{||{|{{}{|{{{{{|{|{|}{{{|}|||||}||}{||||||}||||{}||||{||}||{|}{|}||{{{{{{{}{{{{}|{{{{}||{{{{z{||}||{{z}||{{{{||{{{{}{|{{{{{{{{{{}{{{{}|{{{{}||{z{{zz|{}||{{z}||{{{{||{{{{}z|{{{{{|{|{~}{{{~}|{||~}|~{{~}|~{~}|~{|{}|~{|{~~~{|{|}{~{{|{{{{{{||{{{}||{|{}|||{{}|||{||||{||}||{|{{||{|{{|||{{{{{|{|{|{{{{||||||||||}{|||||||||||{}||||{||}||{|{||}||{{z{{{{{{{{{{{z{{{{{{{{{{{{{{|{{{{{}z{{{{{||{{{{{{{{z{{zzz{z{{{zz{{zz{z{{{{{z{{{{z{{{zz{z}z{z{z{||z{z{{{{{z{zzzz{z{{{zz{{zz{z{{{{{z{{{{z{{{zzzz}z{z{z{||z{z{{{{{z{z}{}{}|z}|{z{z{zz{z{z{|}|~|~|~||~~||~|~~|~}}~~|~|~~~|~|~|}|~|~|~}|~|~||~}|~|{|{|{}||{{}|{|||}|||{|}|||{|}|||{||}||{|{}|||{||||{||{{|{|{|}{{{|}|{|||}||{{|}||{||}||{|{}{|{|{||||{|}{|{{|{{|{|{||{{{|||{||||||{{||||{|||||{|{}||{|{|||{{|||}{{|{{|{|{||{{{|||{||||||{{||||{|||{|{|{}||{|{|||{{||||{{|{{|{|{||{{{||{{||||{|{{||{|{|||{|{|{}{|{|{|{{zzz|{|{{|{||||}|~}}||~}||}|~}|}}|~}|}|~~}|}|}|}|}|}|~~}|}|}}~}|}|{|{|{~{{{{~|||||~|||}{~||||~~|||||{}||||{~|}||{|{{}||{{{{{{|{{{{}{|||{}{||}{}{|||{|{||||{}||||{||}||{{{{{|{{{{{{{|}{{{|}||{{|}||}{|}|||||}|||{z}|||{{||}|{{{}z|{{{{{{{{|{{{{|{||{{|{|{}{|{|{|{|{|{|{z}|{|{{||}|{{{{||{{{{{{{{|{{{{|{||{{|{|{}{|{|{|{|{|{|{z}|{|{{||}|{{{{||{{{zyzyzzzyyz{zyzyz{zzzzz{zzyzzzzyzzz{zyzyz{yzyzzz{zyzyyyyzzzzzz{zzzz|{zzyz|{zzzz|{zzy|{zzzzz{zzzzz{zzzz{{zzzzzzzzz{{{zz{{{{{{y{{{z{{{{{z{y{{z{|{{{z{zz{{{z{{{|{{{zyzyzz{zyyz{zyzzz{zzzz{zzzyz{zzyzzzzzyzyz{yzyz{z{zyzyyzyzy{yyyz{zyzyz{{zzzz{{zz{{{zzz|zzzyzyz{yzyz{z|zyzyzyzyzzyzzzz{zyzzz{z{zzz{zz{z{zzyzz{zzyz||zyzy{{{{zyzzzzzzz{zzz{{zyzz{{zzzz{{zz{{{zzz|z{zzzzz{zzzz{{|zzzzzyzzzz{z{{{z{{{{{{z{{{z{{{{{z{z{{z{|{{{z{zz{{{z{{{|{{{zyzyzyz{yyy{zyzzz{{zzz{{{zy{{{zyz|zzzyzyz{yzyz{z|zyzyzyzyzz{yzzz{zyzzz{z{zzz{zz{z{zzyzz{zzyz||zyzy{{{{zyzzyz{z{{{zz{|z{z{|z{zz{{z{z{{y{z{|{z{z{z{{z{z{{{|zy{zzzz{z{{{zz{{z{z{{z{zz{{z{z{{z{z{|{{{z{zz{z{z{{z|zz{zz{{z{z{{{z{{{|{z{{|{{{{z|{{{{|{{{{|{{{{{{||{{{z{{|{{z{zzz{z{{{zz{{{{{{{{{z{{{{{z{{{{z{|{{{z{zz{{{z{{{|{{{zzzzzzz{zzzz{{zzzz{z{zzz{zz{z{zzzzz{zzzz||zzzz{{{{zzzzzz{z{{{zz{|{z{z{|{zz{{z{z{{z{z{|{z{z{z{{z{z{{{|zy{z{z{z{{{{{{{{{{{{{{{{{|{{z{{{{z{{{{{z{{{z{{{{z{{{{{{{zzzzz{{{zz{{z{{{{{{z{{{{{z{{{zzz|z{{zzz||{{zz{{|{{{z{{z{{{{{z{{{|{z{{{|{|{{|{|{||{|{{|{{|{{{||{{{{{{|{{{{zzzzzz{yzzz{{zzzz{{z{z{{zz{{{zzz|z{zzzz||zzzz{{|{zzzzzz{z{{{zz{|{z{z{|{{zz{{{z{{{{z{|{z{z{z{{z{z{{{|zy{z{z{z{{{{{{{{{{{{{{{{{{|{{{{{{z{{|{{z{{{z{{{{z{{|{{{{yzyzyz{yyyz{zyzzz{{zzz{{zz{{{zyz|zzzyzyz{yzyz{z|{yzy{z{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|{{{{{{||{{{{{||{{{{zzz{z{{{zz{|{z{z{|{{{z{|{{z{{{z{|{{{z{z{{z{z{{{|{z{z{z{z{{{{{{{{{{{{{{{{{{|{{{{{{{{{{{{z{{{z{{{{z{{{{{{{zzzzzz{yzzz{{zyzz{{zzz{{{zz{{zzzzz{zzzzz{zzzz{{{{zzzzyzyzzzyzzz{{zyzz{{zzzz{{zz{zzzzzz{zzyzz{zyzyz{{zzyz{{{{z{{zzz{zzzz{{{{|{|{{|{|{{{|{|{{{|}|{{{{|{{{{|{{{{{{|{{{{|||{{{{z{z{z{{{zz{|{{{{{|{{{{{|{{z{|{{z{|{{{z{z{{{z{{{|{{{zzzzzz{{{zz{|{{{{{|{z{{{{{z{{{{z{z|{{{{zz{{{zz{{|{{{zzzzzz{{{zz{|{{{{{|{z{{{{{zz{{{zzzz{{{zzz{{yzz{{{{{{zzzzzz{{{zz{|{{{{{|{z{{{{{zz{{{zzzz{{{zzz{zyzy{{{{{{z{z{z{{{z{{{{{{{{{{{{{{|{{{{{{{{{{{{|{{{{{|{{{z{{{{z{{{|{|||{|{|||{{||||{|{}||{||||{||||{{|||{||||{|{{{{|{{z{z{{{{{{{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{|{{{{z{{{{{{{z{{{{{{{{{{{z{{{{{{{{|{{{{{{{{{{|{{{{{{{{{{{{{z|z{{{z{z{{{z{{{{{z{{{{{{{{|{{{{{{{{{{|{{{{{{{{{{{z{{|zz{{z{z{{{z{{{{{z{{{{{{{{|{{{{z{{{{{{{{{{{{{{{{{z{z{zyzyyzyzzyyyzzzzzyzzzzzzxzzyzzzzyzzyzzyzyzzyzyzy{zzzyyyxyyzyyyyzyzyyyzzzyyyyzyzzyyyyzyyzyyyzzzyyyyzzzyyyyyyyzyyyyzzyyyyzzzyyxyzyzyyzyyzyyzyyyzxyyyyyzzyyyyyzzz{yyzz{zzzzz{zzzzzzzzz{zzzzzzzzzzzzzzzyyz{zzyyyzyzzzzyyyzzyzzzzzzzzzzzyzzyzyzzyzzyzyzzyzyzz{zyzyyyyyzzyyyzzzzyyzzzzzzyzzzzzzzzyzyzzyyyzzyyyyz{zzyyyyyyyzyyyzzzzyyzzzzzzyzzyzzzzyyzyzzyyyzzyyyyy{zzyyyyyzyzzyyzzzzyzzzzzzyzzzzzzzzzzzzyzzzyzzzyyzz{zzyyyyyzyzzyyzzzzzyzzzzzzyzzyzzzzyzzyzzyzyzzzzyzy{zzzyyyyzzz{yyz{zzzzz{zzzzzzzzz{zzzzzzzzzzzzzzzyyz{zzyyyzyzyzzzyyzzzzzzzzzzzzzzyzzzzyzzyzzyzyzzyzyzz{zyzyyyyzyzzyyyzzzyyzzzzzzyzzzzzzzzzzzzzyyyzzyyyyz{zzyyyyyzyzzzyyzyzzyzzzzzzyyzyz{yzyzzyzzyzyzzyzyzz{zzzyyzyzyzzzyyzzzzyzzzzzzyzzyzyzzyzzyzzyzyzzyzyzz{zyzyyyzzyzzyzyzzzzzzzzzzyzzzzzzzzzzzzzzzzyzzzyyzz{zzyyzzzyzzzz{yzzz{zzzz{zzzzzzzzz{zzzzzzzzzzzzzzzzyz{zzyzyzyzyzzzyyzzzzzzzzzzzzzzyzzzzyzzzzzyzyzzyzyzz{zyzyyyyzyzzzyyzzzzzyzyzzzyzzyz{zzyzzyzzyzyzzyzyzz{zzzyyyyzyzzyyyzzzzyzzzzzzzzzyzzzzyzzyzzyzyzz{yyzz{zzyyyzyzyzzzyyzzzzzyzzzzzyzzzzzzzzzzzzzyzyzzzzyzz{zzzyzyyzzzz{zyzz{zzzzz{zzzzzzzz{zzzz{zzzzzzzzzzzzz{zzzzyyyzzzzzyyzzzzzyzzzzzzyzzz{zzzzzyzzyzyzzyzyzz{zzzyyyyzyzzyyyzzzzyzzzzzzzzzyzzzzyzzyzzyzyzz{yyzz{zzyyyzyzyz{zyyz{zzzzz{zzzz{zzzzzzyzzzzzyzyzzyzyzz{zzzyyyyzyz{yyyz{zzzzz{z{zz{z{yzzzzzzyzzyzyzzzzyzz{zzzyyzzzzzzzyzzzzzzzzzz{zzzz{zz{{zz{zz{zzzzzzzyzz{zzzyyyzzzzzyyzzz{zzzzz{zzzz{zzzzzzzzzzzzzzzz{zyzz{zzzyyzzzzz{zyzz{zzzzz{zzzz{zzzzzzzzzzzzyzyzzyzyzz{zzzyyyyzyzzyyyzzzzzyzzzzzzyzzzzzzzzzzzzzzyzzzzyzz{zzzyzzz{zzzyzzzyzyzzzzzzyzz{z{zzz{{zzyz{zzzz{z{{zz{zzyz{{zz{{zzzyz{z{z{{zzz{{{zzz{{{{z|{{{zz{z{z{{zz{z{zzz{z{{|zz{zzzzzzzzzzzzz{zzzzz{z{zz{{{{z{z{zzzzz{zzzzzzz{{|zzzyzzzzzzzzzzzzzzzzzzzzzy{{zzzz{zzzzzzzzyzzzzz{{zzzyyzzzzzzzzzzzzzzzzzzzzzy{{zzzzzzzzzzzzzzzzzyz{{zzzyyyyzyz{zyyz{zzzzz{z{zz{z{zz{z{zzzzz{zzyzz{zyz{zzzy|{{{{{{{z{{{{{zz{{{{{{{{{{{z{{{{{{{z{{{{{z{{{{{{zz{yzyzzz{zyyz{zzzzz{zzzz{zzzz{zzzzzzzzzzyzz{zyzz{zzyyyyzyz{yyyz{zzzzz{zzzz{zzzzzzzzzzzzzzzyzz{zyzz{zzyyyyzyz{yyyz{zzzzz{zzzz{zzyzzzzyzzzzzyzyzz{zyzz{zzzyyyyzzzzyyzzzzyzyzzzzyz{yz{y{yyzzzyyyyyzyyyyz{zzyyyyxyyyzyxyyyzxyyyzzyyyyyzyyxyyyyyxyyyyxyyyyxzyyyxyxxyxyyzzyyyyzzyyyzzyyxyzyyzyyzyyyyyyxyyyyyxyzzzzyxyxyyyyyzzyzzyyzyzzyyyzzzzyzzyzzzzyzyzzyyyyyz{yyyz{zyyyyyyyyzzyyyzyzyyzyzzzzyz{zz{yyzyzzzyzyyyyyyyyz{{zyyxxyyyyzyyyyyzyyyyzzzyyyyzyzyzyyyyzyyyyyzyyyyzzzzyyyxyyyyyyyyyyzyyyyzyyzyyzzzyyyyyyzyzyxyyzzxyyzzzzxyyxyyyyyyyyyyyyyyyyzzyyyzzzyxzzyyyyzzxyyy{yyxy{{zyyyyyyyzzzzyzzzzyzyzzzzyz{zz{y{yyzzzyyyyyzyyyyz{zzyyyyyyyyyyzyzzyyyzzyyyzzzzyzzzzzzzyzyzzyzyyyz{yyyz{zyyyyyyyyzzzyyyzzyyzyzzzzyz{zz{yyzyzzzyyyyyyyyyyz{{zyyyxyyyyyzyyyyyyyyyzzzzyyyzzzyzyyyzzzyyyyzzyyxzzzzyyyxyyyyyzzyyyyzyyyzzzyyyzzzzxzzyyyyzzyyyy{yyxz{{zyyyzyyyzzzzyyzzzzzyzzzzyz{zz{z{zyzzzzzyyyzzzyyz{zzzyyyyyyzyzyzzyyzyzzyzzzzzyzzzz{zzyzzzzzyyyyz{zyyz{zzzyyyyyyzzzzyyzzzzyzyzzzyz{zz{yyzyzzzzyyyyzzyyyz{{zyyyxyyyyyzzyyyyzzyyyyyzyyzyyzzyzyyyyyyxyyy{yyyz{zzyyyyyyyyyzyyyyyzyyyyzzyyzyzzyyyyyyzyyzyyyzzyyyzzzyyyzxyyzyyzzzyyzzzzyyzzzzyzzzyyzzyyzyzzyyyz{yzyz{{zyzyyyyzzzzzzyzzzzzzyzzzzzzzzz{zzzzzzzzzyyzz{yyyz{zzyyyxyyyyyzzyyyyzzyyyzzzzyyzzzzzzyyzzyzyyyz{yyyz{zzyyyyyyyzzzyyyzzzyyzyzzzzyz{z{y{yyzzzyzyyyzyyyyz{zzyyyxyyyyyzzyyyyzzyyyzzyzyyyzyyyzyyyyzyyyyyyyyyzzyzyyyyyyyyyzyyyyyzyyyyzzzzyzyzzyyzzyzyzzyyyyzyyyzzzzyyyyzyzzzzzyzzzzzyzzzzzzyz{zz{zzyzzzzyyzyz{yyyz{{zyyyyyyyzzzyyyzzzyyzyzzzzyz{yz{z{yzzzzyyyyzzzyyz{zzzyyyyyyyyzyyyyyzyyyyzzzzyzzzzzyzzyzzzzyyyyyyyyzz{zyyyyy{zzzzzyxyyyyyzyyyyyzyyyyz|zyyy|zzzyzzzyyyyzyyyyzyyz|{zyyzxzyzyyzy{zyzzy{yzzzzzzyz{zzyzzzyzzz{yzyzy{yzz{zyzzyzzzz{zzzzz{zzzz{zzzzzz{{{{z{{zz{zz{yz{z{zyz{{zyzyzyzyzzzzyyzzzzyzyzz|{yz{zz{z{zzzzzzzzyyzzzzz{{|zyyyyyyyyzyyyyyzzyyyzzzyyyzzzzyzzzyzzyzyyyzzyyzz{zyyyyyyyyyzyyyyyzyyyyzzzzyzyzzyxyzyyzzzyyyyyzyyyzzyyyyyyyzyzzzzyyzzzzyyzzzzzzz{zyzzzyyzzy{yyzyzyyyzzyyy|zzzzzzz{zzzzz{zzzz{zzzz{zz{zzzzzz{{zzzzzz{zzz{{{zzyyyyyyyzzyyyyzzyyyzzzzyzzzzzzzzyyzzyzyyyz{yyyz{{zyyyyyyzzzzyyzzzzyzyzzzzyz{yz{y{yyzzzyyyyyzyyyyz{zzyyyyyyyyyyyyyyyyyyyzzyxyzyyzyyyyyyyzyyyyyyzyyyyzzyyyyxyxyxxyxyyyyyyyxzyyyyyyyyyxyyxxyxyyyxyyyyxxyzyzyxxyxyyyyyyyyzyxyyyzzyxyyzyzyyyyyyzyxxyyyxxxyyyzzyxzxxxxxxzxyxyzyzyxyzyyxyzyyyyyyyxxyyyyyxyyyxyxyzyyzyyyyzyyyzyyzyyzyzyzyyyzzyyyzzyzyzzyyyzzyyyyyzzyyyzzzzzyyyyyyyyyyyyzzyyyyzzzyyzyyzzyyyyyzyyyyyyyyyyyyzzyyyxyyyyyyyyyyzyyyyyzyyyyyyyyyyyyyyyyyxyyyyyyyxyzyyyyyyyyyyyyyyyyyyyyyyzyyyzzyzyyyyyyyzyyyxyyzyyyyzzzyzxxyxyyyzyyyzyzyxyzzyxyzyyzyyyyyyzyyyyyyyyyyyyzzyzyyyyyyyyyyyyyyyzyzyyyzzyyyyzyzyzzyyyzyyyyyyzzyyyzzzyyyyyyyyyyyyyyzzyyyyzzzyyzyyzzyzyyyzyyyyyyyyyyyyzzyyyxyyxyyyyyyyyyyyyyyzyyyyyyzyyyyyyzzyyyyyyyyyyyzzyyzyyyyyyyzyyyyzyyyyzyyyyzyyyyyyyyxyyyyyyyyyyyyyzyyzzyyyyyyyzyyyyzyyyyzzyyyzzyzyyyyyyyzyyyyyyzyyyyzzyzzxzyzyyyzzyyyzzzyyzzzzyzzzzzzzyyyzyzyyyyyyzyyyzzzzyyzyyyzyzyzyyzyzyzyyzzyyyzzyzyzzyyyzzzyyyyzzyyyzzzzzzyyyyyyyzyyyyzzzyyyzzyyzyyzzyyyyyzzyyyyyyyyyyyzzyzyxyxyyyyyyyyyzyyyyyzyyyyyyzyyyyyyzyyyyyyyyyyyyzzzyyyyyyyyyyyyyyzyyyyyzzyyzzyzyyyyyyzyyyyyyyyyyyyzzzyzyyyyyyyzyyyyzyzyyyzzyyzzyzyyyzyyzzyzyyyyzyyyyzzzzyyyyyzzzzyyzzzzyzzyzzzyyzzzzzzzzzyzzzzyyzzzyyzzzzyyyyxyyyyyyyyyyzyzyyyzzyyyyyzyzyyyyzyyyyyyyzyyyyzzyyyyyxyyyyyyyyyyzyyyyyyzyyzyyyyzyyyyzyyyyyyyyyyyzyzyzyyyyyyyzyyyyyzzyyyzyzyyzyyzyzyyyyzyyzyyyzzyyyzyzzyyyyyyyyyyyyyzzyyyyzyzyyzzyzyzyyyyzyyyyyyyyyyyzyzyyyyzyzyyyyzyyzzzzyzzzzyyzyzzzzzzyzzyyyyzyzyyyyz{zyyyyyyyyyyyyyyzzyyyyzzzyyzzzzzyzyzzzzyyyyzzyyyyzzzyyyyyyyzzyyyyyyyyyyyyyyyyyyyyyzyyyyzzzyyzzyzyyyyyyyzyyyyzzyyyyyyzyyyyyyzyzyyyyyzzyyyz|yzyyyzyyyyyyyyyzzyyy{zzyyyyyyyyyyyzyyzyyyyzzzyyyzzyzyyyzyyzyyyyyyzyzyyzzyyyyyzyzyzyyzz{zzzzy{z{zyzzzz{zzz{zz{zz{yy{zzyzzz{zyzyyyyyzyzzyzyz{zyzyzz{yyzzzzzyzyyyzyyyyzyzyyyzzz{zyyyyyyyyyyyyyzyyyyyzyyyyyyyyyyyyyyyyyyyyyyyyyyzyyyyyyyyyyyyyyyyzyyyyyzzyyyzyyzyyyyyyzyyyyxyyyyyyzzzyzyzyyzyyzzyyzzyzyzyzyyyyzzyzyzyzzyyyyyyxzyzyyyyzyz{yyyzzzzyyyzzzzyzyyzz{yyyzzz{zzzzzz{zyyyyzzzyyyzz{yyyyyyyyyyyyyyzyzyyyzzyyyzyyzyzyyyyyzyyyyyyzyyyyzzyyxyxxxzyxyxyyxyyxyyyyzyyyyyyxyyxyyyyxyxxyyxxxyyyyxxyyyyyyyyyyyyyzyyyzyyyyyzyyyyyyyyyzzxyyyyyyzyyyzyyyzyyyyzxyyyyzzzzyyyyzzyzyyyzyzyyyyzzyzyyyyxyyyyz{yyzyyyyyzyyyyzyzyyyzyzyyzyyyzyzzyyyzzyzyyyyyzyyyyzyyyyyxyyyyyzyyxyyzzzxyyzyzzyyyyyyyzzyyyzzyyxyyzyzyyzzzzxzyyyyzzyyyyzzzzyyyyzzyzzyyzyzzyyyzzxzyyyyxyyyyz{xxzxyyyyzyyyyzyyzyyyyzyyzyyyzxzyyyyzzxzyyyyyxyyyz{yyzyyyyyzyyyyzzzzyyzyzzyzzyyzyzyyyyzzyzyyyyyzyyyz{yzzyyyyyzzyyyzzzyyyyyzzzzyyzzyzzzyyzzzzyyyyyzyyyyzyyyzxzyyyyyzzyyyzzzzyyzyzzyzyyyzyzzyyyzzyzyyyzyxyyzz{xyzyyyyyyzyyyyyzzyyzyyyyyzyyyyyyyyyzyyyyyyyyyyyzyyyyzyyyyyzzyyyyzyzyyzyyzyzyyyyyzyyyyyzyyyyyzyzyyzyyzxzxyyyyzzyyyyzyzyyzyzzyzyyyzxzyyyyzzxzyyyyyzyyyz{xyzyyyyyzzyyyyzzzyyzyzzyzyyyzyzzyyyzzyzyyyyyzyyyz{yzzyyzyyzzzyyyzzzyyzyzzzzzyzzzzzzyyzzzzyyyzzzyyzyzzzzyzyyzyyyzyyzyzzzzyzyzyyyzyyyyzzyyyzzyyyyyzyzyyzzzyxzyyyyxyzyyyyzyzzyyyzyyzzyyzyyyyyyzzxzyyyyyzxyyyzxxzyyyyyzzyyyyzzzzyyyyzyzyyyzyzzyyyzzxzyyyyyyyyyyzyyzyyyyyzzyyyyzzzzyyzyzyzyyyzyzzyyyzzyzyyyzyyyyzyzzxzyyyyyzzyyyyzzzzyyzyzyzyyyzyzzyyyzzxzyyyyyyyyzz{zzzzzzzyzzzzyzzzzzzzzyzzzzzzzzzzzzyzzz{zyzzzzyzzz{zzxzyzyyyyzyyyzzyzzyzzyzyyzzyzyzzyyyzzyzyyzzyyyzzzzyyzyyyyyzzyyyyzzyzyyzyzzyzyyyyzyyyyzzyzyyyyyyyyzz{zzzyyzyyzzzyyyzzzzyyyzzzyzyyyzzzyyyzzyzyyyyzyyyyz{zzzyyzyyzzzyyyzzzzyyzzzzzzzyzzzyzyyzzzzyyyzzzyyzz{zzzyzzzyzzzzyz{zzzyzzz{zzzzzz{zzzzz{zz{zyzzzzyzzz{zxzyyyyyzzyyyyzzzzyyzyzzyzzyyzyzyyyzzyzyyyyyyyyyz{zyyyyyyzzzzzxzyyyyyzzyyyyyzzzyyzyyzyzzyyyyzzyyyyzyzyyyyzyyzzyzxzyyyyyzzyyyyzzzzyyzyzzyzzyyzyzzyyyzzyzyyyyyyyzz{yzzyyzyyzzyyzyyzzzyyzzyzyzzyzyzzzzyzyzyzyzzzzyyzzyzyzyzyzyzzyzyzzzyzyzzyzzyzzzyzzzzyzyzzyzzyzzyyzzz{zyzyzyyyyzyyzzzyzzy{{zzyyzzzzzyzzyzzzzyzyzz{yyz{zzyxzyyyyyzzyyyyzzzzyyzyzzyzyyyzyzzyyyzzxzyyyzyyyyz{yyzyyyyyzzyyyyyzyzyyzyyzyzyyyyyyyyyyyyyyyyyzyyyzzyyxzyyyyxzzyyyyzzyzyyzyzzyzyyyzyzyyyyzyxzyyyzyyxyyzzzzyzyyyzzyzyyzzzzyyzyzzzzzzyzyzzyzyzzzzyyzzzzyyzzyzxzyyyyyzzyyyy{zyzyzzz{zyzzzz{yzzyzz{yyzyyzzzyyyzz{zzyyzyz{yzzyzyz{yzzyzyz{yzz{yzz{yzzyzz{zyyzyz|zzyz{{{zyyxyyyyyyzyyyyzyyzxyyyzyyyyzyyzyyyxyyzzzyyyyy{xyyyzzyy{yyzyzyz{zyzyyz{{zyyyyz{{yyzzyz{{zyzyzzz|zyyy{yyyyzzz{zyzzyzyyzzyzyyzyzzyyyyzzzzyzzyzzzzyzyzzzyzyyy{yyyyzzyzzz{yzyz{z{yzzzz{zzzz{yz{z{{zyzz{yzzyzz{{{yzz{{zzz{z{{z{y{zzzyz{|zzyz{{{|yzzy{{{zz{zy{{{{yzy{z{|zyzz|zyzz{{z{yyyzzyzyzyzyzzyzyyzyzzyyyyzzzzyzzyzzzyyzyzzzyzyyy{yyyyzzyzzy{yzyyyz{yzyzzyz{zzyyzyz{yzyyzxzyyyyzz{{yyzy{xyzyzzyzzzzyyzyz{zzyzyz{yzzyzyz{yzz{yzz{yzzyzz{zyyzyz|zzyz{{{z{yzyzyzyz{yzyyz{{zyyyyz{{zyzzyz{{zyzyzzz|zyyy{yyyyzzz{zz{yzzzz{z{zzzz{zzzz{yz{z{{zzzz{zzzzzz{{{zzz{{zzz{z{{z{y{zzyzyz{|zyz{{{|yzzz{{{zz{zz{{{{yzz{z{|zyzz|zyzz{{z{yyz{zzyzzzz{{zzzzz{{zzyzyz{{zzzzzz{{zzzzz{z|zzyz{zzyzz{{{zy{zzyzyyz|zzyyyz|zy{yzzz{{zzyzzzyyzyz{z{zyy{{yyy{{zyzzy{yzyzyyz{yzyzzz{zzyyzzz{yzzyzzzyyzyzz{{zyzy{yyzyzzyzzzzyzzzz{zzzzzyz{zzyzyz{zzz{zzz{zzzzzz{zyzzyz|zzyz{{{z{z{yzzzz{{{zzzzz{{zz{yz{{{{zzzz{{zzzzz{{|zzz{{zzz{z{{{{y{zzzzyz{|zzyz{{{|zzz{{{zz{zz{{{{zzz{z{|zzzz|zzzz{|z{zzzy{yzyzyyz{yzyzzyz{zzyzzz{yzzyzzzzyzyzz{{zyzz{yyzzzzyz{yzyzyzyz{zyzyyz{{zyyyyyyyyzzyz{{zyzyzzz|zyyy{yyyyzzz{{y{zzyzyz{|zzyyz{{|zy{yyy{{zzyz{{zyzyz{z|zyy{{yyy{{zz{{y{yzyzyz{{yzyzz{{{zzyyzz{yzzyz{{zyzyzz{|zyzy{yyzyzzz{{zzyzzzz{{zzzzyz{{zzyzyz{zz{zzz{{zzzzz{z|zzyz|zzyz{{{{{z{z{{{{{{|{{{z{{{|{zz{{{{z{{{{{{|{{{{{{|{{{z||{{z{|{{z{yzyzyzyz{zyzyyz{{zyy{yz{{z{zyz{{zyzyz{z|zyy{|zyy{{zz{zzzyyzyz{zzzyzyz{zzzyzyz{zzzzyzyyzzyzz{zzyzyz{zzyzz{{zzzzyyzyz{zzzyzyz{zzzyzyz{zzzzyzyzzzyzz{zzyzyz{zzyzz{{zzz{zzzyz{z|zzzyz{z|zy{yz{z{{zzzyzzzyzz{z{yzy{{zzy{{{{zzz{yzzzz{z{zzzz{{z{zzzy{{z{z{zz{z{zzz{{{{zzzz{zzzz{|{z{{{zz{z{{{{{z{z{{{{{z{{{{{{{{z{{{z{z{{{{|z{z{|{{z{{{{{yyzz{yzz{zz{{{{zyzyzyyyzzzyzyyzzzyyy{yzzyy{zzyyzzzyzyz{zyyzy{yyy{zzzzzyzyzyzyzzzyzyyzzzzyy{yzzzz{zzyzzzyyzyz{zyzyy{zyy{zzzz{zzyzzzz{{zzzzyz{{zzy{zz{{z{zzzz{zzzzzy{z|zzz{zzy{z{{{zy{zzyyyzz{zzyzzzz{zz{yzzz{{zzyzzzzyzyz{{{yyz{zyz{z{zzzz{{z{zz{z|{z{zz{{|{z{{z{{{{{z{z{{z{z{z{{{z{z{zzz{{{{zzy{zzyzyyz|zzyyzyz|zyzyzzz{yzzyzyzyyzyzzz{zyyz{yyyzzyz{z{zzzzz{{|zzzyz{{|zyzyz{{{zzzzz{yzzzzy{z|zzyz{zzzz{{{zy{zzyyyyz|zzyzyyz|zzzyzyz{yzyyzyzzyyyzz{{yyzz{yyzzzyzzy{zzzyzzz|zzzyzz{|zy{yzz{{{{yzzz{zzyzy{y{yzy{{zzy{zzz{z|z|z|zz{|{|z{{{||{{{z|{||{{|z|{{|z|z{{{||z{{|{z{{{z{yzz{zzzyz{z|zzzyz{{|zyzzz{{{z{yzz{{zzyzz{y{yzyz|yzyz{{{zz{{y{z{{{{{{z{}{y{z||{}{{{{||{|z{{{{|}z{{{{||z{{{{|z{{xyyyzz{{{y{{z{|{y{z{z{|y{{z{z{|yz{z{|}z{z{{||yz{{{|z{}{{{{{|}{{{{||}|{{{{||}|y{{{||}||{{{||}z{{{{||y{{{{|z}{{z{{{|{{{{{{|{|{z{{{|{|z{{{{|{|z{{{{|}z{{{{||z{{{{||{{zz{{{z{{{{{{{{}{{{z||{}{{{{||{|z{{{{|}z{{{{||y{{{{|z{}|{{|||}|{|{||}~|{||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{{{z{zz{z{z{z{z{{z{|z{|z{z{|z}{z{y{|zz{z{z}z{z{|}y|z{|}zz{{zz{{y{z{{{{zzz}{y{z||y}{{y{||z|z{y{{|zzy{{{||z{{{{{z{}{z{{{{|}{{{||}|{{{{||}|z{{{||}||{{{||}z{{{{||z{{{{|z}{{z{{{{|{{{{{|{}{{{{||{}{{{{||{|z{{{{|}z{{{{||z{{{{||{}|{{|{{|}|{{||}~|{||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{{z{{z{{{{|{{{{{zz{zy{{{|{|z{{{{|{|z{{{{|}z{{{{||z{{{{||{{{z{{{{|{{{{{{{|z{|{{|{|z}{{{|{|z{{{{|}z{{{|}||{{|}||{{{z{{{{|{{{{{{|}{z{{||{}{{{{||{|z{{{{|}z{{{{||z{{{{||{{{z{{{{|{{{{{{|{z{{{{|{|z{{{{|{|~{{{{|}z{{{{|~~{{{{~|{}{z{{{{|}{{{{||}}{{{||}}{{{{||}||{{{||}z{{{{||y{{{{||}}|{{|{||}|{|{||}~|||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{|}{z{{{{|}{{{{||}{{{{zzzzy{{{||}z|{{{||}z{{{{||z{{{{|z}}{z{{{{|}{{{{||}{{{{{zz{z{{{||}||{{{||}z{{{{||z{{{{|z}}{z{{{{|}{{{{||}|{{|{|{|z}{{||}||{{{||}z{{{|}||{{|}|z}}{z{{{{|}{{{{||}}{{{{||}{{{{||}||{{{||}z{{{{||z{{{{|z}}{z{{{{|}{{{{||}~{{{{||}z{{{||}|~{{{||}z{{{{|~~{{{{~z}}|{}|}||}|}|}}|}~|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}|zzy{z{zzzz{z{{{z{z{zz{{z{z{zzzzzzz{z{z}z{z{z||zz{z{zzzzzy{z{zzzz{z{{{z{z{zz{{z{z{{zzzzzz{z{z}z{z{z||zz{z{zzz{zz{{{{z{{{{{{{{|{{{z{{z|z{{{{{|z{{{{|}{{{{{||{{{{{|z{{zz{z{zz{{{z{{{{|z{|z{{{|z}{z{{|zz{z{|}z{z{|}||z{|}|z{{{z{{{{|{{{{{{|{}{{{{||{}{{{{||||{{{{|}|{{{{||z{{{{||{}{z{{{{|}{{{{~|}~{{{{~|}~{{{{~|}~{{{~|}z{{{{~~~{{{{~{}yyzz{yz{|}z{|}z|}z}z}{zz{zyzz{{zz{{z{|{z{z{z{|z{{zzz{|zzyz{|}zz{{||zz{{{|z{{zz{z{zz{{{z{{z{|zz{z{z{zz{{z{z{|zz{z{|}z{{{||zz{{{|z{{{z{{{{|{{{{{{|{|{z{{{|{|z{{{{|{|z{{{z|}z{{{||z{{{{||{}{z{{{{|}{{{{||}z{{{{||}zz{{{||}||{{{|z}z{{{||z{{{{|z}{zz{{{{z{{{{{zz{}{{|z||{}|{{{||{|z{{{{|}|{{{|||{{|{{z{{zz~{~{z~{~{~~{~~{~|z~|~~{}~{~|~~~{~{~|}z~{~|}~{~|}~z{{zz{z{zz{{{z{{z{|z{|z{z{|y}{z{z{|zz{z{|}z{z{|}||{{{|z{{{z{{{{|{{{{{{|{|{{|{{|{|z}{{{|{|z{{{{|}z{{{|}||{{{||{}{z{{{{|}{{{{||}|{{|{||}|y}{{||}||{{{||}z{{{|}||{{{|z}{zz{{{{z{{{{{{z{}{{|z||{}{}{{||{|z{{{{|}z{{{|}||{{|{z{{zz{z{zz{z{z{{z{~z{|z{z{~z}{z{z{~~z{z{|}z{z{|}|~z{|}z{}|z}|}||}|}|}}|}~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}|z{|{||||||~|{||~}||||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{zz{||zz{||{{z{||{{|z||{{{{{|{{{z||{{{z{{}|{z{zz}{|{z{{z{{||{z{||{{{{||{{|{||{{{{{|{{{{||{{{{{{}|{{{{z}{|{{{{z{||||{{||{{|{||{||z||{|{{{|{|{|||{|{|{{}|{|{|{}{|{|{|z|||||||||}|||||}|||||}||{{|}|||}|}||||{}|||||z}{||||{{{|{||{{||{{|{||{||{||{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{{|{||{||||~|||~}||||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{z{|{|||{||{{|{||{||{||{|{{{|{|{|||{|{|{{}|{|{|{}{|{|{|z|||||||||}|||{|}|z|{{}||{{|}|||}{}||||{}|||||z}{||||{{{|{|~|{{|{{|{||{|{{||{|{{||{|{|~{{|{|{|{|{|{|~~{{{|{{z{}{}|}{{}}{}{}}z}||}}z}{{}}z}{}||z}{}{{{|{}{}{}{|{}{|{||{||||~||||~}|||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{{{}{}}}{{}}{{}}}{}|||}{}{{}}{}{}}|{}{}{|}|{}{}}}{|{}{|z||||||||||}||||}|||||}||{{|}|||}|}||||{}|||||z}{||||{{{|{|~|{{|~{{|{|{||{||{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{{z{}{}|}{{}}{{}{}}}||}}{}{{}}{}{}||{}{}{{}|{}{}{}{|{}{{{{{{||{{{||{{{{{|{||||{{{{{|{{{{||{{{{{{}|{{{{z}{|{{{{}||||||~||||~}||||~}}||~}}|}|~}}||~~}}|||}}}||||~~}|||||{|}|}}}||}}}|}|}}}}||}}}|{}}}}|}}|}}|}||}||}|}}}{||}|{{{|{|~|{{|~{{|{|~{||{|{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{{z{}{}|}{{}}{{}{}}{}||}}}{{}}{}{}||{}{}{{}|{}{}{}{|{}{{{{|{|||{{||{{|{||{|||||z{{{|{|{|||{|{|{{}|{|{|z}{|{|{{z{|{|||{{||{{|{||{||z{|z{{{|{|{|||{|{|{{}|{|{|z}{|{|{}}|}|}|~|}}|~}}|}|~}}|}|~}}}}~}}}|~~}}}|}}}}}|}|~~}|}|}|{||||~||||~}||||~}||||~}||{|}|||~|}|||||}|||||~~{|||||z|}|}|}||}}}|}|}}}}||}}}}|{}}}|}}|}}|}|{}||}|}{}{||}||{||||||||||}|||||}|{|||}||{{|z||}{}||||{}|||||{}{|||||z||||||||||}|||||}|{|||}||{{|zz|}|}||||{}|||||{}{|||||z||||||||||}|||||}|{|||}||{{|zzz}{}||||{}|||||{}{|||||||}|}~}||}~}|}|}~}}||}~}}||}~}}|}~}}|}|}}}|}|}~~|||}|{{{}{}}}{{}}{{}{}}{}||}}{}{{}}{}{}}|}{}{|}|{}{}}}{|{}{{{{|{|}|{{|}{{|{|}{||||}{|{{|}{|{|}|{{|{|}|{|{|}}{|{|{{{{|{|}|{{|}{{|{|}{||{|}{|{{|}{|{|}|{||{|}|{|{|}}{|{|{{{{|{|}|{{|}z{|{|}{|{{|}{|{{|}{|{|}|z|z{|}|{|{|}}{{{|{{{{|{|}|{{|}z{|{|}{|{{|}{|{{|}{|{|}|z|z||}|{|{|}}{{{|{}|}{}|{}|{{}|{z{{{{z{~{~}~}~}~~}~~~}~}~~}|~}~~}~|}~~}~}~~~}~}~|}|~}~}~{|~}~{{{}{}|}{{}}{{}{}}{}||}}{}{{}}{}{}||{}{}{|}|{}{}|}|{}{|{||||}||||}}||||}}|{||}}||{|}}|||}|}|||||}{||||}}{|||{{{|{|||{{||{{|{||{|||||{|{{{|{|{|||{|{|{{}|{|{|{}{||{{{{{{||{{{||{{{{||{{||{|{{{{{|{{{{||{{{{{{}|{{{{{}{|{{z{{{{||{z{||{{{{||{{||||{{{{{|{{{{||{{{{{{}|{{z{{}{|{zyzyzzzyyz{zzyzy{zzzzzzzz{zz{zz{zzyzzzzzyy|zzzyzz{zyzyyyz{z{{z{zzzz{z{z{y{z{{zzzz{{zz{z{{z{y{{z{zyy{z{z{yzzz{zzzzz{|zzz{|zzz{z|z{{{|zz{z{||z{zzzz{zzz{{{zzzzz{{zzzzzzzzzzzzzzzzzzzzzz{zzzz{zz{zz{zzzzzzzzyy|zzzzzz{zzzzyzzzzyzzzz{zzzzz|{zzzz|{zz{z|{zz{{{zzzyy{zzzz{{zzzzzzz{z{zzz{z{z{z{z{{zz{z{{z{{z{{z{z{{z{zyy{z{z{z{zz{zzyzzzzzzz{zzzyz{zz{zzzzz{zz{zz{zzzz{zzzyy|zzzzz{{zzzzz{{zzzzz{|zz{|zzz{z|z{{{|zz{z{||z{zzzz{zzz{{|zzzzz{{zzzzzzzzzzzzzz{zzzzz|{zzzz|{zz{z|{zz{{{zzzyy{zzzz{zzzzzzzz{z{zzzz{{z{z{z{{zz{z{{z{{z{{z{z{{z{zyy{z{z{z{zz{zzzzzz{{zzz{{zzz{{z{zz{{z{z{{{z{zz{z{zzzzy{zzzz{{zzzzzzz{z{{zzz{{{{z{{{{zz{{{{zz{z{{z{z{{z{zyy|z{z{zz{z{zz{{z{z{z{z{zz{z{z{{z{{{z{z{{z{|z{{z{{{{z{zzz|z{z{{{{z{zzzzzz{|zzz{|{zz{||{{{|z|{z{|||{zz{{{zzz{{{zzzz{{{zzzzzz{z{zzzz{{{z{z{{{zz{z{{z{{z{{z{z{{z{zyy{z{z{z{zz{zzzzzz{{zzz{{{zzz{{{zz{{z{z{{{z{zz{z{zzzzy{zzzz{{zzzzzzzzzz|zzzz|zzz{z|zz{||z{z{{|z{zzzzzzzz{{{zzzzy{zzzzzzzzzz|zzz{|{zz{{||{{|||{z{{||{zz{{{zzz{{|zzzz{{{zzz{{z{z{z{zzzz{z{z{z{z|{{zz|{z{|z|{z{{{{z{zzz|z{z{{{{z{zzzz{z{|zzz{|{z{{{|{{{{|{{z{||{{z{z{{z{z{{{z{z{z{{z{zzzzzz{{zzz{{{zzz{{{{zz{{{z{{{z{zz{z{zzzzy{zzzz{{zzzzzzzzzz|zzzz|zzz{z|z{z{||zz{{|z{zzzz{zzz{{{zzzzy{zzzzzzzzzzzzzzzzzzzzzzz{{zzzz{z|zz{zzzz{zzzyy{zzzzzz{zzzzzz{z{zzzz{{{z{z{{|||z{{||z|{||z{{{|z{zyy|z{z{{{|z{z{{{{|{|{|{{|{{z|{|{||{z|{||{{|||{|{{|{|{z{|{|{|{{{{|{zzz{z{{zzz{{{z{z{{|{{z{{|{z{{{{z{{{{z{zzy|z{z{{{{z{zzzz{z{|zzz{|{z{{{||{{{|||{z{{|zz{{{{z{z{{|z{z{{{{z{zzzz{z{zzzz{z{z{z{z|{{z{z|{zz|zz{{{{{z{zzy|z{z{{z{z{zzzz{z{zzzz{z{z{z{z|{{z{z|{zz{zz{z{{{z{zyy|z{z{{{{z{z{z{|{|||{{||{{|{||{|{{||{|{{||{|{|{|{|{{{|z|{|{{{z|{zzz{z{|zzz{|{zz{{|{{{{||{{z{||{{z{zzz{z{{|zzz{z{{zzzzzz{z{{zzz{{zzzz{{z{{z{{z{z{|{z{z{zz{{zzz|zzz{z{{zzzzzz{z{{zzz{{zzzz{{z{{z{{z{z{|{z{z{zz{zzzz|zzzzz{{zzzzzz{z{{zzz{{zzzz{{z{{z{{z{z{|{z{z{zz{z{zz|zzz{z{{zzz{{{{{{{{zz{zzzyzzz{z||{zz||{{{{||{{|{||{{z{||{{z{{{{z{z{{|{{z{{|{{zzzzzzz|zzzz|{zz{z||{{{|||{z{|||{zz{{{zzz{{{zzzz{{zzzzzz{z{{zzz{{{z{z{{{{{z{{{{zz|{{{z{zz{z{zzy{z{z{z{z{zzzzzzzzzzzzzzzzzzzz{{zzzz{zz|zz{zzzz{zzzzy{zzzzz{zzzzzzzzzzyzzzzzzzzzzz{{zzzz{zz|zz{zzzz{zzzyy{zzzzzzzzyyyzyzzzyyyzzzyyyzzz{zzzyz|y{zz|yzzz{yzyyyyzyyzz{zyyyyyxyyzyyyyyzy{yyyzyyzyyzyyzz{zyzyyyyzyyyyy{yyxyyz{yyxxyyyzzyyyyzzyyyyzzzzyyyzzy{zzzyyyzyyyyyyyyyyyzyzyyxzzzzz{zzzzz{zzzzz{zzzzzzzzz{{yzzz{zzzzz{{zzzzzz{zzzzyzyzz{{yyyy{{yyzzz{zzz{{zzy{{{zyzzzzyzyzzzyzyz{|zyzyyyyzyzzyyyzzz{yyzzz{{{zzz|z{{z|zzzz{yzyyyz{yyzz{z{yyyyyyyyzzyyzzzyzyzzz{zyzyz{y{zz{yzz{{yzyyyzzzyyz{zyzyzyzzzz{zzzz{yzzzz{zz{zz{zzz|{zzzz{zzzzz{{zzzzzzz{zzzzyzzzz{{zzz{{zyzz{{{zzy{{|z{{z|zz{z{zzz{{zzzzz{|zzzzyyyzyzzzyyzzz{yyzzzzzyzzzzz{{zzzzzzzzzyyyy{yyzzzz{yyzzzzzz{zzzz{zzzzz{zzzzzzzzz{{zzzz{zzzzz{{zzzzzz{zzzzyzyzyz{{yyy{{{yzzz{{{{{{z|y{{{|yzzz{yzyzzz{zyz{|z{zyyyyzyzzzzyyzzyzyzzz{zzzzz{z{zz{zzz{{yzyyyzzzyzz{zyzyzyzzzz{zzzzz{zzzz{zz{zz{zzz|{zzzz{zzzzz{{zzzzzzz{zzzyzyzyzzzzyyzz{zyzz{{zzzz{|y{z{|yzz{{yzyyzzzzyzz{zyzyzyzzzz{{zzzz{{{zz{{zzzy{{zz{{zzzz{zzzzz{{z{zzz{|z{zzzz{zzzzzz{zzzzz{z{zz{z{{{zzz|z{{z|zz{z{zzz{{z{zzzz{z{zzyzyzyz{{zyyz{{yzzz{{zz{{z{y{{{{yzz{{yzyzzzzzyz{|zyzyzyzzzz{zzzzz{zzzzz{z{zz{zzz|{zzzz{zzzzz{{zzzzzzz{zzzyyyzyz{{yyyz{{zyzz{{zz{{{zy{{{zyzzzzyzyzzzzyyz{|zzyyzyzyzyzzyzzyzz{yzyz{{{yz{|z{{{|zyzy{zyzzzz{yzyz{{{yzyzyzyzzzzyyzz{{zyzz{{zzz{{z{{{{zzz{{zzyyzz{zyzz{z{zy{{zzzzz{{zzzz{{zzzz{{z{{z{z{z{{z{zz{{{zzz{{{zzzzz{{zzzzzzzzz{{zzzz{{zzzz{{z{z{{zz|{{zzz{zzzzz{{zzzzz{|{zzzyyyzyz{{yyyz{{zyzz{{zzz{{{y{{{zyzzzzyzyzzzzyyz{|zzyyyzyzyzzzyyyzz{yyyzz{zzyzz{z{z{zyzzzzyzyyzzyzyzzzzyzyzy{z{z{zz{{z{z{z{z{{{{{z{{|{{{|{z{{{{z{{{z{z{zz{{{zz{{z{z{{{{z{{{{{{z{{{{{{{{{{{{|{{{z{{{{z{{{z{z{z{|{{z{zyzzzz{{zzzz{{{zzz{{{z{{{{{z{{{zz{{{zzz{{z{zzz{|z{zzzzzzzz{zzzzz{{{zzz{{{z{z{{{z{{{zz{{{zzz{{z{zzzz{z{zzzyzzzz{zzzzz{z{zzz{z{z{z{z{z{{zzz{{{zzz{{z{zzzz{z{zzzyz|z{{{{zz|{{{{z|{||{{{{||z|{{|{|{|z|zz{|{{z|{|{{{z{z{{{{{{{{{{{{{{{{{{{{{{{{|{|{{|{{|{{{{{||{z{{{|{{z{zzzzz{{{zzz{{{zzz{{{{{z{{{|z|{{|zz{{zzzzz{zzyz{|{zzyyyyzy{{{yyy{{{zzz{{{{{z{{{|z|{{|zz{{zzyzz{zzyz{|{zyyyyyzy{{{yyy{{{zzz{{{{{z{{{|y|{{|yz{{zyzzz{zyyz{|{zyyy{zzzyzzyyyzyzzzz{zzzzz{zzzzz{{{{zz{{|z|{{|zz{z{zzz{yzzzzz{{zzzzzzzzz{{yzzz{{{yzz{{{{{{{{{z|{{{zzz{zzzz{zz{zzz{|{zzyzyzyzzzzyyzz{zzyzz{{zzzz{{z{{{{zzz{{zzyzzzzzyzz{zzyzyzzzz{{zzzz{{zzzz{{zzz{{{zz{{{zzz{zzzzz{{zzyzz{|zzzyyyzyzzzyyyzzzyyyzzzzzzzzzzy{{zzyzzzzyzyyzzzyyzzzzyyyyyyzy{yyyzy{{yzyzz{{zzy{{yyz{yzyzyyyyyy{yyyyy{y{zyyyyxyyyyzxyyyyy{yyyyyyyzyyyzy{zyzyyyxzyyxyyyyyxyy{zyyyxyyyyyyyyyyyyyyyyyyyzzyyyyyzzyyyyyyyxyyyyxyxyyyyyyyyyyy{yyyyyy{yyyyy{zyyyyy{zyzyyzyyz{yyyzyyyyyy{yyyyy{yyyyyyyyyyyzzyyzyz{zzyzzy{zzzzyzzzz{zyzyyyyyyyyyyyyzz{zyyyyyyyzy{yyzyyz{{yzyzy{{yzzzyz{zzyyyyzyyyyyy{yyyy{z{yzxzyyyyyzzyyyzzyzyzyzzzzyzzyzzzzyyy{zxzyyyyyzyyy{zyzzxzyyyyyzzyyyzzzzyzyzzzzyzzzzzzzyyy{zyzyyyyyzyyz{zyzyyyyyzy{zyzy{{{yyzz{{yzy{{zy{{yzyzyyzyyy{yyyyy{y{zyyyyz{yyyyyyy{zyyy{zzzyyy{zzzyyzyyz{zzyzyyyyyy{yyyyy{yyzyyyyyyyzyz{yyzz{{{yzzy{{{zzyzzz{{zyzyyzyyyyyy{yyzz{z{yzxzyyzyyyzzzyzzyzzzzzzzzzzzyzzzzyyy{zyzyyyyyzyyy{zyzxyyyyyy{yyyyy{zyyyy{yzzy{yyy{{yyyzyyyyyy{yzyxy{yyzyxyyyyyyyz{yyyyzy{yyyzyz{yz{yyz{{zyyyyyyyyzyz{yyzyyz{yzyzyyyyyzzzyyyz{zyzyzzzzyzzz{zzzyyy{zyzyyyyyzyyz{zyzyyyyyzy{{yyzy{{y{zz{{zzy{{zyz{zyzzyyzzyy{yy{yy{y{y{yyz{yyyyyzy{{yyzy{z{{yz{z{{yyzzyz{yzyzzyzyyy{yy{yy{z{z{yzyzyyzyzyzzzyz{zyzzz{zzzzzzzzz{zyzy{zyzyyyyyzyzz{zyzyyyyyzy{yyyzy{zzyyzy{zzy{zyy{{zyyzyzyyyy{yzyyy{yyzyyyyyyyyyz{yyyyzz{{yyyzz{yz{zy{{{zyyyyzyyyzyz{yyzy{z{yzyzyzyyy{zzyyyzz{zyzzzzzzz{zz{z{zyy{{yzyyzz{zyyz{z{z{{zyzyzzz{yzzzz{zzyzzz{zzzzzz{z{zzyz{{zyzz{zzyzy{z{zyzyyyyyzy{yyyzy{{zyyzz{{zzz{zz{{{zyzyzyyyy{yzyyy{z{zyyyyyyyzyzyyyzyz{yyyzzz{zzzz{yzz{yyzyyyyyyyyyyyyzy{yyyzyzyyyy{{zzyy{z{{zyz{z{{z{zz{{zzyzy{zyzy{yy{zy{y{z{zz{zzy{y{{zz{y{z{{z{z{z{{z{{zy{{z{{y{z{zy{yz{z{{y{z{z{zyz{y{z{{zz{z{{z{z{z{{z{z{{zy{{z{{z{z{zz{yz{z{{z{z{zzyzyyzy{{zzzy{{z{zzz{{z{z{{zyz{{yzy{zyzy{yy{zy{y{z{zzyzyyzy{{zzzy{zz{zzz{zz{z{zzzz{zzzy{zyzy{yy{zy{z{z{zyzzzzzzzzzzzzz{{zzzzz{{zzz{zz{z{zzzzzzzzzyzzzzzy{zzyzz{z{z{z{{{z{z{{{{z{z{{{{z{{{{{{{zz{{zzyz{{{zzzy{{{z{z{{{{{{z{{{{{{{z{{{{{{{{{{{{{{{{{{{{{{z{{{zy{{{{zzyzyzzzzzzzzzzzz{{zzzzz{{zzz{zz{z{zzzzzzzzzzzzzyzz{zzzyyyzyzzzzyyzzz{{zyzzz{{zzz{zz{z{zzzzzyzzzyzzyzzy{zzyyyyzyzyyyzxzyyyyyzzzyyyzzzzyzzzzzzzzzyzzzzyyy{zyzyyyyyzxy{zyzyyyyyyy{zyyyy{y{zyyy{y{zy{{zy{{{zzzyyzyyy{yzyyy{{zyyyzyzyzyz{yyzyz{z{yzzz{z{zz{zz{{{zzzyzzzyyzyy{yzzz{{yzxzyyzyyyzzzyzzzyzzzzzzzzzzzzzzzzyyy{zyzyyyyyzyyz{zzyyyyyzy{yyyzy{{yyyzz{{yzz{{yyz{{yyzyyyyyy{yyyyy{y{yyxyyyzyzzyyzyzyzyzyzyzzzyzzzyzzzzyzyz{zyyzyzyyzzyz{yyyzxyxyxzyzxyxyyzyzxyyyzzyzyyyzzzyxxyyyyxxyxxyyxyyyyyyxyxyyyyyyyyyzyyyyyzzyyyyyzyzzzzyyyyyxyyyxyxxyyyzyyy{yyyyyxz{yyyxyz{yyxyyyzyyzzyyy{zyyyyyyzyxyyy{yxyzyy{xyyy{yxyyyyyyyyyyy{yzyyy{yyyzyzzzzz{zyyzyyyyyy{zyyyy{zyyyyxzyyyyzzzyyyzzzyyyy{zzyyzzyzzz{yyyzyyyyyyyyyyyyz{yy{yzyyyy{{zyyyy{{zzyzyy{{yzzyzy{zyyyyyyzyyyyy{yyyz{y{{yyyyyyx{yyyxyy{yyyyzyy{yzzyyy{{yyyyyyzyxyzy{yxyzyy{yyzyyzyzzzzyzyzzzzzyzzzzzzzyzzzzyzyz{zyyzyzyyzzyz{yy{yyyyyyyz{yyyzz{yyyzzyzyyzzyzz{zyyyyyyzyyyyy{yyyzyy{yyz{yxzzyyyyzzzzy{zzyyz{zzzzyzzzzz{zzyzyzyyyy{zyyyy{zyyy{yzyyyyy{{zyyz{{zzyy{z{{yzzyzy{{yyyzyyzyyyyy{yyyz{y{yxyyxzyzyyyzyzyyzyzzzyzyzzzyzzzzyzyz{yyyzyyyyyzyz{yy{yzyyyyxz{zyyyy{yzyyzyz{yzzyyz{{yyyyyyzyxyzy{yxyzyy{zyzyyzyz{zzzyzy{zzzyzzzzzzzyz{zzyzyz{zzyzyzyyzzyz{yz{yyyyyyyz{yyyy{z{yy{{zzyy{{yzy{zyyyzyyzyy{zy{yy{z{y{yz{{yzyyyyy{{zyyy{{{zz{zz{{yzzzzz{zzzzzzyzyz{zy{yy{z{y{yyyyyzyzyyyzyzzyyzyz{zzyzzzyzzz{yzyz{yyyzyyyyyzyz{yyyxyyyyyyyyyyyy{yyyyy{y{yy{zyz{{zyyyyyyyyy{zyyyy{zyyyzyzyyyyy{zzyyyy{zzzyyy{zzzzyy{zzyyyyyyzyyyyyyyyyz{yz{yzyyyyy{{zyyyy{{zzyyzy{zzzyy{{{yyyyyyzyyyzy{yyyz{y{{zzyyzyzz{zzyzyz{zzzyzzzzzzyzz{z{zyz{zzyzyzz{zzyz{z{{{yyyzyzyzzyyzyz{zzzyz{z{zzzzz{z{zzzz{{yyyz{zzyyz{z{zyyyyyyyyyzyyyyy{zyyyy{{z{yy{yz{{{yyyzyyyyy{zyyyy{z{yy{yzyyzyzz{zzyz{z{zzz{zyz{z{zyz{zyzyz{yzyz{zy{yz{z{y{{yzyyzyz{{zzyz{{{zzz{zy{{z{zy{{zyzyz{yzyz{zy{yz{z{y{{y{y{z{z{{{z{z{{{z{z{zy{{z{z{z{{yz{z{y{{z{zy{yz{z{y{{{y{z{z{zy{{z{z{y{z{z{{z{{z{{{z{{zz{z{y{{z{zy{yz{z{y{{yyyyzyzy{yzyz{y{zyz{{zz{z{{yzz{{zyz{yzyz{zy{yz{z{y{zyzyzyzy{zzyzyz{zzzyz{z{zzz{zz{z{zzyyzzzyzzyzyyzz{yzzzzyzzzz{zzzzzz{zzzzz{z{zzz{zz{z{zzzzzzyzzzzzyzzz{zz{{{y{{{{{{{{{{z{{{{{z{{{{{{{{{{{{{{{{{{{yz{{{zyzz{{{zyz{z{zz{zz{z{{{z{z{{{{{z{{{z{{{{{zz{{zzz{{{zyz{{{yzzyzzzzzy{zzzzzz{zzzzz{z{zzz{zz{z{zzzzzzzzzzyzzyzz{yzyyyzyyzyy{yzyyyyy{{zyyyy{{zzyyyy{{zzzyy{{zyyyyyyzyxyyy{yyz{y{yyzyyzyzzzzzyzyzzzzzyzyzzzzzyzzzzzzyz{yyyzyyyyyzz{yyzyzyyyyy{zzyyy{{zzzy{zy{zz{zyz{{{zyyyyyzyy{yyyyy{{yz{yyyyyyyy{yyyyzy{yyyz{z{{yz{zz{{{yyzzyyzyyzzy{yyzz{{yxyyxzyzzyyzyzzzzzyzzzzzzzzzyzzzzyzyz{zyyzyzyyzzyz{yzzyyzyzyzzyzyzy{zzyzzzy{zz{yzzy{|zyzzz{yzyzzz{zyz{yzyyxyyyyyyyyyyzyyyyyyyyyyyyzyyzyz{yyyyzyxyyyyyyyyyzyyzyyyyyyzyyyyy{zyyyy{y|yyy{{yy|y{zyyy{yyyyy{yyyyy{y{z{yzzyzy{yyzyyz{yzyyyyzy{zyzzyz{z{yzyzzzzyyyzyzyyyz|{zzzyzyzzzyyzyzz{yzyzzzzyzzzyzzy{{zyzzz{yzyzzz{zyzzzzyyyz{zyyyyyyzyyxyyzzzxyy{zzyzyyzyzyz{{yyzyzyxyy{yxyyy{zyzzyzyzyzzzyzyy{zzzyyyy|zyzzzzy|zz{yzy{zzzyyzyyyxyzz{zzzzyyzyzzzyzyzy{zzyzzzy{zz{yzzy{|zyzzz{yzyzzz{zyz{yz{yzyzyzy{yzyy{{yzyy{y|y{z{{zy|{{{yzy{zzzyy{zyzyy{z|{zzzyyzyzzzyzyzz{yzyzzzzyzzzyzzz{{zyzzz{yzyzzz{zyzzzzyyz{zyzyzyzyzzyzyzzzzyy{zzzzzyzzzzz{{yzzzzzzyy{yyyyy{zyz{zzyzzzz{zzzz{{{zzyzz|{{yzzzz|y{{zzz{z{zzyzzz{zyzz|{{yzyzyzy{zyzyy{{zyyyyz{{zyzzyz{z{yzyyzzzyyyzyzyyyz|{zzzyzzzzzzzzzyz{zzyzzzz{zz{zzzz{|zzzzz{zzyzzz{zyz{yz{yzyzyzy{zyzyz{{zyzzy{z{zyzzy{{z{yzy{{zzyzzzyzyzzz|{zzzyzzyzzzzyzy{z{zy{z|zyz{{zz|z{{zyz{z{yzy{zz{zy{z{zzz{{zzyzzzz{zzzzyz{{zz{zz{{yzzzzzz{{zzzzz{zzy{zz{zy{z|{zyyyyyyyzzyyyz{zyzyzy|zyzzzzy|zz{yzy{{yyyzzzyyyzzy{zzyzxzyzyzzyzyyzzzzyyyzzzzyzzyzzz{yzyyzzzyyyzyyyyyzyz{yzyzyzy{zyzyyz{{zyyyy{{zyzzyz{z{yzyyzzzyyyzyzyyyz|{{zzyzzzz{zzzzyz{{zzyzzz{zz{zzz{{|zzzzz{zzyzzz{zyz{|{zz{yzzzzz{zzzz{z{{zzzz{z{z{zz{z{{zzz{{{zzzz{z{zzz{{z{{zyyyyyyyzzyyyz{zzzyz{z{zzzzzz{z{{yzz{{zyyz{zzyyz{z{zzyyyyzyzzyzyzy{{zyzy{z|{zy{yz|{{{zyz{yzyzy{zzzzy{{{zzzzyyzyzzzzyzz{z{zzz{z{z{z{zyzy{{zzz{{{yzz{zz{zz{z{zzzzyzzzzzzzzzz{z{zzz{z{z{z{zzzz{{zzz{{{zzz{zz{zz{z{z{zzyzzzz{zzzzz{{{zzz{z{{{z{zzz{{{zzz{{{zzz{zz{zz{z|{{{{zz{z{{{{z{z{{{{{z{z{{{{{{z{{{|{z{{{{z{z{z{{{z{{|{{zzz{y{yzzz{y{z{{{z{z{{|{{z{{z{|{{{z{{{{y{z{zz{zz{{{z{y{yzyzy{{yzyy{{{{yzzy|{{{z{zy|{z|zyz{{zyyz{zzyyz{|{{y{yzyzy{{yzyy{{{{yzzy|{{{z{zy|{z|yyz{{zyzz{zzyyz{|{{z{zzzzz{{zzzz{{{{zzzy|{{{z{zz|{z|zzz{{zyzz{zzyzz{|{{z{z{{{{{{{{{{{{{{{{zz|{{{z{{{|{{|{{{{|{{zz||{{zz{|{{z{z|z|z{|z|z{||{|z{{z||{{{{|{|{{|z|z|{|z{{|{zz{{{|{yyyzyyzzzzyzyzxzyzyzzyzyyzzzzyyyyzzzzyzzyzzz{yzxzzzzyyyyyyyyzzz{zzyzzzz{zzzzyz{{zzyzzz{{zzzzzz{{{zzzyz{zzyzzz{zzz|{zyzyzyzyzzyzyz{zzzyzzy{zzzzzzy{zz{yzy{{zzyzyzyyyzz{z{zzyzyzy{zyzyyz{{zyy{yz{{z{{zyz{{|yzyzzzzyy{zzzyy{|{zzzyyzyzzzzyzy{{{zzyzz|{{zz{yz|{{|zyz{y{yzyzzy{zyz{{zxyyyyz{yyyyzzz{yyyyzzzzyzyy{zz{zyyyzzyyyyy{xxyyyzzyyyzzzz{{zzzyz|z{zyzz{|zyzzzz{|z{zzzzz{{zzzz{yyzzzzz{yzzzzzz{zzzzzzz{zzzy{zzzz{zz{zz{zzzzzzyzzyy|yyzyz{zyz{yzzzz{yzzz{z|{zzzz{zz{z{zz{z{|zzzz{zyzzzz{{{zzz{zyz{y{{z{{z{zz{{z{zzzz{{z{z{{z{{z|{z{z{{z{zzz|zyzzz{{zyyy{{yzyyyyz{yyyyzzz{yyyy{zzzzzyy{zz{zyyyzzyyyyz|yyyyz{zyz{yzzzz{zzzz{y{{zzzz{z{{zzzz{z{{{zzz{zyzzzz{yyzzzz{yyzyzzzz{zzzzz|z{zzzz{|zzzzzz{|z{zzzzz{{zzzz{yyzzzzz{z{yzzzzz{zzz{z|{zzzz{zz{z{zz{z{|zzzz{zyzzzz|{{zzz{zyz{y{zzz{{zzz{{z{zzzz{{z{z{{z{{z|{z{z{{z{zzz|zzzzz{{zyy{{zzyzzzzz{zzzzzz{zyzz{zzzzzzz{zz{zzzzzzyzzzz|yyzzz{zyyzyzzzzz{zzzzz|{zzzy{z|zzzzz{z{{zzzzzzyzzyz{{{zyzzzyz{yzzzzz{zzzz{{{zzzz{z{{zzzz{z{{{zzz{zyzzzz{yyzzzz{yz{yzzzz{{zzzz{{{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{yz{yzzzz{{zzzz{||zzzz{|z{z{zz{|{|zzzz{{{zzzz{{{zzz{z{z{y{z{z{{z{zz{{z{zzz{{z{z{{z{{z|{z{z{{z{zzz|zzzzz{{zz{{z{yzzzz{{zzzz{{{{zzz{{{{zzzz{{z{zzzz{{yzzzz|yyzzz{zyyzyzzzzz{zzzyzzz{zyz{zzzy{zz{zz|zzzzzzyzzzz{yyzzz{zyyzyzzzzz{zzzzzz|{zzzzz|zzzzz{z{{zzzzzzyzzzz{{{zzzzzyz{yzzzzz{zzzz{z{{zzzz{{{zzzz{z{{{zzz{zyzzzz{yyzzzz{yz{yzzzz{{zzzz{{|{zzzz{{{z{zz{{{|{zzz{{yzzzz{{{zzz{{yz{z{z{z{{z{zz{|z{zzzz{|zz{{z{|z|{z{z{{{{zzz|zzzzz{{{{{yzzzzzz{{zzzzz||{zzzz{||zzzz{|{{zzzzz{{zzzz|{{zzz{z{z{yzzzz{{zzzz{|z{zzzz{|z{z{y{zz{zzzz{{{zzzz|yyzzz{z{z{yzzzz{{zzzz{|z{zzzz{|z{z{z{zz|zzzz{{{zzzz|yyzzz{z{z{yzzzz{{zzzz{||{zzzz{||{z{zzz{{zzzz{{{zzzz|{{zzz{z{z{yzzzz{{zzzz{|{{zzzz{|{{z{zz{{{{zzz{{{zzzz|yyzzz{{{{|z|{|{{|{|{|||{|{|z{||{|z{|{|||{{|{|{{|{|{|{y{|{{{{{z{y{zzz{{z{zz||{{z{zz||{{z|{z||{|z{z|{{zz{z|yyzzz|{{z{z{z{zz{z{zz{z{{zzzz{z{{z{{z{z{|{{z{zz{zzz|zzzzz{{yz{z{z{zz{z{zz{z{{zzzz{z{{z{{z{z{|{zz{zzzzzz|zzzzz{{zz{z{z{zz{z{zz{z{{zzzz{z{{z{{z{z{|{z{{zz{zzz|zzzzz{{zz{z{z{zz{z{zz{z|{zzzz{z|{z{{z{z{|{z{zzz{zzz|{{zzz{{z{|z|{|{{|{|{||{||{|{z|{||{{|{|{{|{{|{|{|{|z|{{{|z{{yyyy{{yy{{z{{{{{yzyyyyyz{yyyyzzz{yyzy{zzzz{yy{zz|zyyyzzyyyyz{yyyyzzyzzyzzzzz{zzzzzzz{zzzz{zzzz{zz{zz|zzzzzzyzzyz{yyzzzzyz{yzzzz{{zzzz{{{{zzzz{{{{z{zz{{{|zzzz{zyzzzz{yyzzzzyzzzzzzz{{zzzzz||{zzzz{||zz{zz{|{|zzzzz{{zzzz{{{zzzz{z|z{zzzz|z{zz{z||z{zz{{||z|{z{{{|{z{z{{yzz{z|{{zzz|y{|z|{|{{||{|{||{||{|{{|{||{||{|{||{{|{|{|~|{|{|}|{|{|{~~|zyzyz{{||{zyz{{||{y{{{{||y|z{{{|{{{z{{{||z{z{|}y{z{|{}z||{||||}|||||||}|||||||}|||||||}|{{||||}|}|||||}{||||{}z|{||{|{{||{|{||{||{|{{|{||y||{|{|{{{|{|{|||{|{|}y{|{|{}{|{|z{{{{||{{{{{{||{{{{{{||z|{{{{|{{{{{{{||{{{{|}z{{{|{}z}{}z}}{{}}{z{}}{}}{}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}~||{|||}~|||{|}}~|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~z{|{||z}y}z}z}}z}z}}z}}z}{y}z}}z|}z}z}}{z}z}z||}z}{|{zz}{|{}z~{|z|{|{{|{|{||{||{|{{|{||{{|{|{||{{|{|{{~|{|{|{|{|{{{~~|||{||||}||||||}|||||||}|||||||}|{{||||}|}|||||}{||||{}z|{|z|{|{{|||{||{||{|{{|{||z||{|{|{{{|{|{|||{|{|}z{|{|{}{}{}z}{}{{}}{{}}{}}{}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}~||{||||}~||||}}~|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~{|{||{|z{{{{{||{{{zz|{{z{{{{||z|{{{{|{{{{{{{||{{z{|}z{z{|{}z|{}z}{}{{}}{}{}}}}z}{{}{}}z|}{}{}}{{}{}{||}{}{|}z{}{|{}z~{|z|{|{{~|{|{||{|{|{{|{||{||{|{||{{|{|{|~|{|{|}|{|{|{~~|||{||||}|||||||}||||||}|||||||}|{{||||}|}|||||}{||||{}z}{}z}{}{{}}{}{}}{}}}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}~||{||||}~|||||}}~||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~|{||{|z|{|{{||{|{||{||{|{zz|{y||{|{|{{{|{|{|||{|{|}z{|{|{}z|{|z|{|{{||{|{||{||{|{{z|{z||{|{|{{{|{|{|||{|{|}z{|{|{}z|{}z}{}{{}}{}{}}{}}{}{{}}}z|}{}{}}{{}{}{||}{}{|}z{}{|{}z~{|z|{|{{~|{|{||{~|{|{{|{|{||{|{||{{|{|{|~|{|{|}|{|{|{~~}|}{}|}|}}}|}|}}}}}|}||}}}||}|}}}}{|}|}}|}}|}||}||}||{}}~||{||||}~|||||}}~|||||}}~||||}}~|}|||}}~~||||}}}||||}~~{}|||{||||}|||||||}|||||||}|||{zzz|{{||||}{}|||||}{||||{}{|||{||||}|||||||}|||||||}|||{|zz|{{||||}|}|||||}{||||{}{|||{||||}|||||||}|||||||}||||||{|{{||||}|}|||||}{||||{}{||}{}|}|}}}|}|}}}}}|}||}}}}||}|}}}{|}|}}|}}|}||}{|}||{}{~||{||||}~||||||}~||||||}~||||||}|{||||}|~|||||}|||||{~~~}|||}|}}~|}|}|}}~|}|}}}}~|}||}}}~}}|}}}~~|}|}}}}}|}|}~~}}{|z|{|{z}|{|{||z}|{|{{|z}|{{|{|z}|{|z|z|}|{|{|}|{|{{{}}}{|z|{|{{}|{|{||{}|{|{{|{}|{||{|{}|{{{|{|}|{|{|}|{|{|{}}}{|z|{|{{}|{|{||{}|{|{{|{}|{||{|z}|{{||{|}|{|{|}|{|{|{}}}{|z|{|{{}|{|{||{}|{|{{|{}|{||{|{}|{{|{{|}|{|{|}|{|{|{}}}{}z}{}{{}}{}{}}{}}{}{{}{}}{|}{}{}}{{}{}|}}{}{|}|{}{|{}}~|}{}|}|}~}|}|}}}~}|}||}}~}||}|}}~}||}|}}~}|}|}}}|}|||~~{z{|}zz{|}y{|}z|}z}|}|{|z{{{z{||{{yz{{||zz{{{{||z|{{{{|{{{{y{{||{yz{|}zz{|{}z|{|z{{{{{||{{{z{{||{z{{{{|{z|{{{{|{{{{{z{||{{z{|}z{{|{}z|{|z|{|{{||{|{||{||{|{{|{||z||{|{|{{{|{|{|||{|z|}z{||{}z}||{||||}}||||||}}||||||}}||{|||}}|{||||}|}||||{}||||{}}|z}z}{}{{}}{}{}}{}}{}{z}{}}z|}{}{}}{{}{}{||}{}{|}|{}{|}|~~}{}~}~{~}~}~}}{~}~}~{}~~}~|}~}~~}{~}~}~~~}~}~|}|~}~|{~{{{|}z||}|}|}||}|~|}|}|~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|{z{{{{{z{{{|{{{{{||{z{z||{|{{||{{}|||{{{y||{{{{z}|{{{{|{||||{|{||||{|{|||{||{|||||||||{}||||{|{|||{|{z}|{|{|{{{{||{{{{||{{{|{||{{||||{|||||{{}|||{{{y||{{{{z}|{{{{}{}|}}|}}|}~}|}|}~|{}|}~|}||}~|}|}|~|}|}z~|}|}|{}|{}|}{z{|{||{{|||{|{||||{{||||{|||||{|}|||{|{z||{|{|~}|{{|{{{|}z|{|}|}|}|}|~|}|}|~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}||{|{|||{|||||{|{|||{||{|||||||||{}||||{|{|||{|{z}|{|{|}{}|}|}|}}}~}|}|}~|{}|}~|}||}~|}|}|~|}|}z~|}|}|{}|{}|}{z{|{|~|{{|z{|{||{|{{||{|{|||{|{|}|z|z|{z|{z|{|~}|{{|{{z{|{|||{{||{|{||{|{{||{|z|||{|{|}|z|{|z~||z|z|{}|{{|{{|}z|{|}|}|{||}|~||}|~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}{}|}|~|}}|~}}||~}|{}|~}|}|||}|}|}~}|}|}z||}|}|z}|{}|}}{}|}|}|}}|}~}|}}~|{}|}~|}||}~|}|}|~|}|}{~|}|}|{}|{}|}{{{|{|~|{{|~|{|{|||{{||||{|||||{|}|||{|{z||{|{|~}|{{|{{z{|{|||{{||~{|{|||{{||||{|||||{|}|||{|{~||{|{|{}|{{|{}{}|}|~|}}|~}}|}|~}{}|~}|}||~}|}|}~}|}|}{||}|}|z}|{}|}|}{|{|}|}|}||}|~|}|}|~}}}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}{}|}|~|}}|~~}|}|~~|{}~~|}||}~|}|}~~|}|}z~|}|}|{}|{}|}|{||||~||||~|||||~||{||||||||||||}||||||{||||||~}|{|||{{{|{|||{{||~{|{||~|{{|||{|||||{|}|||{|{~||{|{|{}|{{|{}{}|}|~|}}|~}}|}|~}|{}|~}}||~}|}|}~}|}|}{||}|}|z}|{}|}{{{{{||{{{|||{{{||||{{||{{|||||{{}|||{{{z||{{{{z}|{{{{}z}{}}}}}}}}}}~}}}}}~}{}}}~}}|}~}}}~|~}}}}~~}}}}}|~|}}}}}{}|}|~|}}|~}}|}|~}|{}|~}|}||}|}|}~}|}|}z||}|}|~}|{}|}|{||||||||||~|||||~|{|||~||||||||}||||||~||||||{}|{|||}{}|}|~|}}|~}}|}|~}|{}|~}|}||~}}|}~}|}|}{||}|}|{}|{}|}|{|{|||{||||||{|||||{|||||||||{{{}||||{|z|||{|{{}|{|{||{|{|||{||||||{|||||{|||||||||{{{}||||{|z|||{|{{}|{|{|}}{}~}~~~}}~~~}~}~~~~~}~~~~}|~~~~}~~~~}~}~~~}~}~~~|~}~}}{}|}|}|}}|}~}|}|}~|{}|}~|}||}~|}|}||}|}~~|}|}|{}|{}|}}{}|}|~|}}|~~}|}|~~|{}|~~|}||~~|}|}~}}|}{~|}|}|z}|{}|}}{}|}|}|}}|}~}|}|}~|{}|}~|}||}~|}|}||||}z~|}|}|z}|{}|}}{}|}|}|}}|}~}|}|}~|{}|}~|}||}~|}|}|z|{}z~|}|}|z}|{}|}}{}|}|}|}}|}~}|}|}~|{}|}~|}||}~|}|}|z|{|z~|}|}|z}|{}|}}{}~}~~~}}~~~}~}~~~~~}~~~~}|~~~~}~~~~~}~}~~}~}~~~|~}~}}{}}}}~}}}}~}}}}}~}}}}}~}}}|}~}}}}~~}}}}}||}}}}~~|{}}}|{|}|}~}||}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}}|}~~|}|}||{|}|}~}||}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}||}~~|}|{||{|}|}~}||}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}|}}~~|}|}||{|}|}~}||}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}|}|~~|}|}|}{}{}|z}|{z}|{{z}|{{{z{{{{{|zy{{{|{zy{{|||{{{||{{|{||{{}}||y{{z{zzy{z|{|{zzyy{{{zzzzzzz|zzzzz|zzyzz|zzzzz|zz{{z|zzz|{{zzzzz{zzzzy|zzzzz|z|||}|||z|}||||z}|||||z|||{|}z|||}}{||||{{||||{}{{|||{z{||{||{{z{|{|{|z|||{|{||{{|{||{|}}|{{|{z{y|{|z|{|{|{{z{{{{|z{{{{|{z{{{|||{{{||{{|{|{{{}}||{{{z{zz{{z|{|{z{{z{}{}|}{{}{}{}{}{}}|{}{}}{{|{}}z}}}|}{}{z}z}z}z|{|{}z{{{|{|{|{{|{|{|{|{|||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{{z{{{{{|{{{{|{z{{{|||{z{||{{|{||{{}}|{{{{z{zz{{z|{|{z{z{|}z|z||||}||||}||||z}|||||z|||{|}||||}}|||||{{||||{}{{|||{z{|{|{||{{{|{|{|z|||{|{||{{|{||{|}}|{{|{z{z|{|z|{|{|{{z{}{}{|}{{}}{}{}{}}|{}{}}{{|{}}{}}}|}z}{z}z}{}z|{|{}{{{{|{|{~|{{|{{|{|{|||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{{z{|{|{||{{|{||{|{|||z|{||{{|{||{|}}||{|{z{z|{|{|{|{|{{|}z{{{|{|{}|{{|{}{||{}||{|z}|{{|{}|{|}}||{|{||{|{|}}{|{|{|z||||}|||||}||||}|||||{|||{|}||||}}|||||{{||||{}{||||{z{}{}{|}{{}{}{}{}}}|{}{}}{{|{}}{}}}|}{}{z}z}{}z|{|{}{{{{|{|{~|{{|{~{|{|{||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{|z||||}|||||}|||||}||||}|||{|}||||}}|||||{{||||z}{|||||{||||}}||||}}||||}}|||}}||{{}}|||}}|||||||||||}}{{||||}z{{{|{|{}|{{|{}{|{|{}||{{}|{{|{}|{|}}||{|{||{|{|}}{|{|{|z|}|}}|}||}}}|}|}}}}||}}}|{|}}}|}}}|}|}|{}|}|}{}{||}|{{{|{|{~|{{|{~{|{|{~||{|{|{{|{||{|~}||{|{||{|{|~~{|{|{|z||||}|||||}|||||}|||||}||{|}||||}}|||||{{||||z}{||||{z{|{|{||{{|{|{|{|{|||{|{||{|{||{|}}||{|{z{y|{|{|{|{|{{z{}{}{|}{{}{}{}{}{}}|{}{}}{|{}}{}}}|}{}{|}z}{}||{|{}{}|{{{}{}{}}{{}{}{}{}{}}|{}{}}{{|}}{}}}|}{}{|}{}{}}}{|{}{|{||||}~||||}~||||}~||||}~||{|}|||~}|||||||||||~~{|||||z||||}|||||}|||||}|||||}|||{|}|||}}|||||{{||||z}{||||{z{|{|{||{{|{|{|{|{|||{|{||{{|{|||}}||{|{z{z|{|{|{|{|{{z{{{{{|{{{{{|{{{{{|||{{{||{{|{||{}}||{{{z{z{{{z|{|{{{~{~}~}~~}~~}~~~}~}~~}|~}~~}~{|~~}~}}~}~}~|}~}~}~~{|~}~}|||}|}}~}||}}~|}|}}~}||}}~}||}}~}|}~}}|}|}}|}|}~~|||}||{|}|}}}}||}}}|}|}}}}||}}}}|{|}}}|}}}||}||}|}|}}}{||}|{{{}{}{}}{{}{}{}{}{}}|{}{}}{{|{}}{}}}||}{|}{}{}}}{|{}{{{{}{}{}}{{}{}{}{}{}}|{}{}}{{|{}}{}}}||{{|}{}{}}}{|{}{{{{}{}{}}{{}{}{}{}{}}|{}{}}{{|{}}{}}}||{z|}{}{}}}{|{}{}|}|}}}~|}}}}~}|}}}~||}}}~|}}}}~|}|~}~|}|}}}|}|~~}|}|}|||||}}~|||}}~|||}}~|||}}~||}}}~|||~}~||||}||||~~}|||||z|||}}~|||}}~|||}}~|||}}~||}}}~|||~}~||||}|{||~~}|||||z|||}}~|||}}~|||}}~|||}}~||}}}~|||~}~||||}|{||~~}|||||z|||}}~|||}}~|||}}~|||}}~||}}}~|||~}~||||}|{|{~~}||||}}{|{||{|{|{|{z{z{z{z{{zz{z{|{{z{z{|{|{z{|{|}|{|{{|}|y{zzzy{z{{|z}|{zyzyzyz{zzzyz{zzyzyz{zzzzz{zzz{z{zzyz}|zyzzzzzzy{zzzzzyyyyyyzzyyyyzzzzyyyzzzzyzyzzyz{zzzyyy{zyyyzxyyyyzyzyyyyzyzz{{z{zz{{zzz{zz{z{{z{zz{zz|{z{z{|}zz{zzzz{z{zzz{z{z{{{{||}{{{z|}z{{{|z}{{{||z{{|||}z{{|}z{{{zzy{{{}z|{{{{{y{{{|{{{{{z{|{{{{|z|{{{|{{{|||{|{{|}|z{{|zzy{{{zz{{{{z{z{z{{{zz{z{||{z{z{|}|{z{|{|}|{|z{|}|{{zzzz{z{{|z}|{z{y{{{{z{{{||{z{{{||{}{{{|{}{|||{}{y|}|{{{zz{y{y{zz{{{{{{{{{{|{{{{|{|{{{{|{|{|{|{|{|}|{|{{|}|{{{|zz{{{{|z}|{{zyz{z{z{{z{z{|{{z{z{|{{{z{|{|||{z{{|}|z{zzzzzz{{zz{{{zzyz{z{{z{z{{zzz{zz{z{{z{zz{zz|{z{z{|}zz{zzzz{z{zzz{z{z{{{{{||}{{{|}z{{{|z}{{{||z{{|||}{{{|}|{{{zzz{{{}z|{{{{{{{{{{|{{{{{{||{{{|{|}|{|{|{|}|{|{{|}|z{{|zz{{{{|z}|{{{y{{{{z{{{{|||{{{||{}{{{|{}{|||{}{{|}|{y{zz{y{{{zz{{{{zyz{z{{{{zz{{{{{z{{{|{{{{{|z~||{|{{~}|{{zzzz{z{{~~{{{z{{{{{||}{{{||}|{{||}|{|||}|{|}|}|{{|}|{{{zzy{{{}||}|{{{y{{{{|{{{{{|{|{{{|{|{{z|{|{|||{|{{|}|{{{|zzz{{{zz{{{{{|}z{y{{{{{{{{{{{{|{{{{{|{{{{z|{|||{|{{|}|{{{z{z{{{{{z{{{{{{{{{||}{{{||}||{{|}|}|||{|{|}|}|{{|}|{{{zzz{{{}||}|{{{y{{{{|{{{{||{|{{{||}{{{|{}{|||{}{{|}|{{{|z{z{{{zz{{{{zyz{z{{{{zz{{{~{{z{{{{{{{{|{~||{|z{~}|{{zzzz{z{{~~{{{z{{{{{{z{{{{||{||{{||{}|{|{}{{}|{}{{|}|{{{zz{{{{{|z}|{{{{{{{||}{{{||}z{{{||}z{||}z{||z}z{{|}|{{{zzz{{{}z|{{{{|}zz{z{z{{{{zz{{{||{z{{{|}|{{|{|}|{|{{|}|z{zzzz{z{{|z}|{z{{{{{||}{{{||}|{{{||}}{{||}{|||}}{{|}|{{{zz{{{{}z|{{{{{y{{{{|{{{{{|{~{{{{|{~{{{|{{~||{|{{~}|z{{|zz{{{{~~{{{{{{{{{||}{{{||}|{{{||}|{{||}||||}|{{|}|{{{zzy{{{}y|{{{{z{z{z{z{{zz{z{~|{z{z{~}|{z{~z}|{~z{|}~z{zzzz{z{{~~}|{z{y{{{zz{{{{||{||{{||{}{|{|{}{{|{}{{|}|{{{z||z{{{|z{|{{}z{z{{{{|{{{{||{|{{{||{}{{{|{}{|||}{{|}|{{{||{{{{{z|{{{{{{{{{||}{{{||}~{{{||}~{{||}~{~||}{{~}|{{{zzz{{{}~~{{{{{{{{{||}{{{||}|{{{||}|{{||}|{|||}|{|}|{{{zzz{{{}z|{{{{{y{{{{|{{{{{|{|{{{{|{|{{{|{|{|||{|{|}|{{{|zzz{{{zz{{{{{{{~{~{{~{{~|~~|~{~|~~}|~|~~{~}|~~{~}~{~{zz{~{~{~~}|~{}{{{{{~|}{{{~|}~{{{~|}~{{~|}~{~~|}~{{~}{{{{z{{{{}~~{{{{{{{{{||}{{{||}|{{{||}}{{||}}{|||}}{{|}|{{|z{{{{}z|{{{{{y{{{{|{{{{||{|{{{||{}{{{|{}{|||{}{{|}|{{|z{{{{{zz{{{{{y{{{{{{{{{||{|{{{||{}{{{|{}{|||{}{{|}|{{zz{{{{{zz{{{{|{|}|}|}}||}|}~|}|}|}~}|}|}~|~}|}~|}~}~|}|||}|}}~~}|}||{|}|}|}}||}|}~|}|}|}~}|}|}~|~}|}~|}~}~|}|||}|}}~~}|}||{|{|||}{||||}~|{|||}~}|||}~|~}|}~|{~}~|{|||||{}~~}|{||{|{|||}{||||}~|{|||}~}|||}~|~}|}~|{~}~|{||||{{}~~}|{{|{|{|||}{||||}~|{|||}~}|||}~|~}|}~|{~}~|{||||{|}~~}|{||||{z{{z{{{z{z{{{|z{{{{|{{|{{{|{||{|{|{||{|{||||}||{{|z|{z|{zz{|{{{z{z{z|y{z{z{}y{z{z{|yy|{z{|z}|{|yzz}|y{{yyy{zz{|z}|{yxyxyyzzyyyyzzzzyyyzzzzyzyzzzzzzzzyyzzzyyyzyyyyzyyyyyyyyzz{yzyzzzzzzzzzzzz{zzzyzzzz{zzzz{{{zz{z{|}zzzz{{zzzzy{z{zz{z{z{{|z{{{y|}{z{{{z}z|{{{|z{|{|}{zz|}zz{{yyy{z|}z|{z{{z{z{{||{{{{z{{|{{{|{||{|{|{||{|{||||}||{{|z|{z|{zz{|{{z{z{z{|{{z{z{}|{z{z{||}|{z{||}|{|zz|}|z{{zzz{zz{|z}|{{z{z{{{|{{{{|}{|{{{|}||{|{|}||{|}||{|}||{{{{|{z|}{|{|{{z{z{{{||{{{|{}z{{{|{||{|{|{||}|{|z||}|z{{|yz{z|{|z}|{yzzzyzyzzzzzzzzzzzz{zz{y{z{z{zz{z{{{zz{{{|}{{zz{{zz{zz{z{zz{z{z{{{||{{{|}{|{{{z}||{|{|{||{|}||z|}||{{zy|{z|}z|{|{{z{z{{{||{{{{{}|{{{|{||}|{|{||}|{|z||}|z{{|zz{z|{|z}|{{z{z{z{zz{{}{z{z{}{|{z|{|{|{}}{|{}zz|}|zz{zzzzzz{zz{z{{z{z{z{z|{{}{z{|{}{|{|z{|{|{}}{|{}|z|}||{zzz|{zz{zz{|{{z{z{{{||{{{{|}}{{{|}||{|{|}||}|}|z{|}|z{{{{y{z|}||}|{{z{z{{{|z{{{{|{{z{{|{||{{z|{||{|{|z||}|z{{|zzzz|{zz{zz{|}z{z{z{z{z|{{z{z{{|{zz{||{|zz{||{|{||{|}||{z{{|{zz{{z{|{{z{z{{{||{{{{|}}|{{{}||}|{|{||}|}|zz|}|z{{zzz{z|}||}|{{z{z{{{|z{{}{|{{z{}{|||{|{|{}}{|{}z||}|z{{|zzzz|{zz{zz{z{z{z{zz{{z{z{{z{z{z{~{{{z{|~{|{|z{~}|zz{{{zzzz{~~{z{{z{z{z{z|{{z{z{{|{z{z{~{|{z{~|{|{~|z|}~|{zzz|{zz{~~{|{{z{z{z{z|{{}{z{}|{}{|{|z|{|{}}}|{}zz|}|z{{zzz{zz{|z}|{{z{z{{{|z{{{{|}{z{{{|}z|{{|}{|{z}{z{|}|z{{{{z{z|}{|{z{|}z{z{z{{{z|{{{{z{}|{{{z{||}|{{||}|{|z{|}|z{{{{z{zz{|{}|{{z{z{{{|z{{}{|}{z{}{|}z|{|{|}}{|}}zz|}|z{{zzz{z|}z|{z{{z{z{{{|z{{{{|{{z{{{|{~~{{{|{~{|{|z|~}|z{{|{zzz|{~~{zz{z{z{z{z|{{z{z{}|{z{z{~~}|{z{~}|{~zz|}~z{{zzz{zz{~~}|{{z{z{z{z|{{}{z{{|{}{|{||{|{|{}}|{}|z|}||{zz||{zz{|z{|{}{{z{z{{{|z{{}{|{{z{}{|{||{|{|{}}{|}z||}|z{{||zzz|{{|{zz{z{z{{{|z{{{{|}{z{{{|}~~{{{|}~~{|}z{~}|z{{{{z{z|}~~{z{{z{z{{{|z{{{{|}{z{{{|}||{{{|}||{|}|z|}|z{{zzz{z|}z|{z{{z{z{z{z|{{}{z{}|{}{|{||}|{|{}}}|{}||}||{{{{|{zz{|z}|{~z~z~z{z|~~}~z{}|~}~|~~~}|~|~~~}|~~z{}~z~{{{z~zz{~~}|~}{z{{~{~|z{~}~|}{z~}~|}~~~|~|}~~~|}~{{~}{{~{{z{{|}~~{z{{z{z{{{|z{{}{|}{z{}{|}||{|{|}}}{|}}z||}|{{|{z{z|}{|{z{{z{z{{{|z{{}{|{{z{}{|{||{|{|{}}{|{}z||}|z{|{zzz|{{z{z{{|{|{|{||{{|{|}}|{|{|}~~}|{|}~~}|}~||~}~|{|||{||}~~}|{}|}|}|}||}}|}|}}|}|}|}~~}|}|}~~}|}~||~}~|}}||}||}~~}|}}z}|}|}||}}|}|}}|}|}|}~~}|}|}~~}|}~||~}~|}}||}||}~~}|}{z{|{|{||{{|{|}}|{|{|}~~}|{|}~~}|}~||~}~|{{|||||}~~}|{{z{|{|{||{{|{|}}|{|{|}~~}|{|}~~}|}~||~}~|{{|||{|}~~}|{{||||{z{z{z{z{z{{zz{z{||{z{z{|}|{z{|}|z|{|}|{z|}|zz{zzz{{|}z|{z|{{z{z{{z{{z{z|y|{{{z{y{|{{{|z|{|{|{y|}||zyyy|{zz{zy{|zxyxyyyzzyyyzzzzzyyzzz{zyzyzzy{zzzzyyz{yyyzxyyyyyzzyzzzyzzzzzzzzzzzzzzzyzzz{{zzzz{zz{yz{{zzz}|{zzz{{zzz{z{yzyyyz{yzyzzzzz{zzzzzzz{zzzyzzz{zzzzzzz{zzzzz|}zzzzzzzzzzyzz{zz{z{z{{{zz{z{||{z{z{z}|{z{|{|z|{|}|{y|}|zz{yyz{{|}z|{z|{{{z{z{|{{z{z|{|{{{|{|{|{|{|||{|{|{||}||z{|z|{{|{zz{|z{z{z{z{z}{z{zz{|{}{z{}{|{|{|z}{|{}zz|}|zzzzzz{{z{zz{z|{{{z{z{{{{z{||{|{{{|}|{|{|}|z|{|}|{z|}||z{zz|{{|}z|{|zyzyzz{zzzz{zz{z{y{zz{{z{zz{z{{zz{{z{{}|{{zz{{zzz{z{zzyyzzyz{z{z{z{{zz{{z|{z{z{z{|{z{{{|z{{|{|{z|}|zzzzzz{{z{zz{z|{{{z{z{{|{{z||{|{{{z}|{|{|{|z|{|}|{z|}||z{zy|{{|}z|{||{{{z{z{}|{{z{|}|{{{|{|}|{|{|||}|{|{||}|{z{|{{{{|{|{}|z{z{z{z{{zz{z{z{z{z{z{|{z{{{~z|{|{~zz|}~{zzz{{{{z{~~{z|{{{z{z{{|}{z{z||{}{z{}{|{|{|z}{|{}{z|}||zzzz|{zz{zz{||{{{z{z{}|{{z{||}{{{|}|{|{|}|z|}|}|{z|}|zz{zzy{{|}||}|zyz{z{z{{zz{z{||{zz{|{|{zz|{|||{|{|{||}|{z{|{{z{|{z{{z{|}z|{{{z{z{{|{{z{z|{|{{z{|{|z{{|z|{|{|{z|}||zzzz|{zz{zz{||{{{z{z{}|{{z{||}|{{{}|}|{|{|z|}|}|{z|}|{z{y{{{{|}||}|zyz{z{z{{z}{z{||{|{}{|}{|{|{z|}{|{}{||}|zz{|zzz{|{zz{z|{{{z{z{{|{{z{z~{|{{{z{{|{{{~z|{|{~{z|}~|zzz{|{zz{~~{||{{{z{z{}|}{z{zz}|{}{z{}|{|{|z}}|{}{z|}|zz{zzz{{z{|z}|z{{{z{z{{z{{z{||{z{{{|}|{{|}|z|{|}|{z|}|{z{z{{{{|}{|{z|}z|{{{z{z{}|{{z{zz}|{{{z{{}|{{|z{}z{|{z|}|{z{z{{{{z{|{}|zyz{z{z{{z}{z{||{|{}{|}}{|{|zz}{|}}{z|}|zz{zzz{{|}z|{zzyz{z{z{{zz{z{|~{z{z{|{~{z{|{|~{|{|{|~}|zz{|zzz{|{~~{z|{{{z{z{}|{{z{z|}|{{{z{|}|{{{||}|{|{z|}|zz{zzz{{z{|z}||{{{z{z{}|{{z{z~}|{{{z{~}|{{{~z}|{~{z|}~{z{z{{{{z{~~}||{{{z{z{{|}{z{z|{|{}{z{}{|{|{|z}|{}{z|}||zzz||{zz{|{{|}{zyz{z{z{{z}{z{||{|{}{|{}{|{|{||}{|}{||}|zz{||zz{|{z|{zzzz{z{z{{zz{z{|~{z{z{|}~{z{|}~z~{|}{z~}|zz{zzz{{|}~~{z|{{{z{z{{|}{z{z|{|{}{z{}{|{|{|z}{|{}z|}||zzz{|{{z{z{{||{{{z{z{}|}{z{z|}|{}{z{}}|{|{|z}}|{}{|}||z{z{|{{z{|{}||{{~{{{{}|}~{{z~}|~}~z{~}|~|~~{~}|~~{{}~{{{z{{~{z{~~}|}zzz{z~z~{z}~z~|~~|~}~|}~~|~|}~z~~|}~~z~}{z~z{{{~|}~~{zzyz{z{z{{z}{z{||{|{}{|}}{|{|}||}{|}}{||}|z{|{{{{|}z|{z|{|{|{|{}||{|{|~}|{|{|}~}|{|}~|~}|}~{|~}~|{|||{{|}~~}||{|{|{|{}||{|{|~}|{|{|}~}|{|}~|~}|}~{|~}~|||||{{|}~~}||}|}|}|}}||}|}|~}|}|}|}~}|}|}~|~}|}~}|~}~||}||}}|}~~}||{|}|}|}}||}|}|~}|}|}|}~}|}|}~|~}|}~}|~}~||}||}}|}~~}||{|{|{|{}||{|{|~}|{|{|}~}|{|}~|~}|}~{|~}~||{|||{|}~~}|z{z{||||{z{z{{{{z{|{{{{}{||{{{{}{|{{{y{}{|||{{{|}|y{y{zz{{{{zz{{{z{z{z|y{z{z{y{z{z{{z|{z{{{{y|{|||zy{|}|{yyyzzz{{{yy{yyzzzzyzyzzzzy{zzzzyzz{zzyzzzz{zz{yzzz|zzzzyzyzyyzzyzy}{|{{{{z}z{{{{{}z|{{{z{z||{{{{z}|||{{{z}|{{{yzz{{{{|z}zz{yz{zzz{z{z{{z{zz{zy{zz{z{{z{zz|zz{zz}|{z{zzzz{z{zzzyyzz{y{z{z{zz|{{zyz{|{zzz{{z|{z{{{{{|{|||zy{|}|yzzzzzz{{{zz{{z{z{z{|{{z{z{|{z{z{{z|{z{|{{{|{|}|z{y|}|{z{yzzz{|}z|{{z{z{z{z{{z{z{|{{{z{{y|{{{{{{{|{||~z{{|}~{z{zzzz{{{~~{{z{z{{{{||{{{{}{||{{{{}{|{{{{{}{|||{y{|}|{{y{zz{{{{zz{}{|z{{{{z}{{{{{}z|{{{z{z||{{{{{}|||{{{|}|{{{zzz{{{{|z}zz{y{z{zzz{{z{{z{zz{zy{zz{z{{z{zz|zz{zz}|{z{zzzz{z{zzzz{|}z{z{z{z{z|{{z{{|{z{z{{z|{z{{{{{z{|||z{z|}|{zzzzzz{{{zz{{{{z{{{{|{{{{{|{|{{{{z|{|{|{{{|{|}|{{{|}|{{{zz|{{|}z|{{z{z{z{z~{{z{z{{{{z{{z|{{{{{{z|{||~z{{|}~{z{zzzz{{{~~{{{{z{{{{|{|{{{{}||{{{{}{|{{{{{}{|||{{{|}|{{z{z|{{{{zz{}{|z{{{{|}|{{{{|}|{{|z|{|||}{{|}|}|{{{|}|{{{zzz{{|}||}{z{z{{{{|{{{{{{|{{{{{{|z{{{{{{|{|||{{{|}|{{{z{z{{{{z{{{|}z{{{z{{{{|{{{{{{|{|{{{z|{|z{{{{|{|||{{{|}|{{zzz|{{{{zz{}{|z{{{{|}|{{{{|}||{{z|}|||{{{|}|}|{{{|}|{{{yzz{{|}||}}{|z{{{{|}|{{{{|}||{{{|}||{{{{|}|||{{{|}|{{{yzz{{{{|y}{{{z{{{{~{{{{{{~{|{{{{z{|{{{{{|{||~{{z|}~{{{zz|{{{{~~{}{|z{{{{|}|{{{{}}||{{{{}||{{{{}}|||{{{|}|{{{{zz{{{{|z}{z{z{z{z|{{z{z{|{{{z{|z|{{|}{{|{|}|z{z|}|{z{zzzz{|}z|{|}z}{|z{{{{z}|{{{{z}||{{{zz}||{{{z}z||{{{|}|{{{zzz{{{{|z}{z{z{{{{|{|{{{{}{||{{|{}{|{|{{}{|}{{{{|}|{{{{zz{{|}z|{{{{z{{{{|{{{{{{|{|{{{{z|{|{{{{|{|||{{{|}|{{zzz|{{{{zz{}{|z{{{{|}|{{{{|}||{{{z|}||{{{|}|||{{{|}|{{{zzz{{{{|z}}{|z{{{{~}|{{{{~}||{{{z~}||{{{{}||~{{{|}~{{{zzz{{{{~~}{{{z{{{{|{|{{{{}{||{{{{}{|{{{{{}|||{{{|}|{{{{||{{{{|z{}z{zzz{{{{|{|{{{{}{||{{|{}{|{|{{{}{|{{{{|}|{{z||z{{|{z|{{z{z{z{z~{{z{z{~{z{z{|z~{z{|}{z~{|}z{z~}|{z{zzzz{|}~~{{z{z{{{{|{|{{{{}{||{{{{}{|{{{{{}{|||{{|}|{{{{zz{{{{zy{{{{z{{{{|{|{{{{}{||{{{{}{|{{{{{}{|||{{|}|{{{{z|{{{{zz{}{|z{{{{|}|{{{{}}||{{{{}}||{{{{}}|||{{|}|{{{{z|{{{{|y}}{~z{{{{~}~{{{{~}|~{{{{~}|~{{{{~}|~~{{{}~{{{{z{{{{{~~}}{z~z~{~{~~~{~{~~~|~{~|{~~|~|}~{~~|}~{~{~}~{~{zz{~|}~~{}|||{|{|~}||{|{~}|||{||~}|||}{|~}|}~|{|~}~|{||||{|}~~}}|||{|{|~}||{|{~}|||{||~}|||}{|~}|}~|{|~}~{{|||{{|}~~}}|||{|{|~}||{|{~}|||{||~}|||}{|~}|}~|{|~}~{|||||{|}~~}}|}|}|}|~}}|}|}~}|}|}|{~}|}|}}|~}|}~|}|~}~}|}|||}|}~~}}|}|}|}|~}}|}|}~}|}|}||~}|}|}}|~}|}~|}|~}~}|}|||}|}~~}{{{z{{z{|||{|{|{|{||{|{|||{|{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|{{z{z{|{{z{z||{{{z{{z|{{{|zy||{|{{z{||}}zyyy{yzz{|{|y|yy{z{z|zz{zz{|zzzzzz{|zyzz{z{|z{{z{z{z{|{zzz{zzzzzz|z|{||{|{|z{|{|||z|{|{z||{|{||{||{|{{|{{|}}|{|y{z{|{|{|z|||{|||||z|||||}z|||{||z|||||||}|{||||{}}||||{{|||{{}{}{|z||{}|{|{||}z|z|{{|}z|{{|{|}z|{{|{||}}|{|{||{|{{{}}{z{|}y|{{{{{{|{{{yz||{{yz{{||{{{|{{||{|{{{y||}}{yzz{zzz{|{|z~{|{|{|{|{|{|||{|{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|{|{|{|{|{|{|||z|{|{z||{|{||{||{|{{|{{|}}|{|z{z{|{|{|z|||{|||||||||||}z|||{||z|||||||}|{|||||}}||||{{|||{{}{}{|{|{|{}|{{||}{|{|{{|}{|{||{|}{|{{|{||}}|{|{||{|{|{}}z{|}y|{{{{{{{|{{{{||{{{z{{||{z{|{{||{|{{{{{|}}{{zz{z{z{|{|z|||{|||||||||||}||||{||}|||||||}|{|||||}}||||{{||||{}z~{|{|{|{~|{|{||{|{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|{}{}{}{}}{}{}}}}{}{z}}{}{|}{}}{|{{}{}|}}}{}z}z{}{|{|z|||{||||||||||||}|||{||{|||||||}|{|||||}}||||{{||||{}{}{|{|{|{}|{|{||}{||{{|}z|{||{|}{|{{|{||}}|{|{||{|{|{}}{|}z|{|{|{|{||{|{|||{|{|z||{|z||{||{|{{|{||}}|{|z{z{|{|{|z|{|{|{|{||{|{|||{|{|{||{|{||{||{|{{|{||}}|{|y{y{|{|{|{|||{||||||||||||}||||{|}|||||||}|{|||||}}||||{{||||{}z~{|{|{|{~|{|{||~{|{|{{|{|{||{||{|{{|{||}~|{|{||{|{|{~~||}{}|}|}}|}|}}}}}|}|{}}}||}|}}}|{|}|}|}}}|}|}{|}||{}{}{|{|{|{}|{|{||}{|{|{{|}{{||{|}{|{{|{||}}|{|{||{|{|{}}|}z}||{||||}||||||}}||||{|}}|||||}}{{|||||}}|||||||||{{}}|{{{{{{{|{{{{{||{{{{{{||{{{|{||{|{{{{||}}{{{z{z{{{|{|z|{|{|{|{||{|{|||{|{|{{||{|{||||{|{{|{||}}|{|z{z{|{|{|{|||{||||||||||||}||||{||}||||||}|{|||||}}||||{{||||{}z~||{||||~||||||~}||||||~}||||||}|{|||||}~||||||||||{~~}{}{}{}{}}{}{}}}{}{}{{}}{}{|}{}}|{{}{}|}}}{}{}|{}{|{}}}||z}y}{}{}}{}{}}}{}{}{{}}{}{|}{}}{|{}{}|}}}{}z}|{}{|{||}{}{}{}{}}{}{}}}{}{}{{}}{}{|}{}}{|{z{||}}}{}{}|{}{|{}}}{}{}{}{}}{}{}}}{}{}{{}}{}{|}{}}{|{{{||}}}{}{}|{}{|{}}}{}{}{}{}}{}{}}}{}{}{{}}{}{|}{}}{|{{}||}}}{}{}|{}{|{}}}|}{}|}|}}|}|}}}}}|}|{}}}}||}|}}}|{|}||}}}|}|}||}||{}}~|}{}|}|~}|}|}}~}}|}||}~}}||}|}~}}||}|}}~}|}|}}|}|||~~}~~}z}~}~~}~}~}}~~}~}~~}~~}~|}~}~~|{~}~}~}}~}~}|~}~|{~~~|}{||||~}|||||~}}|||{|~}}|||||~}}}||||~}~{|{|}||||}~~~|}{||||~}|||||~}}|||{|~}}|||||~}}}||||~}~||{|}||||}~~~|}{||||~}|||||~}}|||{|~}}|||||~}}}||||~}~||{|}||||}~~~|}{||||~}|||||~}}|||{|~}}|||||~}}}||||~}~||||}||||}~~~}}||}|}~}}|}||~}}}|}||~}}}||}|~}}}}|}|~}~|}|}}}|}|}~~z{|{|{|{||{|{}}|z{{{{||{{{{||||{{{{||||{{{{|||||{{{|||}{{{{||y{{{{|}y}{|}|}~{}|}||~}{}|}}|~}{}{|}|~}{|}|}|~|}|}|}|~z}|}{|}{{|{{{{|{{{{{||{|{{{{||||{{{{|||||{{{|||}{{{{||y{{{{|}z||{|{|||{{|{|||{|{|{||{||{{|||||||{||||}{|{|||{|{|{|}z}|z||}||}|}|||~|{|}{|}~|}{|}|}z||}|}|}~}|}|}||y}|}{|}z|}|}||~}|}|}}~|}|}||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{{{|}z{|z|{|{|{|{||{||{|{z|{||{{|{|z|||z|{|z|}|z|z||~{|{{|}z}|{|}|}~}|}||~}|}|}}|~}|}{|}|~}||}|}|~|}|}|}|~z}|}{|}{||{{|{|||{|{|||{|{|{||{||{{|||||||{||||}{|{|||{|{|{|}z}|z|}|}||}}|||~|{|}{|}~|}{|}|}|||}|}|}~}|}|}||z}|}{|}z|}|}|}|~}|}}}~|}|}||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{{|}z}|{|}|}||}|}|{~|}|}{|}~|}{|}|}~||}|}|}~}|}|}||{}|}{|}z{|z|{|{~|{|{||||{|{{||||{{|{|||||{|{|||}|{|{||~{|{{|}z{|z|{|{||{|{||||{|{{||||{{|{|||||{|{|||}|{|{||z{|{{|}~}|{|}|}~|}|}||~}}|}}|~}|}{|}|~}||}|}|~|}|}|}|~{}|}{|}{}|z|}|}||}|}|||~||}{|}~|}{|}|}|||}|}|}~}|}|}||z}|}{|}z|}|}|}|~}|}|{}~|}|||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{|}z{|z{{{{||{{{{||||{{{{{||{{{{|||||{{{|||}{{{{||z{{{{|}y}|{|}|}||}|}|||~|}|}{}~|}{|}|}~||}|}|}~}|}|}||{}|}{|}z{|z|{|{~|{|{||~||{|{{|||{{|{|||||{|{|||}|{|{||~{|{{|}z||{||||||||||||~||||{||||{|||||||||||||}||||||z|||{|}~}|{|}|}~|}|}||~~|}|}}|~~}{|}|~}||}|}|~~}|}|}|~z}|}{|}{|}{}|}|~}|}|}}~|}|}||}~|}}}|}~|}||}|}~|~}|}|}~~|}|}|~||}{||{{|{||||{|{|||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{||{{|{||||{|{|||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{}|{|}|}||}|}|||~|}|}||}~|}{|}}~||}|}|}~}|}|}||{}|}{|}{||{||||~||||||~|||||||~|||{||||||||||||}||||||~|||{|}z}|{|}|}||}|}|||~|}|}||}~|}{|}|}||}|}|}~}|}|}||z}|}{|}~}}|}}}}~}}}}}}~}}}}}}}~}}}{}}}~}|}}}}~|~}}}}}~~}}}}|~|}z}|z|}|}~|}|}||~}|}|}}|~}|}{|}|~}|||{|z|}|}|}|~z}|}{|}y}|z|}|}~|}|}||~}|}|}}|~}|}{|}|~}||}{|||}|}|}|~z}|}{|}z}|z|}|}~|}|}||~}|}|}}|~}|}{|}|~}||}||||}|}|}|~z}|}{|}z}|{|}|}~|}|}||~~|}|}}|~~|}{|}|~~||}|}}~}|}|}|~{}|}{|}z}|{|}|}~|}|}||~}|}|}}|~}|}{|}|~}||}|}||}|}|}|~~}|}{|}z}~{~}~}~~}~}~~~~~}~}}~~~~}~~}~~~~|}~}~~~~}~}~~~}~}~|~~}|}|}|}||}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~|}|}|||}|}|~~|}|}|}||}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}}|}|||}|}|~~|}|}|}||}|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}||}|||{|}|~~|}|}|}||}|}|}}|~}|}|{}|~}|}}|}|~}||}|}|~~}|}}|||}|}|~~}}|}}}}|}}}}}}|~}}}}|}}~}}}}}}}~}|}}}}}~~}}}}||}}}{|~~}~{~}~}~~}~}~~~~~}~}{~~~~}~~}~~~~|}~}~~~~~}~}~~}~}~|~~{{{|}z{{|}z{|}z|}{}z}}|||}}|}}}|}}}}|}}}}}~~|{}~}~}~}~~~~~}~}{~~~~}~~}~~~~}}~}~~~~~}~}~~~}~}~}~~}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}|}}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}}~~}|}~}~~}~}~~~~}~}}~~~~}~~}~~~~}}~}~~~~~}~}~~~}~}~}~~|}}}}}}~~}}}}}}}}}}}}}~}}}|}}}~}}}}}}}~}}}}}}}~}}}}}}}|}}}}}}}~}}}}}}}}}}}}}~}}}|}}}~}}}|}}}~}|}}}}}~}}}}}}}|}}}}}}}~}}}}}}}}}}}}}~}}}|}}}~}}}}}}}~}|}}}}}~}}}}}}}|}}|}|}|~}|}|}}|||}}}}~|}||}}}~|}}|}}}~||}|}}}~}|}|}}}|}}|}|}|~}|}|}}||||}}}~|}||}}}~|}}|}}}~||}|}}}~}|}|}}}}}|~}}}}}~~}}}}~}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}||}}}||}}}}}~}}}}}|}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~|}}}}}}~}}}}}}}}}}}}|}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}|}}}}}}}}}}}}}}}}}}}||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}||}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}||}|||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|~}}}}}~~}}}}~}~}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}|}}}}}}}~}}}}}~~}}}}}}}~}}}|}~~}}}}}}~~}}}}}}~~}}}}}}~~}|||}||||}|}}}|}|}}|}}|}}}}|}}}}|}|}~}}}|}}}~}|}}}}}~|}}}}}}~}}}}}}}}}}}}|}}}}}}||}}}}}}}}}~}}}}}}}~}}}}}}}|}}}}}}}}}}}}}}}}}}}|}}}}}}|||}|}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}|}}}}}}|||}||}}}}}}}}}}}}}}}}}}}}}}}}}|~}}}}}~~}}}}~}~}}}}}}}~}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}|}}}}}}}}}}}}}~}}}}}|}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~|}}}}}}}~}}}}}}~}}}}}}}~}}}|}}}~}}}|}}~}}}}}}}~}}}}}}}~}|||}||||}|}}}|}|}||}}|}|}}|}}|}}|}|}}}}|}|}~}|}|}}}~|}}}}}}~}}}}}}}}}}}}|}}}}}}|}}}}}}|||}}}}}}}}}~}}}}}}}|}}}}}}}}}}}}}}}}}}}|}}}}}}|}}}}}}||||}|}}}}}}}}}}}}}}}}}}}|~}}}}}~~}}}}~}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}~}}}}}}}|}}}}}}}}}}}}}~}}}}}|}}}}}}|}}~}}}}}}}~}}}}}}~}}}}}}}~|}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}~}}}}}}~}}}}}}}~}}}|}}}~}}}}}}}~}|}|}}~}}}}}}}~}|||}||||}|}}}|}|}||}}|}|}}|}}|}||}|}}|}}|}|}}|}|}|}~|}}}}}}~}}}}}}}}}}}}|}}}}}}|}}}}}}|}}}}}}||||}}}}}}}}}}}}}}}|~}}}}}~~}}}}~}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}|}}}}}}}}}}}}}~}}}}}|}}}}}}|}}~}}}}}}}~}}}}}}}~}}}}}}~|}}}}}}}}}}}}}}}}}}}|}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}~}}}}}}~}}}}}}}~}}}|}}}~}}}}}}}~}|}}}}}~}|}|}}~}|||}||||}|}}}|}|}||}}|}|}}|}}|}||}|}}|}}|}|}}||}|}|}}}|}||}||}}||}|}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~|~}~~~}~}~~}~}~~}~~}~}}~}~~}~~}~}~~}}~}~}~~~}~}~}~~~~~||}}}}}}}}~~}}}}|}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}|||}|||}|}}}}|}||}}~}|}}|}}~}||}|}}~}}|}|}}~|}|}|}}~}}|||}|||}|}}}}|}||}}~}|}}|}}~}||}|}}~}}|}|}}~|}|}|}}~}}|||}|||}|}}}}||||}}~}|}}|}}~}||}|}}~}}|}|}}~|}|}|}}~}}|||}|||}|}}}|||||}}~}|}}|}}~}||}|}}~}}|}|}}~|}|}|}}~}}}}}}}~}}}}}~~}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}||}}}|}}}}}~~}}}}|}~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~~~|||||}|||}~}}||}||}}}|}||}}~}||||}}~}||}|}}~|}|}|}}~}}||||||||||}}}||||||}}|||||}}||||||}}||||||}}||||||}}}}||||||||||}}}||||||}||||||}}||||||}}||||||}}||||||}}}}||||||||||}}}||||||}||||||}}||||||}}||||||}}||||||}}}}}}}}}~}}}}}~~|}}}}}~~|}}}}~~|}}}}}~~|}}}}}~~}}}}}}~~}}}}}||}}}|}}}}}~}}}}}|}}~}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~}}|||}|||}|}}}~}|}}|}}~}}}}|}~}}|}|}~~}}|}}}~~|}}}}}~~~~|||||}||||~}}|||||}}}||}||}}}||||}}~}||||}}~|||}|}}~}}||||||||||}}}||||||}}||||||}||||||}}||||||}}||||||}}}}||||||||||}}}||||||}}||||||}||||||}}||||||}}||||||}}}}}}}}}~}}}}}~~|}}}}}~~|}}|}}~~|}}}}~~|}}}}}~~}}}}}}~~}}}|}}||}}}|}}}}}~}}}}}|}}~}}}}}|~~}}}}}~~}}}}}}~~}}}}}}~~}}||||||||||}}}||||||}}||||||}}|||||}}||||||}}||||||}}}}|||}|||}|}}}~}|}||}}~}|}}|}}~}}|}|}~}}|}|}~~|}|}}}~~~~|||||}||||~}}|||||}}}|||||}}}|||||}}}||||}}~|||||}}~}}||||||||||}}}||||||}}||||||}}||||||}||||||}}||||||}}}}}}}}}~}}}}}~~|}}}}}~~|}}|}}~~|}}}}}~~|}}}}~~}}}}}}~~}}}|}}}||}}}|}}}}}~}}}}}|}}~}}}}}|~~}}}}}}~~}}}}}~~}}}}}}~~}}||||||||||}}}||||||}}||||||}}||||||}}|||||}}||||||}}}}||||||||||}}}||||||}}||||||}}||||||}}|||||}}||||||}}}}|||}|||}|}}}~}|}||}}~}|}}|}}~}||}|}}~}}|}|}~|}|}|}~~~~|||||}||||~}}|||||}}}|||||}}}|||||}}}|||||}}|||||}}~}}}}}}}~}}}}}~~|}}}}}~~|}}|}}~~|}}}}}~~||}}}}~~}}}}}~~}}}|}|}}||}}}|}}}}}~}}}}}|}}~}}}}}|~~}}}}}}~~}}}|}}~~}}}}}~~}}||||||||||}}}||||||}}||||||}}||||||}}||||||}}|||||}}}}||||||||||}}}||||||}}||||||}}||||||}}||||||}}|||||}}}}||||||||||}}}||||||}}||||||}}||||||}}||||||}}|||||}}}}|||}|||}|}}}~}|}||}}~}|}}|}}~}||}|}}~}}|}|}}~|}|}|}~~~|||||}||||~}}|||||}}}|||||}}}|||||}}}|||||}}}|||||}}}{{|{{|{||~||||||}{|{}|||}}|||}}||||}}||||}}|||||}}||||||}|||||||||||||}|||}|||}}|||}}||||}}||||}}|||||}}||||||}|||||||||||||}|||}|||}}|||}}||||}}||||}}|||||}}||||||}|||||||}~}~~~~~}~~}~}~~~~}~~}~~}~~}~}~~~}~}~}~~}~}~}~~}~}~}~}}|||||}|}||~|{{|||}~}}||}~}}|}|~}}|}|}~}}|}|}|}}|}|}|}}|||||}|}||~}{{}||}~}}||}~}}|}|~}}|}|}~}}|}|}|}}|}|}|}}|||||}|}||~}|{}||}~}}||}~}}|}|~}}|}|}~}}|}|}|}}|}|}|}}|||~~~|}||~}|}~~|}~~}~~}~~}~}|~~}~}|}~~}~}|}|~}~}|}|}~}~|~~~~~}~~~}~}~~~}~~}~~}~~}~}~~~}~}~}~~}~}~}~~}~}~}~}||{||{}||||}||||}|{{}||||{}||||{}|||||{}||||||}|||||||||{||{}||||}||||}||{}||||{}||||{}|||||{}||||||}|||||||||{|~~}||||~||||}~||}|~~|~}|~|{~}|~|||~}|~||||}|~|||||||{|~}~}|||~|}|~~~}|~}}~|~~}}}|~~}}}||~~}}}}||~}}}}|}||}}}}}}}~}}}~~}}}~~}}}~~}|}~~}}}}~~}}}}}~~}}}}}}~}}}}}}}}|||~~~|}||}}|}~~~|}~~}|}~~}|}|~~}|}|}~~}|}|}|~}|}|}|}{|{{|{}|{|||{|{{}||{{}|||{}||{{{}||{|{{}||{|{|}||{|{|{{|{{~~}|{||~{|{{}~|{{}|~~{}|~{{~}|~{|{~}|~{|{|}|~{|{|{||{|~|~||||~|||~}~}|~}|}~|~|}}|~~|}}||~~|}}|||~|}}}|||||{{||~||||~|||{~|||~}||||~~||{~~|||||~~||||||~||||||||}}}}}}}}~}}}~~}}|~~|}|~~}}||~~}}}~~}}}}}~~}}}}}}~}}}}}}}}|||~|}|}||~}|}~}~|}~}}||}~}}|}~}}|}|}~}}|}|}|}}|}|}|}{|{{~~}|{||~{|{{}~|{{}|~~{{}|~{{}|~{{{~}|~{|{{}|~{|{|{||{|~|~||||~|||~}~||~}|}~|~}|}}|~|}}||~~|}}|||~|}}||||{|{{||}|{|||{|{{}||{{}|{|{{}||{{{}|{|{{}||{|{|}||{|{|{}||||{~|}||~}|}~~||}~}}||}~~}|}|~~}}|}~~}|}|}|~}|}|}|}|}||}}}}}}~}}}~~}}|~~|}|~~}}}|~~}}{}~~}}}}~~}}}}}}~}}}}}}}}|||~|}|}|||}|}~}~|}~}}||}~}}|}|~}}|}|~}}|}|}|}}|}|}|}{|{{~~}|{||~{|{{}~|{{}|~~{{}|~{{{}|~{{{}|~{{{|}|~{|{|{||{|~|~||||~|||~}~||~}|}~|~}|}}|~}|}}||~|}}|||~|}}||||{|{{||}|{|||{|{{}||{{}|{|{{}||{{{}||{|{{}|{|{|}||{|{|{}||||{}|}||}}|}~}||}~}}||}~}}|}|~}}|}|}~}}}|}|}}|}|}|}||{{|{~||||~||||~|||~}||||~~|||{~~|||||~~|||||~||||||||}||{}}}}}}~}}}~~}}|~~|}|~~}}||~~}}{}~~}}}}}~~}}}}}~}}}}}}}}|||~|}|}||}}|}~}~|}~}}||}~}}|}|~}}|}||~}}|}|}}}|}|}|}||{|~|~||||~|||~}~||~}|}~|~}|}}|~}|}}||~}|}}||||}}||||{|{{||}|{|||{|{{}||{{}|{|{{}||{{{}||{|{{}||{|{|}|{|{|{}||||{}|}||}}|}~}||}~}}||}~}}|}|~}}|}|}~}}|}|}|}}}|}|}{|{{|{}|{|||{|{|}||{{}|||{{}||{{{}||{|{{}||{|{|}|||{|{||{{|{~||||~|||{~|||~}||||~~|||{~~|||||~~||{|||~|||||||}||{|}}}}}|~}}}~~}}|~~|}|~~}}||~~}}{}~~}}}}}~~}}}}{}~}}}}}}}|||~|}|}|||}|}~}~|}~}}||}~}}|}|~}}|}||~}}|}|}|}}|}|}|{{{{|{{{|{{|{}}|||||}}{{||||||}}}|||}}||||}}||||}}||||}}|||||}}|||||||||||}}|{||||||}}}|||}}||||}}||||}}||||}}|||||}}|||||||||||}}||||||||}}}|||}}||||}}||||}}||||}}|||||}}||||||}|||}~~|}|}}|}|~}~|}|~}}}}|~}}}||~}}}|}~}}}|}|~}}}|}|}}}|}{}}}}}}||{||}}}}}}}}{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}{}}}}}}|}{|}}}}}}}}}{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}{}}}}}}|}}|}}}}}}}}}{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}{}}}}}}|}}}}}}}}}}}}{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}|~~}}}}}}}}}}~}}}~}}|}}~}}}}}~}}}}}~}}}}}}~}}}}}}}}~}}}{~~}~}}}~}~}~}}~}~~}}~}~~}~}}~~}~}~~~}~}~}~~}~}~}~|{{{{|}{|{|||{||}}}{{||{{||}|{|{|}|{|{|}|{|{|{}|{|{|{||{{{{|}{|{|||{||}}}{{||{{||}|{|{|}|{|{|}|{|{|{}|{|{|{|||{{{}}|||||||||}}}||}}|{||}}||||}}||||}}|||||}}||||||||{|}~~}|||}|}||}}~}|}}}}|}~}}||}~}}|||~}}|}||~}}|}|}||}{}{}}}|}}||}|}}}}}|}}}{|}}}}|}}}}}|}|}}}|}|}}}}|}|}|}}}}|}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}{{{{{|}{{{||{{{|}}}{{|}|{{{||{{{|}|{{{{}|{{{{{}|{{{{{{||{{{}}|||||||||}}}|||}}|{||}||||}}||||}}|||||}}||||||||||}~~||||}||||}}~}||}}}}|}}}||}~}}|||~}}||||~}}|}||||}{}{}}}|}}}|}|}}}}}|}}}}{|}}}|}}}}}|}|}}}|}|}}}}|}|}|}|||{}}|}|}|}|}|}}}|}|}}|{}|}}}||}}|}|}}}|}|}|}}|}|}|}}}}}||||}}|}|}|}|}|}}}|}|}}|{}|}}|}|}}|}|}}}|}|}|}}|}|}|}||{{{}}|||||||||}}}|||}}|{||}}||||}||||}}|||||}}||||||{|{|}~~|{||}{|{|}}~|{|}}}}{|}}}||}}}||{~}}||{|~}}||{|{|}{}{|}}|}}||}|}}}}}|}}|}{|}}|}|}}}}|}|}}}|}|}}}}|}|}|}|||{}}|}|}|}|}|}}}|}|}}|{}|}}|}||}}}|}}}|}|}|}}|}|}|}{|{{{}}|{|||{|{|}}}|{|}||{{|}}|{{|}}||{}}|{|{|}}|{|{|{}}}|}||||}}|}|}|}|}|}}}|}|}}|{}|}}|}||}}|}|}}|}|}|}}|}|}|}{|{|}~~|{||}{|{|}}~|{|}}}}{|}}}|||}}}||{}}||{|~}}||{|{|}{}{|}}|}}||}|}}}}}|}}|}{|}}|}|}}}|}|}|}}|}|}}}}|}|}|}|||{}}|}|}|}|}|}}}|}|}}{{}|}}{}||}}{}|}}}}|}|}}|}|}|}||{{{}}|||||||||}}}|||}}|{||}|||||}}{|||}}||||}}||||||{|{{{}}|{|||{|{|}}}|{|}||{{|}}|{{|}}|{|{}}|{{|}}|{|{|{}}}|}}||||}}|}|}|}|}|}}}|}|}}|{}|}}|}||}}|}||}}|}|}}}|}|}|}{|{|}~~|{||}{|{|}}~|{|}}}}{|}}}|||}}}||{}}}||{|}}||{|{|}{}{|}}|}}||}|}}}}}|}}|}{|}}|}|}}}|}|}|}|}|}|}}}|}|}|}|||{}}|}|}|}|}|}}}|}|}}{{}|}}{}||}}{}|}}}{}|}|}}}|}|}{{{{{|}{{{||{{{|}}}{{|}|{{{|}|{{{|}|{{{{}|{{{{{}|{{{{{||{{{}}|||||||||}}}|||}}|{||}|||||}}{|||}}|{|||}}|||||{|{{{}}|{|||{|{|}}}|{|}||{{|}}|{{|}}|{|{}}|{|{|}}|{||{}}}|}|}||||}}|}|}|}|}|}}}|}|}}|{}|}}|}||}}|}||}}|}|}|}}|}|}|{{{|}{{{|}{{{}{|}{}{}|||||}|{{||{|||||}}||||}|||||}|||||}|||||}|||||}|||||||||||}||{||||||||}}||||}|||||}|||||}|||||}|||||}|||||||||||}|||||||||||}}||||}|||||}|||||}|||||}|||||}||||||}}|||~~}}}||}}}}}~~}}}}~}|}}}~}}}}}~}}}}}~}}}}}~}}}}}}}~{~|~~~}~~~}~}~~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}}||||}||}||~||{|||}|}|~}||}|~}|}||~}|}|}~}|}|}|}|}|}|}}||||}||}||~|}{|||}|}|~}||}|~}|}||~}|}|}~}|}|}|}|}|}|}}||||}||}||~|}||||}|}|~}||}|~}|}||~}|}|}~}|}|}|}|}|}|}}||||}||}||~|}|}}~}|}|~~||}|~~|}||~~|}|}~~|}|}|~|}|}|}}||||}||}||~~}|}||}|}|~}||}|~}|}||~}|}|}~}|}|}|}|}|}|}}~|~|~~~}~~~~}~}~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}}|{{{|}{{|{||||{||||}{{{|||||||||{|||||{|||||{|{|||{|{||{{{|}{{|{||||{||||}{{{|||||||||{|||||{|||||{|{|||{|{|}|{{|}{|}||||}|}|}~}|}}~||}|}~|}{|}~|}|}}~|}|}|~|}|}|}||{{|}{|||||~||||||}||||||||~|||{|~|||||~|||||||||||||}|{||}~|}||||}|}|}~}|}|}||}|}~|}||}~|}|}}~|}|}|~|}|}|}}}|}|~|}}}}~~}}}}~|~}}}~}|}}~}}}|}~}}}}}~}}}}}}}}}}}}}|}{{{{|}{{{{|||{{{|||}{{|||{|{{|{{{|||{{{{||{{{{{|{{{{{{}|{{|}{|}||||}|}|}~}|}|}~||}}~|}{|}~|}|}}~|}|}|~|}|}|}{|{{|}{|{|||~{|{|||}|{|||||{|||{{|~||{|{~||{|{|||{|{|{||{||}~||||||||||||}|||||||||||||||~|||||~|||||~||||||}||||}{|}||~|}|}|~~}|}|~}||}|~~}||~~|}|}~~|}|}|~|}|}|}|}|}|~|}|}}~~|}|}~|~}|}~|}||}~|}}}~|}|}|~|}|}|}|}|}|}||}|}|{{|}{|}||||}|}|}~}|}|}~||}|}~|}{}~|}|}}~|}|}|~|}|}|}{|{{|}{|{|||~{|{|||}|{|||||{||||{{|||{|{~||{|{|||{|{|{{|{||}~|{||||{|{|||}|{||||||||||{||||{|{|~|{|{|~|||{|{}||||}{|}||~|}|}|~|}|}|~}||}|~}|}||~}}|}~}|}|}|}|}|}|}}|{{|}{|}||||}|}|}~}|}|}|||}|}~|}{|}~||}}~|}|}|~|}|}|}|}|}|~|}|}}~~|}|}~|~}|}~|}||}~|}|}}~|}||~|}|}|||}|}|}||}||{|{{|}{|{|||~{|{|||}|{|||||{||||{{||||{|{||{|{|||{|{|{{|{||}~|{||||{|{|||}|{|||||{||||{|||||{|{||{|{|~|{|{|{}||||}{|}||~|}|}|~|}|}|~}||}|~}|}||~}|}|}~}}|}|}|}|}|}|{{{|}{{|{||||{||||}{||||||||||||{|||{|{||||{|{|||{|{|}|{{|}{|}||||}|}|}~}|}|}|||}|}~|}{|}~|{|}}~|}}|~|}|}|}|}|}|~|}|}}~~|}|}~|~}|}~|}||}~|}|}}~|}|}|~|}|}}|}|}|}||}|||{|{||}~|{||||{|{|||}|{|||||{||||{|||||{|{|||{|{||{|{|{}||||}{|}||~|}|}|~|}|}|~}||}|~}|}||~}|}|}~}|}|}|}}|}|}{{{{|}{{{{|||{{{|||}{{|||{|{|||{{{|||{{{{||{{{{{|{{{{{|{{{|}{{|{||||{||||}{||||||||||||{|||{|{|||||{|{||||{|}|{{|}{|}||||}|}|}~}|}|}|||}|}~|}{|}~|{|}}~|}|}|~|}||}|}|}|~|}|}}~~|}|}~|~}|}~|}||}~|}|}}~|}|}|~|}|}|}|}|}|||}||||~|{~}~|}~}~}~~~}~}~|}~~}~}|~}~~}~~}~}~~}}~}~}~~~}~}~}~}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}|}}}}|}}}}}}|}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}|}|}}}}}|}}}|}}}}}}|}}}}}}||}}}}}|}}}}}}}}}}}}}}}}}}}}|}||}}}}}|}}|}}|}}}|}}}}}}|}}}}}}||}}}}}|}}}}}}|}}|||||}|||||||||||}}|||||}}}|||||}}}|||||}}}|||||}}}~~||}}}}}}}}}~}}}}}|}~}}}}|}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}~~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~~~}}||||}||||~}}||||||}|||}}|~}||||}|~}||||}|~}||||}|~|}}}|}||}|}|}}}}}|}||}}}|}|}}}}}||}}}}}}}|}}}}}|}|}}}}|}}|||||}||||}}}||||||}||||}}}}||||}}}}||||}}}}||||}}}|}}|||||}||||}}}||||||}||||}}}}||||}}}}||||}}}}||||}}}|}}|||||}||||}}}||||||}||||}}}}||||}}}}||||}}}}||||}}}}}~~}}}}}}}}}}}~~}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}|}}}}}~}}}}}}||}}}}}}}|}}}}}}|~}}}}}}|~}}}}}}|~}}}}}}}|}}}}}|}}}}}}|}}}}}}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}|}}}}}}|}}}}}}|||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}|}}}}}}|}}}}}}|||}||}}}}}}}}}}}}}}}}}}}}}}|}~~}}}}}}}}}}}~~}}}}}}}~}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}|}||}|}|}}}}}|}||}}}}|}||}}}}||}}}}}}|}}}}}|}|}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}~~}}||||}||||~}}||||||}}|||}}|}}||||}|}||||}|~}||||}|~|}|}|}||}|}|}|}}}|}||}}}}|}||}}}}||}|}}}}|}|}}}|}|}|}}|}|}||||}|||||}}|||||}}}|||||}}}||||||}|||||}}}|||||}}}|}}~~}}}}}}}}}}}~~}}}}}}}~}}}}}|}~}}}}|}}~}}}}}}~}}}}}}}~}}}}}}}|}}}}}}}}}}}}|}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}||||}|||||}}|||||}}}|||||}}}|||||}}}||||}}}||||}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}~~}}||||}||||~}}||||||}}|||}}|}}||||}|}}||||}|}||||}|~|}|}|}||}|}|}|}}}|}||}}}}|}||}}}}||}|}}}}}|}|}}|}|}|}}}|}}}~~}}}}}}}}}}}~~}}}}}}}~}}}}}|}~}}}}|}}~}}}|}}}~}}}}}}~}}|}|}||}|}|}}}}}|}||}}}}|}||}}}}||}|}}}}}|||}}}|}}|}}}}}}}}}|}}}}}|}}}}}}|}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}}}}|}}}||||}|||||}}|||||}}}|||||}}}|||||}}}|||||}}}||||}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}~~}}||||}||||~}}||||||}}|||}}|}}||||}|}}||||}|}}||||}|||}}}}}}}}}}}}}}}|}~}}}}|}}~}}}}}}}~}}}}}}}~}}}}}}}~|||||}}||||||{|||||~|||||||~|||||||~|||||||~|||||||~|||||}}||||||||||||~|||||||~|||||||~|||||||~|||||||~|||||}}|{||||{|||||~|||||||~|||||||~|||||||~|||||||~|||||}}||||||||||||~|||||||~|||||||~|||||||~|||||||~|||||||||||||||||||}|||||||}|||||||}|||||||}|||||||}|||||||||||||{|||||}|||||||}|||||||}|||||||}|||||||}||||||||||||||{||||}|||||||||||||{|}|||{|||}|||||||}{||||||||||||||{|||||{||||||||||{||||||{{|||||{|||||||||}|}}|}|}|}|}||}}|}|}||}}|}||}|}}|}}|}|}}||}|}|}}||||||}}|||||||||||}|||||||}|||||||}|||||||}|||||||}||||||}}|||||||||||}|||||||}|||||||}|||||||}|||||||}||||||}}|||||||||||}|||||||}|||||||}|||||||}|||||||}||||||}}|||||||||||}|||||||}|||||||}|||||||}|||||||}~}|}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}~|||}}}}|}}}}|}}}}|}}}}}||}~}}}|}}}~}}}}}}}~}}}}}}}~||||}|}||}|}}|}|}||}}}|}||}}|}||}|}}|}}|}|}}||}|}|}}||||||||||||}||||||||||||||}|||||||}|||||||}|||||||}||||||||||||}|||||||}||||||}|||||||}|||||||}|||||||}||||||||||||}|||||||||{||||}|||||||}|||||||}|||||||}~||}|}}}}|}|~}|}|}||~}|}|}|~}|}}|}|~}||}|}|~}}|}|}|~}|||||}}}||}}}}|}}}}|}}}}}}||~}}}|}}}~}}}}}}}~}}}}}}}~~|||||}}|||||||||}||}||}||||}|}||||~}||||}|~}||}|}|~||||}|}||}|}||}|}||}}|}|}||}}}||}|}}|}}|}|}}||}|}|}}||||||||||||||||||||}||||||||||||||}|||||||}|||||||}||||||||||||||||||||}|||||||}||||||}|||||||}|||||||}~||}|}}}}|}|~}|}|}||~}|}||}|~}|}|}|~}||}|}|~}}|}|}|~|||||||}|}||}|}}|}|}||}}|}|}|||~|}||}}~|}}|}|}~||}|}|}~||||||||||||||||||||}|||||||}||||||}|||||||}|||||||}~|||||}}||||||||||||}|||||||}||}||||}||||||~}||||}|~||||}|}||}|}||}|}||}}|}|}||}}|}||}|}}}}|}|}}||}|}|}}||||||||||||||||||||}|||||||}||||||||||||||}|||||||}~||}|}}}}|}|~}|}|}||~}|}||}|~}|}}|}|~}|}|}|~}}|}|}|~||||||||}|}||}|}||}|}||}}|}|}|||~|}||}|}~|}}||}~||}|}|}~||||||||||||}|||||||}|||||||}|||||||}||||||}|||||||}||||||||||||||||||||}|||||||}|||||||}||||||}|||||||}~|||||}}||||||||||||}|||||||}|||||||}|||||||}||||||~||||}|}||}|}||}|}||}}|}|}||}}|}||}|}}|}}|}|}}|}|}|}}~||}|}}}}|}|~}|}|}||~}|}||}|~}|}}|}|~}||}|}|~}|}|}|~|||||||||}|}||}|}||}|}||}}|}|}|||~|}||}|}~|}}|||}~||}}|}~||||||||||||||||||||}|||||||}|||||||}|||||||}||||||}||||||||||||}|||||||}|||||||}|||||||}|||||||}||||||}||||||||||||||||||||}|||||||}|||||||}|||||||}||||||}~|||||}}||||||||||||}|||||||}|||||||}|||||||}|||||||{z||~{{{{|}{{z{{}{{{~{{{{~|{{|{~|||{{~|{|{{{~|{|{{{{{{||~{{{{|}{{{{|}{{|~|{{|~|{{||~|||{{~|||{{{~|||{{{{{{{|~{z{{z}{{zz{}{{{~{{{{~|{{{{~|{|{{~|{|{{{~|{|{{{{||||~|||{|~|||{{}||{~|||{~||||{~|||||~||||||~|||||||}||}~|}|~|}}|}|~~|}|~}}}|~}|~}|~}|~|}~}|~|}|~}|~|}|}{{z|{}{{{|}{zz{{|{{{}{{{{||{{|{}|{{{{}|{{{{{}|{{{{{{{{z|{}{{{|}{{z{{|{{{}{{{{}|{{|{}||{{{}|{{{{{}|{{{{{{{{{||}{{{|}{{{{||{{|||{{|}|{{||}||{{{}||{{{{}||{{{{{}}|||}}|}|||}|{||~|}|}}|}|}}|}||}}|}|}}}|}|}|}}|}|}|}}|||}}|}|||}}{||~|}|}}|}|}}|}||}}|}|}}}|}|}|}}|}|}|}}|||}}|}|||}}|||~|}|}}|}|}}|}||}}|}|}}}|}|}|}}|}|}|}}|||}}|}|||~}|}|~|}|}}|}|}}|}||}}|}|}}}|}|}|}}|}|}|}~}}}~~}~}~}}~}~}~}~}~~}~}~~}~}}~~}~}~~~}~}~}~~}~}~}~|||||}|||{|}|||{}|{{|||||}|||||}|||||}||||||}||||||||||||}|||{|}|||{}||{|||||}|||||}|||||}||||||}||||||||||||}|||{|~|||{}|||}||||}|||||}|||||}||||||}|||||||||||~~|||||~||||}~|||}|||~}||||~}||||~}|||||~}||||||}}}|}~~}}}}}~}}}}~~}}}~}}}~}}}|}~}}}}}~}}}}}}~}}}}}}}{{z||}|{{{|}{|{{|}|{|}|{{|{{{||}||{{{}||{|{{}||{|{|{{{{||}|{{{|~{|{{|}|{|}||{|||{||}||{{{}||{|{{}||{|{|{{{{|~~|{{||}{|{{|~|{|}}|{|}{|||~}||{{~}|||{{~}|||{|{{|{}|~|{|~|~{|{||~|{|}|}{|~|{}|~||{|{~||{|{|~||{|{|{}}|}||~~}|}}}}|}|}~~}|}~|}|}~|}|}~|}|}|~|}|}|}~|}|}|}|}||}}}|}|~|~}|}|}}|}|}}}}|}}|}|}}|}|}}}|}|}|}}|}|}|}{{{||}{{{{|~{{{{{|{{{}||{{}||{||||{{{}||{{{{}||{{{{{{{z|~~{{{||}{{{{|~{{|}}|{|}}{|||}||{{~}||{{{~}||{{{{{|{}|}|{|~|}{|{||||{|}|}{|}||{}|}|{|{}||{|{|}||{|{|{}|||}~|}|||~}|}|}~|}|}}|}|~}|}||~}}|}~}|}|}|~}|}|}|}|{{|}||~~}|}}}}|}|}~~}|}~|||}~|}||}~|}||~|}|}||~|}|}|}|}||}}}|}|~|}}|}|}~|}|}}}}|}}|}||}}|}|}}|}|}|}}|}|}|}{{z|~~{{{||}{{{{|~{{|}}|{|}}{|||}}||{{}||{{{~}||{{{{{|z}|}|{|~|}{|{||||{|}{}{|}{|{}|}||{|{}|{|{|}||{|{|{}|||}}|}|||}}|}|}||}|}}|}|}}|}||}}|}|}}}}|}|}}|}|}|}{{{||~|{{{|~{|{{|~|{|}||{|~{|{||~||{{{~|||{{~||{|{|{||{{|}||~~}|}}}}|}|}~~}|}~|||}~|}{|}~|}|}|~|}|}}~|}|}|}|}||}}}|}|~|}}|}|}||}|}}}}|}}|}||}}|}|{}}|}|}}}|}|}|}{{z|~~{{{||}{{{{|~{{|}}|{|}}{|||}}||{{}}||{{{}||{{{{{|z}|}|{|~|}{|{||||{|}{}{|}{|{}|}||{|{}||{|{|}|{|{|{}|||}}|}|||}}|}|}||}|}}|}|}}|}||}}|}|}}}|}|}|}}}|}|}{{{||}|{{{|}{|{{{}|{|}|{{|}|{{||}||{{{}||{|{{}|||{|{{{{||~{{{{|~{{{{|~{{|}||{|~||{||~||{{{~||{{{{~||{{{{|{{{{|}||~~}|}}}}|}|}~~}|}~|||}~|}{|}~|}|}|~|}|}{}~|}|}||}||}}}|}|~|}}|}|}||}|}}}}|}}|}||}}|}|{}}|}|}{}}|}|}|{{{{{{{{|||{{{{{{{{{{||{{{{}|{{{{}|{{{{}|{{{{}|{{{{{{{{{{{{{|||{{{{{{{{{{||{{{{}|{{{{}|{{{{}|{{{{}|{{{{{{{{{{{{{{||{{{{{{{{{{||{{{{}|{{{{}|{{{{}|{{{{}|{{{{{|{{{{{|{{|||{|||{{|||||{|||}||{||}||{||}||{|{}||{|{|}|{|{|}||{}}|}||}|}|}}||}|}}|{||}}|}|{}}|}|}|}|}|}|}{{{{{{{{|{{{{{{{{{{{{|{|{{{||{{{{||{{{{||{{{{||{{{{{{{{{{{{{|||{{z{{{{{{{|{|{{{||{{{{||{{{{||{{{{||{{{{{{{{{{{{{|||{{{{{{{{{{|{|{{{||{{{{||{{{{||{{{{||{{{{{|||{{{{||||}}|||||||||||{||||||{|||||||||||||||||||||||{{{{{|||}}|||||||||||{||||||{|||||||||||||||||||||{|{|{{|{||}}|||||||||||{||||||{|||||||||||||||||||||||||{{||||}}|||||||||}|{|||}||{||}|||||}|||||}|||||||||||{||||}}|||||||||||||||}||{||}|||||}|||||}|||||||{{{{{{|{||{|{|||{{{{|{{||||{|{|||{|{|||{|{|{|{|{|{||{{{{{{|{||{|{|||{{{{|{{||||{|{|||{|{|||{|{|{|{|{|{||{{{{{{|{||{|{|||{{|{||{||||||{|||||{|||||{|{|||{|{||{{{|{{|{||||{|||{{|||{{||||||{|||||{|||||{|{|||{|{|||{|{{||||}}|||||||||||{|||}|||||}|||||}|||||}|||||||||||||||||}}||||}}||||}||||}|||||}|||||}|||||}||||||{{{{{{{{{||{{{{{{{{{|{|{{{{|{{{|{|{{{{{|{{{{{|{{{{{{{{{{{{{{{||{{{{{{{{{|{||{{{||{{|{||{{{{||{{{{||{{{{{{{{{{{{{{|||{{{{{{{{|{|{{{|||{{|{||{{{{||{{{{||{{{{{{|{|{{|{||}}{|{|{{|{|{||{{|{|{{|{}|{|{{}|{|{|}|{|{|{|{{{{{{|{||||{||||{|||||{|||}|{||}||{||}||{|{}||{|{||||{{||{{|{|}||{||||{|||}|||||}||||}||{||}||{|{}||{|{|{{{{{{{{{||{{{{{{{{{{{||{{{{||{{{||{{{{||{{{{||{{{{{{{{{{{{{{|||{{{{{{{{{{|{{{{{||{{{||{{{{||{{{{||{{{{{{|{|{{|{||}}{|{|{{|{|{||{||{||{{|||{|{|}|{|{|}|{|{|{|{{{{{{|{||||{||||{|||||{||||||{||}|{||}||{|{}||{|{||{{{{{{|{||||{||{|{|||||{||||{{{||||{{{|||{{{|||{|{{{|{{{{{|{{{{|}||{{|{|{||{}|{|||}|{{||}||{|}||{{{}||{|{{{{{{{{{{{|||{{{{{{{{{{|{{{{{||{{{{||{{{||{{{{||{{{{{{{{|{{{{{|}}{{{{{{{{{{||{{{{||{{{{||{|{{|{|{{}|{|{{{|{{{{{{|{||||{||||{||||{{||||{|{|||{|{||||{|{|||{|{|{{{{{{{{{||{{{{|{{{{|{||{{|{||{{|{}{{{{{}|{{{}|{{{{{|{{{{{{|{||||{|{{|{|{|||{|{||{{{{||||{{{||||{|||{|{|{|{|{{{{|{{{{|}||{{|{|{||{}|{|||}|{{||}||{{|}||{{}||{|{{{{{|{{{{{|}}{{{{{{{{{{||{{{{||{{{{||{|{{||{|{{|{|{{{|{{{{{{|{||||{||||{||||{{||||{|{|||{|{|||{|{|{||{|{|{{{{{{{{{||{{{{|{{{{|{|{{{|{|{{{|{|{{{{{|{{{{{|{{{{{{{{{{{{{{||{{{{{{{{{{{||{{{{||{{{{}{{{{{}|{{{{}|{{{{|{{{{{{|{||||{|{{|{|{|||{|{||{{{{||||{{{|||{|{|||{{|{|{|{{{{{|{{{{|}||{{|{|{||{}|{|||}|{{||}||{{|}||{{{}||{|{{{|{}{{{{|}|{{{{{||{{{{|{{{{{||{|{{|||{{{|||{{{|||{{{{{{|{}{{{{|}|{{{{{||{{{{|{{{{{|{{|{{|||{{{|||{{{|||{{{{{{{{|{{{{{}{{{{{{||{{{{|{{{{{|{{{{{|||{{{|||{{{|||{{{{||{{}}|||{}|||||}|}|||}}|{||}}||||}}||||}}|||||}|||||||}{|}|}|}|}||}|}|||}|}|}}{|}|}}||}|}}|}||}}|}|}|}|}|}|~}{|{~}~}|}|~}~}~~~}~}~~}|~}~~}~|}~~}~}~~~}~}~}~}~}~}~{{{|{}{{{|}|{{{{{||{{{{|{|{{{||{|{{||{{{{||{{{{||{{{{{{{{|{}{{{|}|{{z{{||{{{{|{|{{{||{|{{||{{{{||{{{{||{{{{{{{{|{}{{{|}|{{{|{||{{|{|{|{|{||{||{||{{{{||{{{{||{{{{{}|}||{||}}||||}||{|||}||||}|||||}|||||}|||||}|||||}||||||||{||}}||||}||{|||}||||}|||||}|||||}|||||}|||||}||||||||{||}}||||}||||||}||||}|||||}|||||}|||||}|||||}|||||||||||}}||||}||||||}||||}|||||}|||||}|||||}|||||}|||||||}{||}}}|}|}||}|}|}}|}|}}||}|}}||}|}}|}||}}|}|}}}|}|}||}|||~~}|}}}}|}|}}~}|}}~}||}}~}||}}~}|}|}~}|}|}~}|}|}|||{|{}|||||}|||||}|}{{{||{||}|||||}|||||}|||||||||||||||{|{}|||||}|||||}|}|{{||{||}|||||}|||||}|||||||||||||||{|{}|||||}|||||}|}||{||{||}|||||}|||||}||||||||||||||}{|{}|}|}|}||}|}}|}}|}}}{|}}}}||}}}}|}|}}}|}|}|}|}|}|||{||~~||||}|||||}|~|||}||||}~||||}~||||}~|||||~||||||}|||}~~|}|}}}}|}}}~~|}}}~}}}}~|}|}}~|}|}}~|}|}|~|}|}|}}{|{|{}{|{||}|{|{|{|||{|{|{{{{|{{||{||{|{{||{|{|||{|{|{{|{|{}{|{||}|{|{|{|||{|{||{{{||{||{||||{{||||{|||||{|{{}{|{}{}{}|}|{}{}{||}{}{}}{{}}}{|}{}}|}{{}}|}{}|}|}{}{||{|{~~||||}|||||{|~||||||{||||||||~||||{~|||||~|||||||}{|{}}}|}|}||}|}}|}}|}}}}{|}}}||}}}}|}|}}}|}|}}}|}|}|||||}~~|||}}}|||}}~~||}}~|}|}}~||}}~||||}~|||||~||||||}|{{{|{}{{{{|}|{{{{{||{{{{||{{{{||{|{|||{{{|||{{{|||{{{{{}{|{}{}{}|}|{}{}{||}{}{}}{{}{}}{|}}}|}{{}}|}{}|}|}{}{||{|{~~||||}|||||{|~||||||{|||||||||||||{~|||||~||||||||{|{}|||||}|||||}|}|||}||{||}|||||}||||}||||||||||||||}{|{}}}|}|}||}|}||}}|}{}}{|}{}|||}{}}}|{}}|}|}}}|}|}|||||}~~|||}}}|||}}~~||}}~|}|}}~|{|}}~|||}~|||||~|||||||||{}{|{}{}{}|}|{}{}{||}{}{}}{{}{}}{|}{}}|}{}}|}{}|}|}{}{||{|{~~||||}|||||{|~||||||{||||||||||||||{|||||~||||||||{|{}|||||}|||||}|}|||}||{||}|||||}|||||}||||||||||||{|{|{}||{||}|{|{|||||{|{||{{|{||{||{||{|{{|||{|||{|{|{|}{|{}}}|}|}||}|}{|}}|}{}}{|}{}|||}{}}{}|{}}||}}}|}|}|||||}~~|||}}}|||}}~~||}}~|}|}}~|{|}}~||||}~||||~||||||||||||{|{~~||||}|||||{|~||||||{||||||||||||||{||||||||||||||{|{}|||||}|||||}|}|||}||{||}|||||}|||||}||||||||||||{|{|{}||{||}|{|{|||||{|{|{{{|{||{||{||{|{{||{|{||||{|{{{{|{}{{{{|}|{{{|{||{{|{||{{|{||{||{||{{{{||{{{{||{{{{|}{|{}}}|}|}||}|}{|}}|}{}}{|}{}|||}{}}{}|{}}|{|}}}|}}|||||}~~|||}}}|||}}~~||}}~|}|}}~|{|}}~||||}~|||{|~|||||||||{}}~}}}}~~}}}}|}}}}}}~~}}}}}}|~}}}}}}}~}}}}}}}~}}}}}}}~}|{}|||~||||||}}||||~~|}|||}|~|}||||}~|}||||}~|}||||}~|||}||||}||||{}||||||}|||||}}||||||}}||||||}}||||||}}||}}|}|||}|||||}||||||}}}|||}|}}}|||||}}}|||||}}}|||||}}|||||||}|||||}}|||||}|||||}||||||||||||||||||||||||||||||||||}|||||}}|||||}|||||}|||||||||||||||||||||||||||{}~||~}~|~}~|}|~}~}~~~}~}~}}~~}~}|~}~~}~~}~}~~|}~}~}~{}}|}}}}}}}}}|}}}}}}}}}}}}}|{}}}}}}}|}}}}}}}|}}}}}}}|}}||||}|||}||||}}|||||}||||||||||||}||||||||||||||||||||||||}|||}||||}}|||||}||||||{|||||}||||||||||||||||||||||||}||||||||}}|||||}||||||{|{|||}||||||||||||||||||||}|}|}}|}}||}|||||||||}|~|||}~~||}|}}}|}|}~}}|}|||~}}|}||}~}}||}|}~}}}|}|}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}~~}}}}}}}}}}}~~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}~}}||~~}||||}}||||~}}||||||}|||}}|~}||||}|~}||||}|~}}||}||||}|||||}||||||}}||||||}|||||}}}|||||}}}|||||}}}}||}||||}|||||}||||||}}||||}|||||||}}}|||||}}}|||||}}}}||}||||}|||||}||||||}}|||||||||||||}}||||||}}||||||}}}||}||||}|||||}||||||}}|||||||||||||}}||||||}}||||||}}}}}}~}}}}~~}}}}|}}}}}}~~}}}}}}|~}}}}}}~}}}}}}}~}}}}}}}~}}}|}||||}||||}}}||||||}}|||}|}}}||||}}}||||}}}}||||}}}}}~}}}}~~}}}}|}}}}}}~}}}}}}||}}}}}}}|}}}}}}|~}}}}}}|~}|}|}||||}|||||}}|||||}|}|||||}|}||||}}}||||}}|}||||}}||}|}||||}|||||}}|||||}|}|||}|}|}||||}||||||}}|}||||}}||}|}||||}|||||}}|||||}|}|||||}|}||||||||||||}|}|||||}|}|}}}~}}}}~~}}}}|}}}}}}~~}}}}}}|~}}}}}|}~}}}}}}~}}}}}}}~}|}|}||||}|||||}}|||||}|||||||}|||||||}|||||}}||||||}}|}||}||||}||||}}}||||||}}|||}||}}||||||}}|||||}}||||||}|}~}}||~~}||||}}||||~}||||||{|||||}}|||||||}||||||}|~|||||||||}|||||}}|||||}|||||||}||||||}}||||||}}|||||}||||||||||}|||||}}|||||}|||||}||||||||}|||||||}||||||}||}|}|}}~}}}}~~}}}}|}}}}}}~~}}}}}}|~}}}}}|}~}}}}|}}~}}}}}}~}|}|}||||}|||||}}|||||}|}|||||}|}|||||}|}||||}}|}|||}}||||}||||}|||||}}|||||}|||||||}|||||||}|||||||}||||||}|}{|}||||}||||}}}||||||}}|||}||}}||||||}}||||||}}|||||}|}~}}||~~}||||}}||||~}||||||{|||||}}|||||||}|||||||}||||||||||}|||||}}|||||}|||||||}{|||||}}||||||}}||||||}||}||{}{|{}{}||{}{|{{}{|{|}|||{||{}}||{{}|}}||}{||}}||{{{|{}{|{}|}||{}|}|{}|}||}~|}|}|{}~|}|{}|}~||}|}|}~{{{|||{{||{||||{{|{{|{|{|{|||{|{||}}|{||{|}}|{{|{|}}|||}||||||||||||||||||||||{|||||||}}||||||}}||||||}}|||}||{{|{{||||{|||{{||||||{|||||{}}|||{{|}}||{|||}}|{||{||{||{|||||{|{{{{|{|{{||{|{||}}|{||{|}}|{{|{|}}|||}||||||||||{|||||||||||{||||||||||||||||||||||||||||}||{{{|{||||{|||{{||||||||||||{|||||{{|||||{||||||{||{||{{|||||||{|{{{{|{|{{||{|{|||||{||{||||{{|{||||{{|{|{{{|{{|||{{{{{{{z{{{{||{{{|{|||{{{{{|||{{{{{|||||||||||{{|{{{{||}||||}||||}}|||||||||||}}||||||}}||||||}}||||||}}|||}|||{}||{|}}||{||||||||}~|||||||~|||||||~|||||||~|||}||||}||||}}|||||||||||}||||||||||||||||||||||||||||}||||}||||}}||||{||||||}||||||||||||||||||||||||||||}||||}||||}}|||||||||||}||||||||||||||||||||||||||||}|||}|||}|}}||}|}{|}|}||||}|}||}}|}||}|}}|}}|}|}}|}|}}|||||||||}}|||||||||||||||||||}~||||||}~||||||}~|||}|||||||||}||||||{|||||||||||||}||||||||||||||||||||}|||||||||||||||||||||||{~||||||~|||||||~|||||||~|||}||||||||||||||||{||||||{||{||||||||||||||||||||||||}||||||||||||||||{||||||{||{{|||||||||||||||||||||||}||||||||||||||||||||||||||||||}}|||||||}|||||||}|||||}|||||||||}|||||||||||||||||||||~||||||}~||||||}~|||}||{|||{||}}|{||||{|||||||||||||||||{|||}|||||||}|||}||{|{|{|{}||{|{|{{|{|{|||||{||{}||{{|||||||{|||||{||{||{{||{|||||{|||{{||||{~|||||||~|||{||~||{||||~|{||{|{{{|{{{|||{{{|{{{{|{{{{||{||{|||{{{{||||{{|{|||||}||{|{|{|||||{|||{{||||||{|||||{}}||||||}|||||||}||||{||{|{|{|{||}||{||||{||||||||||||{|~|||{|}~||||||}~|||}||||||||||||||||{|||||||||||||||||||||||||||||||||{|{||{{||{|}}||||{{{|||||{|||||||||||||{||||{|{||}|||}||{|{|{|{}||{|{|{{|{|{|||||{||{}|||{{||||||{|||||{{|{||{{||{|||||{|{|{{|{||{~|{|{|||~|{||{||~|{|{||~|{||{|||{|||||||||||{{{|||{||||||||}}|||||||}||||||}|{|{|{{|{|{|{|{||}||{||||{||||||||||||{|~|||{||}~|||||}~|||}||{|{|{|{|||{|{|{{|{|{||{||{|||||||{{|{|||||{||||||}||||||||||||||||{||||||{|||||||||||||||||||||||||{{|{|{{{|{{|}}|{||{{{|||||{||||||{|||||{{|||||{|{|||||}||{|{|{|{}||{|{|{{|{|{|||||{||{}|||{{|||||||{||||zz{|z{zz{|z{z{zz}{z{y{zz{z{{z{z{}{{zz{{z{zz{{z{z{z{z{|{z{z{|{z{zz{}z{{{{{{{{|{z{{|}{z{{|{{z{z|{{z{z{zzz{zzzz{{zzzzzz}zzzz{zzzz{{zzz{}{{zz{{zzzz{{zzzzz{{{}{{{{z~{{{{|z~{{{{{|{{{~}{{{~}{{{{~}{{{{~}{{{{{{z|z{|}z|{}{}z|z{~|{}z{|{|{{}z|{}}{|{{}}|}z|}}{|{}zzzzz{zzz{|zzzzzz|zzzz{zzzz{zzzz|{{zzz|{{zzz|{zzzzzzzz{|z{z{|z{z{zz}{z{y{zz{z{{z{z{{z{zz{{{{zz{{z{z{z{zz{|{z{{|{z{zz{}z{{{{{{{{|{z{{|{{z{{|{{z{z|{{z{z{{{{|{{|{{|{|{{||}{{|{z|{{{~}{{{~}{{{{~|{|{{~|{|{|{{zzzzzz{z{}{{{{|{{{{||{{{{||}{{{{{{{{||{{{||{{{{||{{{{||{{{{{{{{{|{{{{||{{{{||}{{{{{{{{||{{{||{{{{||{{{{||{{{{{{{{{|{{{{|~{{{{||}{{{{|{{{~|{{{~|{{{{~|{{{{~|{{{{{{{{{|{{{{||{{{|||~{{|{{{|{||{|{|}{{{{||{{{{||{{{{{|~||||~|~|}|~|~||}~|~|||~||~|~|}~|~||}~|~|~}~|~|~|{|zz|{|{|{|{|{|z{}|{{{{{z{{{z|{||{|z{||{|{|||{|{|{{|{z|{|{|{~{|{|z{}|{{{{|{{~{{|{~|{|{{~|{|{|~|{|{|{{|z{|{|{|{|{|{|z{~|{{{{{{|{{z|{|}{|z{||{|{|||{|{|{{|{{}{|{||~{|{|{{~|{{{{|{|{}{|{~}{|{{~}||{|~}||{|{|{|{{||}{||}{}{|||~}{}{|{{}{||}{}}{|{{}}{}{|}}{}{}{zzz{{{zzz{~{zzzz{}z{zz{|{z{~{{{~|{z{{~|{{zz~|{{{zzzzz{|{{zz{|{{z{z{~{{{z{{{{{{{z{{}z{{{|{{{zz|{{{{{zz{z{|{{z{{}{{z{{{}{{{z{{{{{{{{{{|{{{{}{{{z{}{{{{{z{zz{|{{{z{~|{{{{|~{|{{|||{|||{{|~{{{|~||{{z~||{|{{{|{|{||||{|{}{|{|{|}|{{{|}{||||{||}}{{|}|{|{|}|{|{|{{|{{|{|{|||{|{|||~|{{{{{{|{||{|{}|{|{}|{|{|}|{|{|{zzz{|z{zz{|z{z{zz~zz{y{zz{z{{z{z{}z{z{{{{zz{{{zz{zz{zz{z{z{{}z{z{{{}{z{z{zz{z{{{zz{|z{{z{z{z{}{z{z{z{zz{|{{{z{|{{{{z{}z{{{{z{{{|{z{{}{{zz{}{{{z}|{{{{{{|{{|{|{||~{|{|||~|{{{{|{|{||{|{~|z|{{~||{|~|{|{|{{{{z|{{|||z|{}{|z|z|}|{{z||{|{||z|{}}{{{{}|{||}|{|{|z{{{{|{{{{||{{{{||}{{{{{{{{{|{{{{}|{{{{}{{{{}{{{{{{z{zz{z{z{{}z{z{{{}{z{z{zz{z{{{zz{|z{{z{{z{z{{z{z{z{zzz|{z{z{|{z{{z{}z{{{{z{{{|{z{{}{{zz{}{{z{z}{z{z{{|{{|{|{|||{|{|||}|{{{{z{|{||z|{||{|{{||z|{||||{|{{zz{{{{{z{~{{{{z{~{{{z{|{{{{{{{{~{{{{{~|{{{z~|{{{{{{z{z|{{|||z|{}{|z|z|}|{{z||{|{||z|{}}{z{{}|{|z|}|{|{z{{{{|{{{{||{{{{||}{{{{{{{{{|{{{{}|{{z{}{{{{z}{{{{{{{{|z{{z{{{z{z{{|{{z{z{{z{z{{{{{z{|{{{z{|{{z{{|{{z{z{{{}{{{{{{{{{{{{||{{{{{{{{{{{{{{{{|{{{{{|{{{{{|{{{{{z{{{zzzz{{zzzz{{|{zzzz{zzzzz{{{zzz|{{{zz|{{z{z|{zzzz{{{{z{{{{{z{{{{{|}{{{{|{{{{|{{{{{|}{{{{|}{{{{|}{{{{{{{{{z{|{{|{{|{{{{||{|{{|{|{||{{{{|}}{{{{}}|{{{}}|{|{{{{{{}{{{{|{{{{{{{|z{{{{{{{{{{{{{{{|}{{{{|}|{{{|}{{{{z{z{{zzz{{{zzz{{{|zzzz{zzzzz|z{zzz{{zzzz{|{z{z{|{zzzz{{{|z{{{{{z{z{{|{{z{z{{z{z{|z{{z{{z{{z{{|{z{{{|{z{z{{{{}{{{{{{{{{{{||{{{{{{{{{{|{{{{{|{z{{{||{{{{||{{{{{{||}||}{{{{}{{{{}}{}{|}{}{}}||}{}}|{|{}}|}{{|}|}{}{zzzz{z{{{{{|{||{{{{}{{{{{|{{{{{{}}{{{z{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{{}{{{{{|{{{{{{}}{{{z{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{{}{{{{{|{{{{{{}}{{{{{{{{|{{{{{|}{{{{|}{{{{|}{{{{{{|{{}{{|{||{{|{|{}}|{|{{{|{||{{|{||{|{{||{|{|||{|{|{|{{|}||{|{}}|{|}|}}{|}|{|}||{||}||}|{{||}|{|{|}|{|{|{{{{|{|{{{||{{{{{||{{|{|{{zz{{{|{|{{{{{|{{{{{|{{{{{{{{{{|{|{{{||{{{{{||{{|{|{{z{{{{|{|}{{{{|}{{{{|}{{{{{{{{{|{|{{{||{{{{{||{{|{|{{|{|{{|{||{{{{||{{{{||{{{{{{{{|}{|{{{||{{{{{||{{|{|{{|{{{{|{|{|{{{|{|{{{|{|{{{{|{{{}{|||{||||||{}}||||||||||{{|||||{{||||||{|||||||||{|{|||{|{|||{|{|}}{||||{||||{||||}|{|||}|{|{|}|{|{|{{{{|{{{{{{{{{{{{||{{{{{{{{{{{{{{z}{z{{{}{{{{{}{{{{{{{{{|{{{{{{{{{{{{||{{{{{{{{{{{z{{z|{{{{{|{{{{{|{{{{{{{{|}{{{{{|{{{{{{||{{{{{{{{{{{{{{{{|z{{{{|{{{{{|{{{{{{{{}{{{{{|||{{{{}}{|{{{||{|{|{{{|{{{{|{}|{{{{}|{|{{{{{{|{|{{{||{{{|{||{{|{|{{|{|{{{|{||{{{||{{{{||{{{{{{{{{{{|{|{{{||{{{{{{|{{|{|{{|{|{{{|{||{{{||{{{{||{{{{{z{z{{zz{z{{{z{z{{|{{z{z{{z{z{{z{{z{|{{zz|{{z{z|{{z{zz{{{}{z{z{|{{{z{{|{{{{{{{{{{{{{{{{{{|z{{{|{z{z{|{{{z{{{{|{|{{{|{{{{{{}}{{{{{{{{{{{{{{{{{{{{{{{{{{{|{{{{{z{{{}{|{z{||z{z{{||{z|{|{z|{|{{{|{|{{{{{|}{z{|}{{z{z{{{{|{{{{{|{{{{{{||{{{{{{{{{{{{{{{{|{z{{{|{{{{|{{{{{{{{{{{{}{{{{{{{{{{{{{|{{{{{{{{{{{{{{{{|{{{{{|{{{{|{{{{{z{{{}{zzz{|{{zz{{|{z{{{{z{{{z{{{{{z{|z{{z{|{z{{|{{zz{{{{|{{{{{|{{{{{{}}{{{{{{{{{{{{{{{{{{z{{{{{{{{{{{{{{z{{{|{|{z{||z{z{{|{{z|z|{z|z|{z{|z|{{{{z|{{{z{|{{z{z{{{{}{{{{{{{{{{{{||{{{{{{{{{{{{{{{{{{{{{{}{{{{{}{{{{z{{{|z{{z{|{{{z{{||{{{{{{{{{{{{{{{{|{z{{{|{{z{{|{{{z{{{{{{{{|z{{{{{{{{{{{{|{{{{{{{{{{{{{{{{|{{{{{|{{{{{|{{{{{{{|{{{z{}||{{z{|}z{{{z{|{{{{{|z}{{{|{{|{{|{{{{{|{{{{{{{{||{{{{}||{{{{|}{{{{|{|{{{|{|{}{|{|{{||{|{{{{{|{{{{{z{{zz{{z{}{|z{z{|}z{z{z{|zz{z{|z}{z{|{{|z{|{{{{{|{{{{z{{{{{{{{{}||{{{{|}{{{||{|{{||{}{}{|{}{{|{{}{|{{{|{|{{{{{{}{{{{{}|~{{{{|}z{{{{{~~{{{{~{}{{{~{{|{{~||{{{~||{{{|}|}~}}|}}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}}~|}|}||z{{{|z{z{||{zzz{|}z{zzz{|{z{z{|z{{z{|{{{z{|{{z{{|{{{zz{{{{|{{{{||{{{z{|}z{{{z{|{{{{{{z{{{{|z{{{{|{{z{{|{{{{{{{{{||{{{||{{{{{|}{{{{|{|{{{|{|{{{|{|{z{|{|{{{{{|{{{{{{|{{{{{|{|||{|{||}||{||||{{|||}|{|||}|||{|}||{|{|||{|{{~{}~z{~{~}~{~{~|}{~{~|~~~{~|~~{}~|~~}~|{~~}~{~{~}~{~{zz{z{zz{|}z{|}z|}{}{}{{{{{{{{{{|||{{{|{}|{|{{{{{|{{|{{|{{|{{{{{|{{{{{|{{{{{{{{{{{{{{{|||{{{|{}|{|{{{{{|{{|{{|{{|{{{{{|{{{{{|{{{{{{{{{|{{{{{|||{{{||}|{{{{|{{{{{}{{{{{}{{{{{}{{{{{}{{{{{{{{}|{{{{{}||{{{||}|{{|{|{{|{{|{}|{{|{{|{{|{|{{{|{|{{{{{{{||{{{{|||{{{||}|{{||||{||{}|{||{}|{{|{}||{{{|||{{{||{{~}}|||~~~|||~|}|||~|}~|~|}~{{~|}~||{|}~||||}~|||||{{{{|{}{{{||{{{{||}{{{||}||{{{{z{||}|{{{|}|{{{{}|{{{{{{{{{|{}{{{||{{{{||}{{{||}||{{{{{{||}|{{{|}|{{{{}|{{{{{{{{}|{}{{{}||{{{||}{{{||}||{|{|{}||}|{{||}|{|{{}|{|{{{{{{{|{}{{{||{{{{||}{{{||}||{||}{{||}}|{{|}}||{{}|||{{{{{{{~|}{{{|~~{{{||}|{|||}|~|||}{{||}~{{{|}~|{{{}~|{{{{|}|}~|}}|}}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}}~|}|}||{{{{||{{{{||{{{{{|}{{{{|{|{{{|{|{{{{{{z{|{|{{{{{|{{{{{{{{}||{{{{}||{{{{|}{{{{|{|{{{|{|{}{{|{{||{|{|{{{|{|{{{{{{{||{{{{||{{{{{|}{{{||{|{{||{}{{{|}|z{|{}||{{{|||{{{{{{{~|{{{{|~~{{{{|}{{{{|{|~{{|{|{{{|{{{{|{~{{{{{~{{{{{{{{{||}{{{|||{{{||}|{{||}||{||}}{{||}}{{|}}{|{{}|{|{{{|||}~|}|||}~~|||||}|||||}~~|||}~|}||}~|||}~||||}~||||||{{{{}|{{{{{}||{{{{|}z{{{{{|{{{{{|{}{{{|{{|{|{|{{{|{|{{{{{{{|{{{{{||{{{{{|}z{{||{|{{||{}{{{|{}|z{{}||{{{|||{{{{{{{~{{{{{|~~{{{{|}{{{{{{|~{{{{|{{{{{|{{{{{{{{{{~{{{{{{{{{|{}{{{||{{{{||}|{{||}||{||}|{{||}|{{{|}|{{{}|{{{{{{{{{||{{{{|||{{{{|}{{{||{|{{||{}{{{|{}{{{|{}{{{{|{|{{{|||}~|}|||}~~|||||}|||||}~~|||}~|}||}~|{||}~|||}~|||||{{{{{{{|{{{{{||{{{{{|}z{{||{|{{||{}{{{|{}|z{{{}||{{{||{z{{{{{~{{{{{|~~{{{{|}{{{{{{|~{{{{|{{{{{|{{{{{|{{{{{{{{{{{{{{|z}{{{||{{{{||}|{{||}||{||}|z{||}|{{{|}|{{{{}|{{{{{{{{||{{{{||{{{{{|}{{{{|{|{{{|{|{{{|{|{{{|{|{{{{{|{{{{{{{{|{{{{{|||{{{{|}{{{||{|{{||{}{{{|{}{{{{{}{{{{{|{|{{|||}~|}|||}~~|||||}|||||}~~|||}~|}||}~|{||}~||||}~||||{{{{{|||}}||}|}|||~~}|||||}|||||~~}||||}}~}||||}}~}||||}}~}|{|{}|{{{}|{{||}|{{||}|{{|{{|{||{|}|}|||{|||}|{{{{||}{{{{{}|{{z}|{{||}|{{{|}|{{{{{|{{{{{}||{{{z||||{{{{{|||{{{{|}|{{{||{||}||{|{{}|{|||{|{|||{}}}{|{||}}}{|{{|}}}{|||||}|}{}|||||}|||||}|||||||}||||||}}||||||}}||||||}}|||||||||||{|||||{|||}|{|||||{|||||||||||||||||||||||||||}||}|}}}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}||}|~}|}}|}|~}|{{|}}|{{{|{||}||{|{{||{|||{|{|||{|}}{|{||}}}{|{{|}}|{|||||}||}{}||||}{||||}{|||||{}|||||{}}||||||}}||||||}}|||||||||||||||||{|||}|{|||||{|||||||||||||||||||||||||{{{{||{{{||{||||{z{|}|{z{{{|{z{{{|{{{{{{||||{{{{{|||{{{||{}|~{{}|~{~}|~{~{}|~{~{~~~|~{~}|~~|~{|~}~~{{~{~}~{{{|||}|}{{}|}||}|}|}|}|}|}|||}|}|}|}}}|}||}}}}|{}|}}}{|||||}||}{}|||||}||||}{||||||}||||||}}||||||}}||||||}}|||||||||||||||||||||}|{|||||{||||||}|||||{|}|||||||}||{{{{||{{{||{{||||{{|}|{z{{{|{z{{{||{{{{{|{||{{{{{|||{{{{{{|{{{z|{{{{{|{{{|}{{{{{{|{{{{{||}{{{{{{|}{{{{{{|}{{}|}|}||}|{||{{{||{{z{|~}||||}}~||}~~~|~}||}|~}~}~}}~}~||~}}~}||}~}}~|}|}~}|}}|}}}}}|}}}}}}}}}}}|}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}{}}}}}}}}}}}{}}}}}}}||}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}{}}}}}}}}}}}}}}}}}}|}|}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}{}}}}}}}}}}}{}}}}}}|{|{|}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}{}}}}}}}}}}}{}}}}}}|{|{|{}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}|}}}}~~}}}}}|}}}}}}~~}}}}}}~}}}}}}}~}}}}}}}~}}||||}||}|}|||~~}|||||}|||||~|}||||||}||||}|~}||||||~}|||{|}||}{}|||||}|||||}|||||||}||||||}|||||}}}|||||}}}|||{|}||}{}|||||}|||||}|||||||}||||}{}{|||||}}||||||}}|||{|}||}{}|||||}|||||}|||||||}||||||}{{||||}}||||||}}|||{|}||}{}|||||}|||||}|||||||}|||||{{{{{||||}|||||||}||}|||}}||}|}|||~~}|||||}|||||~~}||||}|~}||||}~}||||}}~}|||||}||}|}|||||}|||||}|||||||}||||}|}}|||||}}|||||}}}|||||}||||}|||~~}|||||}|||||~||||||||||||||}||||||||~||||||}||||}|||||}|||||}||||||||||||||}|||||{}}|||||}}||||||}||||}|||||}|||||}||||||||||||}||||||||{|{||||||||||||}||||}|||||}|||||}||||||||||||||}|||||||}{{||||}||||||||}}||}|}|||~~}|||||}|||||~~}||||}|~}|||||}~}|||}}~}|||||}||||}|||||}|||||}||||||||||||||}|||||||}|||||}}||||{|}||}{}|||||}|||||}|||||||}||||}||}|||||||}||||||}|{||{}|{{{}|{{~~}|{{{|}|{{{{~|{{{{{|{}{{{{|}|}{{{{{||{{{|{|||{{{||{{||||{{{|}|{{|{{|{||{{||}{|{{|{}}{{{{{{}{{{{{{}|{{{}|{{||}|{{{|}|{{{{{|{{{{{}{|{{{{||||{{{{{|{|{{{{z|{{{z{|{{{{|{{{{{|{{{{zz{{{z{|{~|z{z{{{~|z{{{{{~|z|{{{{{|{{{{{|{{z{|{{{||{{{{|{|{{|{||{~|{|{{{{~|{{{{|{~{{zzzz{{{{z{{{{z{{{zzz{z{{zzzy{zzzz{{{|zzz{{z||zz{zz{||zz{{{|{{{z{{{{{{{{{{z{z{{{{zz{z{z{{{||z{z{{|||z{{{z{||z{zz{{{{{{{{|{{{{|z{z}z|{{{{z{{z{z||||{z{{{{||{z{{{{||{z|{}z|{|z}|{{z{|{{z|||{{z|z{|z|z||{||z|z{{{||z|{z|{||z||{}||{|{}|{{{{|{{{{|||{{{{{{|{{{||{||{{{{||||{{{{||||||{}||{{{}|{{{z|{{{{|{|{{{{z{|{{{|||||{{{{}|||{{{{||||{{{{{{|{{{{|{{{{|{{{||{{{{|{|{{|{|||~|{|{{{}~|{{{{|}~|{{{{{{|{{{{{|{{{{|{{z}z|{{{{z{{{{{||||{{{{{|||{{{{z{||{z|{}{|{{|z}|{{{|{{{|||{{z|{{|z|{||{||{|{{{{||{|{{|{||z||{}||{{|{}|{{{|{{{{|||{{{{{{|{{{||{||{{{{||||{{{{||||{{{{{{{{{{|{{{{{{{z{{|{{z{{{{z{{{{{||{{z{{{||{{{{{{||{||{}|||{|{}||{{{|{{{}||{{{{{{|{{{|}~||{{|{|~||{{{{|~||z|{}z|{{|z}|{|{{||{|||{{{|z||z|z|||~|z|z{||~|z|{{|{~|z||{}||{{|{}|{{{{|{{{|||{{{{{{|{{{||~||{{{{|~||{{{{|~||{{{{{|{{{{||{{z{{{{{{|{{z{{{{z{{{||~|{{z{{{~|{{{{{{~|{zz{{{|{{{z{|{{{{{{{{{{{{{z{{{{z{z||~|{z{{{|~|{z{{z{~|z||||{{|{{{|z{zz|}|}}|||||}}|||}}|}||}}|}|}|||}|}|}}||}|||}}||}|||}}|||||}|||||{}|||{}|||{|}}||{|{|||{||}~|||{|||~||||{||~|||||}|||||{}||||}||||{}}|{|{|{|||||}||||||||||||||||||||||}|||||{}|||{}|||{|}}|{{|{{|{|||}||||{||||||||{||||||||}|||||{}|||{}|||{|}}|{{|{{|{|{|}||||{||||||||{|||||{||}{|{{||}|{{|{|{{||}}{{|||{|||||||||||{{|||||{|||||{}||}}}|{{|}}||{||||{||}}|{|||{|||||||||||{||~|||{|||~||||{}|||{|{}||{|{||{|||||{||{{|||{||||||{|{|||||{||||||{|{}{|{{|{}|{{{{|{{{|||{{{|{{|{|{||{~||{{{|~|{|{{|{~|{{|{}{|{{|{}|{{{{|{{{||{{{{|{{|{|{|||{|{{{{|||{|{{|{||{{|{}{|{{|{}|{{{{|{{{||{{{{|{{|{|{||{{|{z{{|||{|{{|{||{z|{}{|{||{}|{|{{|{|{|||{|{|{||{|{||{||{|{|{||{||{|{||z{|{|{}{||{|{}|||{||||{|||||{|{||{|{||{||{|{|{~|{|{{||~|{||{}||{{|{}|{{{{|{{{{}}|{{{{{{|{{{|||||{{{{|||{{{{||||||{}||{{|{}|{{{{|{{{{|||{{{{{{|{{{|||||{{{{|{|{{{{||||z{{{z|{{{z||{{z{|{{z{{|{{z{{{{z{{{|{~|{{z{{{~|{{{{{~|zz{z{{{{{{z|{{{{{{{{{{{|{{{{{{{z{{{{|||{{{{{{||{{{{{||z||{}||{{|{}|{{{{|{{{{|||{{{{{{|{{{|||||{{{{||||{{{||||{{{{{{{{|{{{{||{{{{|{{{|||{{{|{|{{|{||{||{|{{{|~|{{{{|~|{||{}||{{|{}|{{{{|{{{||||{{|{{|||{|||||||{{{|||||{{||||{{{{{|{{{{{|{{{{|{{{{}}{{{{{{{{{{{|{||{{{{{|||{{{{{{|{||{}||{{|{}|{{{{|{{{{|||{{{{z{|{{{||{||{{{{||||{{{{|{|z{{{z|{{{z{|{{z{|{{zz{|{{z{{z{z{{{|{~|{{z{{{~|z{{z{{~|{{|{{|{|{|{||{|{{|zy|{{z{z{{z{{~|{{z{|{||{{|{{{||{{{z{{{{z{{{~{{{{|{{{z{|{{{z{{z|}~{{{{{{|~{{{{|{{~{zy{{zz{{zz{{z{{{zz{{zxzzyzzzzzyy{}{{{z{{{{{{{{z{z{{{{{{|{{z|{{{|{z{{{|z{z{{z{zz{z{{}{{{z{{{{{{{{{{{{{{{{z{z{z{{{{|{{{{|{{y{z|{zzz{z{{}}{{z{{{|}{{{{|z{}{{{|z{{{z{{{|{{{{{{{{z{{{{{{z{z{||{{{{{{{}{{{{{{{}{{{{|{{{|{{{|z{{{||zy{z|{{zz{z{{~|{{z{{{}{{{{{|{{{{{{{{z{{{zz{{|{{{{|{{y{y|{{zz{{z{}}{{{{{{|}{{{{|{{}{{{|{{{{{{{{|{{{{{{{{z{z{{{{z{{{||{{{{{{{}{{{{{{{}{{{{|{{{{|{{||{{z{|{{{z{{{{z{{{{|{{{{{{{{{{{{{{{{{{{{{{{{}{{{}{|{}{{}z{}{{{{y{{{{|~~{{{{}{}~{{}{{{}~{{{{|{{}z|{}{~{}{|}{{}{|{{zz{z{|~~{{z{}{}~{{}{|{}~{{{|z{{{{z{{{~{{{{{{{z{z{{{{z{z|~~{{{{{{{~{{{{{{{~{{{{|{{{{|{{{~|{{{|{{{z{{{{z{{{|~~{{{{{{{~{{{{{{{~{{{{z{{{zz{{{~{{{{{z{z{{{{z{z{z|~~{{{{{{{~{{{{{{{~{{{{{{z{{{z{|}||{{}||{}|||{}|}|||||}|||}|}{~}|}|{}|}}|}}|}|}}|{|||{||||||{||||{{||||{|{{||{||~}{|{|||}}{||{{|}}{{{{||||{|||}~|||}{|}{|}{||}}|{|}~|{|||}|~|{|}{||~{{{{|{||{|||{||||{{|{{|{{{{{{{{|}}{{{||{|}{{|{{{|}{{{{|{||{|||{||||{{|{{|{{{{{{{{|}}{{{||{|}{{|{{{|}{{~|~{{|{~{|{||{|{~~{{|{~{{{{~{~}}{~{{|{~}{~|{~{~}{}|{||||{|||{{~|||{|}|||{|{|||{{{|}|{{||||~|{{{||{~|{{||{{{{|{{{||{{{||{{{{|{{{{{{{{~}{{{{{|}{{{{|{{}{{{|{{{{{{{{{~|{{{|{{{{{|{{{{{{{|}~{{{{{|~{{{{|{{~{{{|{{{{{{{{{||{{{|{{z{{|{{{{{{{{}{{{{{{|}{{{{|{{}{{{z{z{|{{{|{||{|{||{{|{|{{z{{z{{}}{{z|{|}{{|{|{|}{{z|z{{{{z{{||{{|||{|{|||{{||{{z|}|{z{{||}{z{||{{}{{|{{|{{{{{{{{{~|{|{{|{{|{{{{{{{{{||}{{{{{{~{{{{{{{~{{{{|{{{{|{{{||{{{{|{{{{{{{{{{{{{}|{{{{{{{{{{{{{{}{{{{|{{{z|{{z|{{{z{|{{{z{{{{z{z{{~|{{z{{{{{{{z{{{{{{{{z{{{zz{{{~{{{{{{{{{{{{{{zz{z|}~{{{{{{{~{{{{{{~{{{|{{{|{{{|{||{|{{|{{|{{{{{{{{{{}|{{{{|{|}{{{{{|}{{{{|{{{{|{{{||{{{||{{{{|{{{{{{{{}|{{{{{{||{{{|{{|{{{{{{{{{{|{{{|{~|{|{||{{|{|{{{{{{{|||{{{{|{|~{{|{||~{{{||{{{{|{{{|{{{{{|{{{{{{{{{{{{{}|{{{{{{{}{{{{{{}{{{{{{{{{{{{{||{{{{{{{{{{{{{{{{{{}}{{{{{{{|{{{{{{{{{{{|{{{z|{{z|{{{z{|z{{z{z{zz{z{{~{{{z{{{{{{{{z{{{{{{{z{{zz{}}zz{}|{|{y|{{{yy{{zz|~|z{{}{}{z{}{{{}{zzyy~|yz~{{|z~z{z{yyzz|zyzz{zy~|}zz~zz||z~{z|z{|zzzz{{{y{z{{yyzzzzzyzyzzzyyyyz|}|zz{{{{{z{zzzz{{zzzz|~zy|{{~z|{z{zzy{zz{z{zzzz}|~zz||zz~z|{{|z{~z{{{{{{z{}}{zz}|{|z{|{{{zyy{zz|~|z{{}{}{z{}{{{}{zzzzz~{z{{{~z{{{z{~y{z|zzyy{zz~}~zz~{{|~z~{z|z{~|zz{z~{z~{{{z~{|{{y~{{z{zy|zzz~}~|z~|{{~|~{{|z{~zz{{y~|z~|}|z~|{{|yy|z|{yzz{zy~~}z{~|{}|z~|z|{}|z{z{z|~{|}|~z|}|{|zy|{z{z{z{zz}~~z{|}{|~z|}{|z|~zz{z|~~{{{{~z{{{{{~y{y|z|yz{z|~}~zz~{{|~z~{z|{{~zzzz{{{{z{{{~{z{{zzzz{zzzzzyzz|||zz{{{{{z{z{zz{{|yzz{~~{z~{{~~{|{zzzz{zzzz|yzz~~~|y~|{z~|~{{zzz~z{z{z~~zz~}}z~}|{}{~}{z{zy{{zz~~~z{~}{}~z~}{|z}~zz{{z~~{z~}}~z}{{}~{}z|{zyz{zz~~~z{~}{}~z~}{|{}~zz{z|~~{{~z{~~{{{zzzz{zz|zzzz|~~~zz~{{|~z~z{z{{~zz{{z~~{z~|}~z{|{|z{|z{{z{z{zz~~~z{~|{}~z~|{|{}~|{{{{|zzz|{|{|~~||~}}~|~}|}|~~||{}}|{||~}~|{~}}}~|~}|{}}~||{}|~~{{~}}~{~}|{}~~}|}}|||{|~~~||~}|}~|~}|}{}~|}{||~~{{~}}~{~}||}~~}{}|||}{|~~~|}~}|}~|~}{}|}~|{|{|~~||~}}~|~}}||~~|}{{|}}||~}~|{~}}}~|~}}{|}~|{{{|~~{{~}}~{~}|||~~||{{|||{|~}~|{~}|}~|~}|{|}~|{z{{|{{z|}|{~|}|{|{{|{||{{|{z}~||{|}{|{||}{|{|{z~z|{~~{z~}~~~~}|{~~~|{~~z{{~{z}~{~~}{~~z~}{~{~~|{{{~{~~{{~~}~~~~{{|~~~{~~{{{~{{~}{~~~{}~{~~{~{}~z{{{|{|{{{|}|~{|{{|z{|{|{|{{|z||~}{{|{}|z{|{|{}|zz{{||~{{|{{~~|{{{{z{{{|{|{{{z|}|~z||{|~z|{{|{{~z{zzz~~zz~}|~z~}|{|~~|{|{zz{{zz|}~z{}{|~z~}{|z|~|zzy{~|{z~{{|~~{|{{|{{||z{||{zz}|}|z~||||~{||{{|{}zz{{||~{{|{{~~|{{|{{|{{z{||{zz|}|}zz|||~z|{{||{~zz{{z~~{z~|}~z~|z{|~~|z{{z{z{zz~}|z{~|{}z~|{|{}~zz{{z{{{z{|}{z{|z{|z{|z{{zzz{zz|~|z{{|{}{{|z{{}{|zzzz~~{z~{{~z~{|z{~~{{|zyz|{zy}}~|z||{|~|{{|z{~z{zz{z{{z{}|{~{}|{|{z|{z{zz{{zz|}|z{{}{|{zz{{z|{zz{{z~|{z~|}|z~|{{|z{|z|{z{z{zz|}}z{~|{}|z~||{}|z|{z{z{z|~{z|}|~z|}|{|{{|{|{z{z{zz}}|z{|}{|~z|}{||~zz{{{{{{z{|}z~{|{{|z{|{{{zzz{zz|}|z{{|{}{z{|{{{{zz{{|~~{{~{{~z~{z{{~~{zz{|{zzz|~}}zz~|{||z~{{|{{yzzzz{zzz}{{zy{{|z{yz{zz{yyyzzz}}zyz}|{{z}{z|{{zzzzzzzzzz{zzyy{}zzyyz{zzzyyyzzz{}zzz{{zzz{{zzzzz{zz{{{{yz|{{{y|{z{{yyyzzz{yyyz{|}{z{|{{{{|{zz{{{yyzzz{{zzz{~{zzz~{|zyy{{{{{z{zzz{~}|z{~|{zz~{{|{zzzz{z{|z{{|z|z{{}{z|y{{{z{{yy{{z|~zzz||{|z||z{z|zzyzzzzzzz}zyzz{{zzzyzz{zzz{zzzz|{zzz}zzzz}z{zzzzzzzzzzzzz}{zzy{{|yzyz{zz{yyzzzz}}zzz}|{zz}{z|{zzyzyzzzzzzz{{zzz{}|zzyy|zz{zzzzzz|~zzz{}{zz{{{|{zz{z{z{{{{{z{{{z||z{{zz{zzz{zy{z{}}{z{}{{{{}{zz{{{zy{zzzzz{z~zzz~}zzzyzzzzzzzz{zz~~|zz~{zzz~{zzzzzzzzz{zzzzz~zzz~{zzzyz{{zzz{zzzz~~|zz~{zzz~{{zzzzzyzzzz}zzz~{}y~}|z}yz}zz{zyzzzz~~|zz~}{}z~}z|{}zzz{z{{}z{{~z}z{}{z}z{}{z{{yz{{z~~|zz~}{}z~}z{z}z{zzz{{{{zz~{{{z|z{{z{{{zz{{zzz{~~|z{~{{{{~{zz{{{zzzzyz{{|{z{z{{|{{{}{|{{|}{{|z{|zz{{z{{{}}|z{}|{|{}|{{{|{{|{{{||{{{~}|{{~}{}|z}|{|}}|{{|~}|||~|}|{~||{}|{{z{{}{|{{{}{|{{|}{{|{{}{{{{z{{{}~|z{}}{|{}}{{{|{{z|{}|}{|{}|}{{|}}||{||{|}|||}|}~{z|}}|}{}}|}|}{|{{|{|||{|}|||{|}{||{||||{||{{|}}}{|}||||}||{|||zz{zzz{z{z~{{zz~||zzyz{{z{{{z{z~}|zz~|{{z~{z|{{zzz{z{z{z{z}{{zz{}|z{yz{{z{{{z{z}~zzz}|{{z}{z|{{z{z{z|z{{{z~{{{z~}|z{{z}{z{{{z{{z}|zz~|{|{~|z|{{{}z{~{~{|{~{}{|z{|~~{|z{~{{~{{z~~{}}{{}~{|{}~{~{|z{z{z{{|{{{}{|{{|||{|z{|{z{{{z{{{|~{{}|{|{}|z|{|{zyzzzzzzzz{zzzz{}zzzzz{zzzzyzzzz|~zz{{zzz|{{zzzzzy{zzz{z{z}z{zz{}zz{zz{zzzzzz{zz|}zzz{z{z}{{zz{zzz{zz{zz{z~zzzz~|zzzz|{{|zz|z{z|}{|z|~{zz~z|zzzz{|{{z{{{{{z{}|{{z|{||{z|{{{{||{zz{|}{{{}||{}{{||{{zz{z{{|z{{}{|z{{||z|z{|{z{{zz{{z}}zzz}|{|}|{|{|zzz{zzz{z{z}z{zzz|zz{zz{zzzyzz{zy}}zzz|{z{z{zzz{zzyzzz{zzzz}{zzz{}z{zz{{{{z{{zzz{|}zz{}{{zz}{z{zzzz{z{{|z{{~{|z{~||z|z{|zz{zzz{{z|||zz~|z|z~||{|z{{{zz{zzz{z{z|{{zz|}|zzyz{zz{zzz{zz|}zzz||{{z|{{|{zzz{z{{|z{{}z|z{{|{z|y{|{z{{{z{{z|}zzz}|{|z}|{{zz{zzz{{{{zz}{{{y|{|{{zz{zz{{zyzz{}}{y{}|{{{}{z|{{{zzz{zzzz{{zzzzz{{{{zzzzzzzzzzzzzzz|{zzz{zzz{z{z{zzzzzzzzzzzzzzzzzzzzz|{zzzy{{zz{yzzzzz{{zzz{zzzzz{zzzzzzzzz{zzzzyzzzzzzzy{zzyzyz{zzyyzzzzz{{zzz{{zzzz{{zzzz{zz{z{{z{zy{{{z{zy|z{{zxy{{z{{yyz{{|{z{{{{z{z{{{z{z{zzzz{zzzzzyz{zzzzz~zzzzyz{zzzz{zzzz~{{zz~{zzzz~{z{zzzyz{zzz{zzz{zz{zzz{y~{zzzz{{zz{z{zzzz~{{zz~{zz{z~z{zzz{zz{{{{z{z{{{{z{z|{z{{zyz{{z{{zzz{{|{z{{{{z{z{{{z{z{zzz{z{zzzz{{{zzzz{{zzzzzz{zzzy{zzzzz{zzz{{zzzz{{z{zzz{zzz{zzz{{zzzzz{{{{zzzzzzzzzzzzzzz|zzzz{zzz{z{z{zzzzzzzz{zzzzzzzzzzzz|{zyzy{{zz{yzzzzz{{zzz{{zzzz{{zzzz{zzz{{{{z{z{{{z{zz~z{{zzz}{z{{{zz{{~{{{{~{z{z{~{z{z{yz{z{z{zzzz{{{zzz{y{{zzzyz|zz{zzzzzz|{zzz{}zz{z{{{zzzzzzzz{zzzzzzzzzzzz~zzzzzzzzzyzzzzzz~{{zz~zzzzz~zzzzzzzz{z{zzzzz{{{zzz{~zzzzzz{zzzy{zzzz~{{zz~{zzzz~{z{zzz{zzz{zzzz{{zzzz{{~{zzzzzzzzzzzzzzz~{{zz~{zz{z~{{zzzzzz{z{zzz{z{{zzz{{~{zzzz{{zz{zzzzzz~}{zz~{z{zz~{zzzz{zzz{{{{z{z{{{{z{{|z{{{{z{{z{{yzz{{~}{{{~|z{z{~{z{z{zzzzzzzzz{{{{{{{{{{z{{{{{{z{{||z{{z{{{z{z{zz{{|{{{{{{{{{{{{z{z{{{{{{{{{{{{{{{{{{{||z{{z{{{{{{{z{{{|{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|~{{{z{{{{{{{{{{{~{{{{~{{{{{~{{{{{{{{{|{{{z{{{|{{{{{||{{{{{{|{{{{{{{{||{{{{{{{{{{{{{z{|{{|{|||||{|{||||{||{|||||||{|||{||||{||||||{|||{|||zzzzz{zzzzz{z{zzzz{{{zzzz{{z{{z{zz{{{zzz{{zzzz{{{{zzzzzzz{zzzzz{z{zzz{{~{zzzzz{zz{z{zzz~z{zz~{{zzz~{z{zzzzz{z{zzzzz{{{{zzz{{{{zzzz{{z{z{zz{{{zzz{{{zzz{{z{zz{{{{{{{{{{{{{{{{{{|~{{{{{{}{{{{{{{{{{{{{~{{{{{~{{{{{{{{z{|{|{{{{{|{|{{{||{|{{{{||{|{{z{|{|||{||{{{{||{|{{z{zzz{zzzz{zzzzzz{z~{zzzzzzzzzzzzzzz~z{z~zzz{z~z{zzzz{z{z{zzzz{{{zzzz{{{{zzzzzzzzzzzzzzz|{zz{{zz{z{{{zzzz{z{z{zzzz{{{{zz{{{|{zz{{{{zzzz{zzzz|{zzz{zz{z{{{{zzz{{zz{zzzz{{z{zzz{{~{zzz{{|z{zz{z{z{|{{z{~zz{z~{{{zz{{z{z{z{zz|z{{z{z|z{{|{z|z{|{z{{||{{z{|z{z{|{|{z|{{z|z{{zz{z{{z{{z{{{z{{||{{{z{{{{z{{zzz{{|{z{{{{z{{{{{{z{zzz{z{zzzzz{{zzzzz{{zzzzzzzzzzyzzzzzz{zzz{{zzzz{zzzzzzzzz{zzzzz{z{zzz{y|zzzz{{{zzzz{zzzz{{zzz{{zzzz{z{zzzzz{z{zzzzz{{zzzz{{{zzzzzz{zzzzzzzzz{{zzz{{zzzz{zzzz{zzz{{{{z{z{{{{z{z|~{{{zzz{{z{{{zz{{|{{{{~{z{z{~{{z{zzzz{z{z{zzzz{{{{{zz{{|{{zzzz{zz{z{zzzz|{zzz|{zz{z|{{{z{{zz{{{{z{{{{{{z{{||{{{zzz{{z{{zzz{{|{z{{{{z{{{{{{{z{z{{z{zz{{{{zzz{zz{z{z{z{z{z{zz{z{{{zzz{{|{z{{{{{zzzz{{z{zz{zzz|zz{z{{zzz{z|{zz{z{zz{z|{zz{z||{{{z|{{zzzz{zzzzzz{zzzzzy{zzzzzz{zzzzzzzyzzzz{{zzzz|zz{zz{{zzzz{z{z{zz{{{{zzz{{zzzzz{{{z{z{zzzz{{{{zz{{|zz{{{{{zzz{{{{z{z{{z{{|z{{{z{|{{{z|{{|{{|{{{||{zz{{|{{{{{|{|z{{yzzz{zzzzz{zzzzzz{zzzzz{{{zzz{zzzzzz{zzzzz|{{zzz|{zzzz{z{zzzz{{z{zzz{zzzzzz{z{zzzy{zzzz{{zzzz{{zz{z{{zzzzz{z{{z{z{{{{zzz{zz{z{z{z{z{z{zz{z{{zzzz{{{{z{{{{{zzzz{{{z{zz{zz|zz{z{{zzz{z|{zz{z{zz{z|{zz{z|{{{{z|{{zzz{{{{{z{z{{{{|z{{{{{|{{{{|{{|{{|{{{||{{{{{|}{{{{|}|z{zz{zz{z{zz{{{zzz{{zzzzz{{{z{z{{zzz{{{zzz{z|}z{{z{{zzzz{zzzzzzz{zzzzzzzyzzzz{{zzzyzzyzzzz{{zzzzzzz{zzzzzzzz{z{zzzzz{{z{zz{zzzzzz{z{zzzz{zzzz{{{zzz{{zz{z{{zzzzz{z{{z{zz{{{{zz{zz{z{z{z{z{z{zz{z{{{{zz{{{{z{{{{{zzz{{|{z{zz{{{z|zz{{{zzz{{|{zz{z{{z{z|{{z{z||{{{z|{{{z{z{zz{z{{z{{{{z{z{z{z{z{{{z{z{{z{z{{{|zz{{}{z{{{}{z{zzzzz{zzz{z{{{{|{{{{|{{{{{|{{{{{{{{{{{{{{{zzzzz{{{|{{{{{|{{{{{|{{{{{{{{{|{{{{{|{{{{{{{{{{{{{{{{z{z{{{{|{{{{{||{{{{|{{{{{{{{{|{{{{{|{{{{{{{{{{{{{{{{{{zz{{{|{{{{{||{{{{|{{{{{{{{{|{{{{{|{{{{{{{{{{{{{{{{{{{{{{{||{{{{||{{{{||{{{{{{|}||||{{}||{|{{|{|{|{|||{|{|{{{||{||{||{|{{||{|{|{{{z{{{{{{{{{|z{{{z{zz{{{{{z{{{{zzzz{zz{{||{{{{|{{z{{{{z{{{{{{{{{|z{{{z{zz{{{{{z{{{{z{zz{{z{{||{{{{|{{z{{{{{{{{{{{{{{|{{{{{{z{{{{{{{{{{{z{{{|z{{{||{{{{||{{{{{{z{{{{{{{{{|z{{{{{{z{{{{{z{{{{z{{{{{z{{|{|{{{|{|{{{{{{{}{{{{{|{|{{{{{{{{{{{{{{{{{{{{{{|{{{{||{{{{||{{{{{z{z{|{{{z{{||{{z{{{{{{z{{{{{{{{{{{{|{{{{||{z{{||{{{zz{z{zzzzz{{zzzzz{zz{zzz{{{z{zzzyzzzz{{zzz|zz{zz{{zzzz{z{zzzzz{{zzzzz{{z{zzz{{{z{zzzzzzzz{zzzz|z{{zz|{zzzz{z{{z{zz{{{zzzz{{z{zzz{{{z{z{zzzz{zzzzz{{|z{{z{{zzz{{{{{z{z{{{{{z{{{{{{z{{{{{z{z{{{{z{{{{{z{{{{{{{{{{{{z{{{{{{z{{|{|{z{{{{{{{{{|{{{{{{z{{{|{z{{{||{{{||{{{zz{z{{{{{zzz{{{|{zz{{{{{zz{{|{{{{{z{{{||z{{{||{{z||{{zzzzz{zzzzzz{zzzzzz{zzzzzz{{zzzzzyzzzz{zzzzz|{{zz|zzzzz{zz{z{zz{{{zzzz{{zzzzz{z{z{z{zzzz{zzzzz{z{|z{{{zzzzz{z{{z{zz{{{{zzz{{zzz{z{{{z{z{{z{z{{{{zz{{{{z{{{zzzzz{z{{{{zz{{{|zzz{{{zzzz{{{z{{{{zz{{|{{z{{|{{{{{|{zzz{{{{{z{{{{{{{z{{{{z{z{{{{{z{z{{z{z{{z{{z{{|{z{{{|{z{{z{z{z{{z{{z{{{{z{z{zz{z{z{{{z{z{{z{z{{zzzz{{|{z{{{|{z{{{||{|{{|||{{{{|{|{{{{{|}z{{{|{|{{{|{||{{|{||{||{||{{{{{||{|{{||{}{{{|{||{{{{|}{{{{|}||{{|}||{{|}||{||}||{{{{|{{zzz{||z{{z{|{|{z{z{|}z{z{z{|zz{z{||{{z{||{|z{||{{{{|{zzzz{||z{{z{|{|~z{z{|}z{z{z{~~z{z{~|{{z{~|{|z{~|{{{{|{|{{{{|}{{{{{|}||{{}{|}{{}{|{|z{{|{}|}{{{}|{|{{||{{{{||~|||{|~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~||||}~|||{{|{{{|{{{{{|{{{z{{{|{{{z{|}z{{{z{|{{{{{zz{{{{|zz{{{|{{z{{{{||{|{{||{{{z{{|{{{{z|}z{{{|z|{{{|{|z{{|{|{z{|{|{{{{{{{||{|{{|{}{{{z{||{{{{z}{{{{|}z|{{|}{z{{|}{{{{|}{{{{{{|{~{{{z{|{{{z{|}|~z{{{|}z{{{{{~~z{{{~{}{{{~z{|{{~{{{{}|}~|}||}|~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}|zzzz{zzzzz{z{zzzz{zzzzzz}zzzzz{|zzzz{{{zzz{|zzzz{|{zzz{{{|{{{{{{|{{{{{{|{{{z{|}z{{{z{|{{{{{|{{{{{|zz{{{|{{z{{{{||{|{{{||{{{{{|{{{{z|}z{{{|{|{{{|{|{{{|{|{z{|{|{{{{{{{||{|{{{|{}{{{{||{{{{z}{{{{|}||{{|}|{{{|}|{{{|}|{{{{{|{|{{{{{|}{{|{{|||{|}{|}||}||{|{z|||}|{{{|}|{|{{|||{{~|{~|{{{~|~{{~{~|}~{~}~|}{~}~|~~~{~|~~{}{{~~}~|{{~}~{~zzzz{zzzz{z{|}z|}z}{}{{{{|{{{{{{{{{{{{{||{{{{{}{{{{{{{{{{{|{{{{{|{{{{{|{{{{{{{{|{{|{{{{{{|{{{||{{|{{}|{{|{|{|{|{|{{{|{||{{{{||{|{{|{||{{{{||{{{{{|{||{{{{|}{{{{{|{{{{{}|{{{{}|{|{{}|{{{{|{||{{{{||{{{{{|}||{{{{|}{{{{{|{{{{{|{}{{{|{{|{{|{{{{{{{||||{{{}|{{{{||||{{}||}|{}||||{||{}|{||{}|{{|{||{{{{{{~}~|{{{~}}{{{|~~~{{}~|}|{}~|}~|~|}~{{~|}~{{{|}~{{{{{{{|{{|{{{|{}{{{{{|{{{{{|}{{{{|}||zz{|z{{|}|{{{|}|{{{{{|{|{{|{{||{}{{{|{|{{{{{|}{{{{|}||{z{||{{|}||{||}||{{{{|{|{{|{{||{}{{{|}||{{{{|}{{{{|}||{{{|z}{|}|{{||}|{{{{{{{|{{|{{{}{}{{{|{|{{{}{|}{{}{|}||{{|}{{{|}}|{{|}|{{{{{{{~|{|{{{~|}{{{{{~~{{{{|}|{{{|}|~{{|}{{{|}~{{{|}~{{{{}||~|}||}|~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}|{|{||{|{{|||{{{{|{|{{{{{|}z{{{|{|{{{|{||{z{||{||{||{{{{|{||{|{{|||{{{{|}||{{{{|}z{{{|{|{{{|{|z}{{|z{||{|{{{{{{{||{|{{{}|{{{{|{|{{{}{|}z{}{|{|{{{|{}{{{|}|z{|{|{{{{{{{~|{|{{{~|{{{{{{~~{{{{|}{{{{|{|~{{|{|z{{|{{{{|{~{{{{{{{||{|{{{}|}{{{|{||{{}{|}{{}{|}||{{|}}{{{|}}{{|}|{{{{|||~||||||~|}||||}~~|||||}|||||}~~|||}~|}||}~|||}~|||||{{|{|{{{{{||{{{{{|}||{{{{|}z{{{{{|{{{{{|z}{{{|{{|{|{{{{{{{|{{{{{{}{{{{{|{|{{{}{|}z{}{|{|{{{|{}{{{{{}|z{{|{z{{{{{~|{{{{{~{{{{{{{~~{{{{|}{{{{{{|~{{{{|z{{{{|{{{{{{{{{{{{|{{|{{{|{}{{{{{|{{{{{|}z{{{|}||{{|}|{{{|}|{{{|}|{{{{{{||{|{{{}|{{{{|{||{{}{|}{{}{|{|{{{|{}{{{|{}{{{|{|{{{{||~|{||{|~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{||}~||{{{{z{{{{||~}||{|~}||}|~}|||~~}|||||}|||||~~}|||{}}~}|{|||}~}|{{{|||{|{|{}{|{{{}{|{{||{|{}{{}|{}{{{|{|{{{{|}{{{{|{|}{{{{zz{|}|z{z|}|{{z|}|{{||}|{{{z}|{{{z{|{{{z{}||{z{z|{||{z{{zzz|{{zzz|{{{{z|{{{{{|{{{{{z}|{{{z{|{{{z{{||{z{z{{||{z{{zzz{}{z{z|}{{{z|}{{{~|}{{{{{}|{{{z~~{{{z{}|~{z{z{{|~{z{{{z{z}{{z{}{{{{{}{|{{|}{|{}{{}|{}{{{|{|{{{||}{{{{{{||{{{{{||||{||||{{{}{|{{{{||{{{{{{}|{{{{||}|{{{{|}}|{{{{|}}|{{|{|{||~}|||~}|{}|~}|{|~~}|{|{|}|{|{|~~}|{|{}}~}|{|||}~}|{{{||||}|{|}}|{{{}}|{{||}|{}{{}|{}{{{|{|{{{}|}{{{{|{|}{{{{zzz{~}zz{z}z{{z{}z{z~{}z{z{{}{{z{z~~{z{z{}{~{z{zz{{~{z{z{z{z}|{{z{}{{{{}{|{{|}{|{}z{{|{}z{{|{|z{z||}{{z{{{{}{{z{{||||{{||||{{}{|{z{{||{z{{{{}{{{{{|{}|{{{{{}}|{{{{|}}|{{{{|{|{{|{||{{{||{{z{{|{{z{{{}|z{{{{|z|{{{{||{|{{{{||{|{|}|{|}~}||}|~}|}}~}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}||}|~}|}{{{{{~}|{{{~}|{{{}|{{~|}|{{{{}|{{{{~~{{{{{}|~{{{{|{|~{{{{{z{{}}|{{{}}|{{{}|{{|}}|{}{|}|{}{{{|{|{{{}|}{{{{|{{|{{{{{||||}|||||}|{}{|{{{||}|{{{{}|{{{{||}|{{{}{}}|{{|{|}}|{{{{|{|}||{||}|{{||{{{||}|{{{{}|{{{{{|{|{{{}||{|{{|{||{|{{zz{{{}|z{{{}|{{z{{{{||}|{{{{}|{{{{{|{{{z{}{|{z{z|{z|{z{{{|||~}|{||~}|~{{~}|~{~}|~}~{}|~}~{~~~|~{{}|~~{{{|~{~{{{{{{{{|||{{{}||{{{}||{{|}|{}{|}|{}{{||{|{{{|}}{{{{|{|}{{{{{||||{{||||{{{}{|{{{{||{{{{{}|{{{{||}|{{{{|}}|{{{{|}}|{{{{|{|{{|{||{{{{||{{{{{|{{{{{}|z{{{{|{|{{{{|}{|{{{{|}{|{z{z{z{{{zz{{{{{{z{{{{z{|{{{{{}{{{{z{|{z{{z{|{{zz{{{{{{zzzzz{z{{{zz{{{{z{z{{{z{{{{zz{{}{z{zz{|{zzzz{|}{zzz{z{}{zz}{}{}|{}|{z{{{{z{{{zz~|||~~|{|~|~|{{}|~|||}~~~||}||}|~}|}~}}~}|||~}}~|{{}~}|~|||||}|||||}||{||}||{|}}||{}||}||}||}||||{|}}|||||||}{||{{|||}}|{||}}|||{}}||{}}}||{{{}||{{{}|{{{{}|}|{{{|||}|{{{{|||}||{||}||{|{}||{}}}||{}{}}|{}{}|}{}}{||}|}{{|{}}|{{{{|||}||{||}||{|{}||{{}}||{{{{}|{{{{||{{{{||}|{{{|{|}|{{{{|||}||{||}||{|{}||{{}}||{{{{}|{{{{||{{{{||}|{{{|{|}|{{}}}}|}~}}}}|~}}}}|~}}}}~~}}}}}|}}}}}}~~}}}}}}~}}}}}}}~}}}{{|||~|||||~||{}|~||{{~~||{{{|}|{{{{~|}|{{{||}|{{|||~}|{{{{||||{|{|}|{{}{}||{{{|||{}{{}|{}{{||}|{{{||}|{{{{|}}|{{{{|||}||{||}|{}{|}|{{||}|{{{{}|{{{{||}|{{{}{}{{{|{|}}|{{{{|||{||{||{|{}{|{|{{{|{|{{{z}|{{{{||}|{{{{|}{z{|{|}}|{{{{|||{{|{||{{{}{|{{{{{|{{{{{z}|{{{{||}|{{{{||{z{{{||}|{|{|||||~}||||~}||}|~}|||~~}|||||}|||||~~}||||}|~}||||}~}||{{|||||{|||}|{{}|}||{{||||{}|{}|{}|{||}||{{|{}}|{{{{}}|{{{|||~{{|||~{{{{|~{{{{~~{{{{{{}|{{{{~|{|{{{{{|{|{{{{{{|{{{{|{|{{|{|}{{{{|}{|{{{|{|{}{{}|{}{{{|{|{{{{|}{|{{{{{}|{{{{|{|}||{||}|{{||}|{{||}|{{{{}|{{{{{|{|{{{}{|{|{{|{{|{{{{{|{|{||{||{|{{||{|{{{|{|{{{{}|{{{{{|{|{{{{|}{|{{|{|}{zzzzz{{zzz{{z{zy{{zzz{{zzz{y{zzzzyzzzzzz|{{zzz{z{{{zyzzyz{|{{{{z{{{z{{z{{z{z{{z{z{z{z{z{z{{z{z{{{{{z{{z{|{{zyyyzz{yzyz{zyyyz{zzyz{zzzyzzzzzyyzzzyyzz{zyyy{zz{zyyzzzz{zzzz{z{{z{zz{zz{z{zzzz{zzzzzzzzzz{{{{zzzz{{{{zzyzzzz{zzzz|z{zzz|z{zz|z{zzy|z{zzy{{zzz{|z{zzz{z{z{zyzzzzz|zzz|zz{zz|zzz{|zzzz{{zzzzz{{zzzzz{{|zzz{{z{|zzzzzz{{{zz{{{{z{{{{zz{{{zz{{{{zzzzzzzzz{{{{zzz{{{{{zzzzz{z|{{{{z{{{{{z{{{{z{{{{{{z{{{{{{{{{{z{{{{{z{{{{|{{zyzzzz{{zzz|z{zyz|zzzz|zzzzy|zzzzy{zyzz{|z{zzz{z{{{zyzzzzz|{zzz|z{zz|zzz{|zzzz{{zzzzz{{zzzzz{{|zzz{{z{|zz{{{|{{{{{|{{{{{{{z{{{{z{z{{{z{z{zz{{{z{{{{{{{{z{{{{{{z{{{{{{{{{{z{{{{z{z{{z{z{y{{zzzz{{{zz{{{{{{z{z{{z{{zz{z|{{{{z|{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|{{{{{{{{|{{{zzzz{{{zzz{|{{z{|{{z{|{{z{z|z{zzz{{zzz{|{{zzz{{{{{zzzzzzz|{zzz|{z{zz|zz{|zzzz{{zzzzz{{zzzzz{{|zzz{{{{|zz{{{|{{{{{|{{z{{{{{{{{{z{z{{{z{z{zz{{{z{{{{{{{{z{{{{{zzzz{{{zz{{{{{z{{{{z{{{zz{z{{zzzzzzzzz{{{{zzz{{{{{zz{{{{{{|{{{{|z{{{{|z{{|z{z{{|{{z{z{{{{z{}{{{{{|{|{{{{zzzz{|{zzz|{{{z{|{{z{|{zz{{{{zzz{{zzzz{|{|zzz{|{{|zz{{{|{{{{{|{{z{{{{{z{{{{{z{{{z{z{zz{{{z{|{{{{{{z{{{{{zzzz{{{zz{{{{{z{{{{zz{{{zzz{{zzzzzzzzz{|{{zzz{{{{{zzyzzzzz{zzzz{z{zyz{zzyzzzzzz{zzzzyzzyzzz|{{zzz{z{z{zy|{{{{{{zzz{zzzz||||}||||||||||}||||}||||||||||||{|||||}}||||||}}|||{{{{{||{{{||||{{|||{}|||{||{||{|{{{|{{|}}|{{{||{||{{{{{{{||{{{||||{{||||}||||z{{|{|z{z{{{{|}||{{{|||||{{{{{{{||{{{||||{{|||{}|||{{{{|{{{{z{{{{|}||{{z||{||{{{{{{{||{{{||||{{|||{}|||{{{{|{{{{z{{{z|}||{{{||{||{{z{z|z{{{z|{{z{{{{{z|{{{z|z{{{z|{{{{{z{z|z|{z{{z|{|{z}{|{}{|{|{}||{{}{||{||||{|||||{|||{{|||{||||{|{||}||{{{{|{{|{{|{|{{{{{|{{{{|{{z{{|{{z{{{{{{z{{{{{{|{|{|{{z{z|{{{{z|{{{{{{{{{{{{{{{{{{{{{{{{{{{{z{{{{z{{{{||{zz{z|z{{{z|{{z{{{{{z{{{{z{z{z{z{z{{{{z{z{|{{z{{{{{|{zz{z|z{{{z|{{z{{{{{z{{{{z{z{z{z{z{{{{z{z{{{{zz{{{{|{zzzzzz{{zz{{{z{z{{{zz{{{z{{{{{z{{z{{zzzz|{||zzz{z{|zz{{|{|||||{|||||{{||||{||||{|||||{|{{|{|{||{{|{|{|{}|{|{{{|{{{{{|{{z{{{{{{{{{{{{z{{{{{z{{{{{{z{|{{{{{{{{{{{{z{{{{{{{{{{z{{{{{z{{{{z{zz{{{{zzzz{{zz{{{{{{z{z{{{{zzzz{{{zz{{{{{z{{{{zz{{{{z{{{{{zzzzzzzz{z{{zzz{{{{{zzzzzz{{zz{{{z{z{{{zzzz{z{z{z{z{zzyzzzzzz|{{zzz{z{{{zzyzzzzz{zzz{zzzz{{{zz{{{zzz{zzzzz{{zyz{{z{zz{{{zzzyzyzzzzzyzz{zzyz{zzyz{zzzzy{zzyzzzzyzz{zzzyz{zzzzyyyyyyyyz{yyyz{zyyy{zzzz{zzyyzxzzyyzyzyyyz{zyyy{zzzzyyzzzzzzzzzyz{zz{z{zz{y{zz{zzzzzzzzz{zzz{zzzzz{z{zzzzzyzzzz{zzz{zzzz{{{yz{{{{zy{zzzzz{{zyz{{z{zz{{{zzzyyyzyzzzzzz{zzyz{yzzz{zzzyy{zzyzzzzyy{{zzzyz{zzzzyzzzzzzz{zzz{zz{z{zzzz{z{{zy{zzzzz{{zzz{zz{zz{z{zzzyzyzzzzzzzz{zzzz{{{yz{{zzzz{zzzzzzzzyz{{zzzz{{z{zyzyzzzzzzzz{zz{zz{z{zz{z{z{{zz{zzzzz{{zzz{zz{zz{z{zzzyyzyzzzzzzz{zzyz{zzzz{yzzyy{zzyzzzzyz{{zzzyz{zzzzyyzyzyz{{yzz{{zz{zzz{{z{zyzzyzyzz{{yzyz{{{yz{zzz{{yzzzzzzzzzzzz{z{z{zzyz{zz{zy{zzzzzz{zzz{zzzzz{z{zzzyzzzzzz{z{z{{{zz{{z{z{{z{{zz{zzz{z{{zzz{zz{z{{z{{zzyzyzzzzzzzzz{zzz{{{zz{{zzzy{zzzzzzzzy{{{zzzz{{zzzyyzzzzz{{zzz{z{zz{zz{{z{zzzzyzyzz{{yzzz{{{zz{zzz{{yzzzzzzzzzz{z{zz{z{z{z{zz{zz{zzz{zy{zzz{zzzzz{z{zzzzzzzzzzz{z{z{zz{z{zzz{z{{zz{zzz{y{{zz{}zz{zz{{{zzzzzzzzzzzzzzz{zz{z{zz{{zz{zz{zzzzzz{zz{}zzzzz{{{zzzyzyzzz{{yzz{z{zz{z{{{{{zzzzzzzzz{{yzyz{{{yz{z{z{{yzzzzzzzzzz{z{zz{z{zz{z{z{zz{zzz{zy{zzz{zzzzz{z{zzzyzyzzzzzyzzzzzzzzz{{yzz{zyyzzyzzzzyzyz{{zyzzz{z{zyz{z{zzzzzzz{z{z{z{{{zz{}{{{{}{||{}|{|{{|{{zz{{z{{}|{{z{}{||{{{{{{|{|{{{{||{|{||{|{||{{|{||{{{{{{{{|}{{{{|||}{{{z{{{{||{{{||{{z{|{{|{|{{{{{z{{z{|{{{{||}{{{|{|{|{zzz{z{z|{{zz|{{{{|{{{{|{{{{{z{{{zzzz{{|||{{z|{{{{{zzzzz{z|{{zz|{{z{|{{{{|{{{{{z{{{zzzz{z|||{{z|{{{{{z{z{z{zz{{z{{{{{{{{{{{z{{|{zz{z|{{{{{z{{z{{zz{{|{{{|{{{{{|||{{||{|{||{{{||{{{{||{{{{|||{{{{{|{{|||{{|{zzzzzzz{zz{{{{z{{{{{{z{{{{zz{z{z{{{{zzz{{zzz{{|{{zzzzzzzz{zz{{{{z{{{{{{z{{zzzz{zzz{{{zzz{z{zzz{{z{{zzzzzzzz{zz{{{{z{{{zz{z{{zzzz{zzz{{{zzzzzzzzz{{z{{zzzyyzzzz{zzz{zzzz{z{zz{z{{zz{zzyzz{{zzz{{z{z{z{{zzyzyzyzz{zzz{{{zz{{z{{z{{zz{z{zz{z{{zzy|{|{zzzzz{{y{{zzz{zz{{z{{{{{z{{{{{{{{{zz{{{zz{{{{z{z|{{{zz{{{{{zzzzzzzzzzz{z{zz{z{z{{z{zz{zz{zzz{{z{zz{{zzzzz{{{zzzzzzzzzzzzzz{zz{z{z{{z{zz{yz{zzzzzz{zzz{zzzzz{z{zzyzyzzzzzyzzzzzzzzz{{zzz{yzzzzzyzzzzyzyz{{zyzzz{zzzzzzz{zyz{z|zyzz|z{zxzzzzzyyzyz{zyzzzz|{zzz|{zzzyyzzzzzz{zzz|zzzz{zzyzzzzzzy{zzyzyy{zzz{|z{zzzz|yyzyyyyyxyy{zyzyz{yzyzzyyyyy{zzyyyyyyxyzzyz{zyzzyxxxyyyxyyyyyyxxyzyyxyzyyyyyyyyyyyyyxyy{zxxyzyzyyyyyzzyyzyyz{yzyzz{zyzzyz{zyzyyzzyyyyyzzyyyzzzz{yyzzzzzzz{y|zyzz|z{zyyzzzzyzyzz{zyzzzz|{zzz|{zzzyy{zzzzz{zzz|zzzz{zzyzzzzzyy{yzyzyy{zzz{|z{zzzz|yy{zzz{z{{zzzyzzz{{zyzzzzzzy{zz{zyy{zzz{zz{z{zzzyyzzyzyzzyz{|zzzz{z{yzzzzzyy{zzyzyyyzzzz|zz{zzz|yyyyzyzyyzy|{yzy|z{zyzzzz{zyzyyzzyzyyy|zzyy|zzz{yy{zzz{zz{{zzyzzz{{zyyzzzzyz{zz{zyy{zzz{zz{z{zzzyyzyyyyzzzyzzyzyz{zzyzzyyzzy{yzyzyyyyz{{zzzzzyzzyyyyzyzyyzzy|yzy|z{yyzzzy{yzzyyzyyzyyy|{zyy|zyzzyyzzzz{zzz{z{zzzz{{zyzzzzzyy{zz{zyzzzzz{zzz{{zzzyyy{yzyzzz{zzz{yzz{{zyzzzz{zy{yzzzyy{yzz{zz{zzzz{yyzzyzyzzzyzz|zzz{zzyzzzzzzy{yzyzzyzzz{{|zzzzzz|yyyyyyyzzyyz{zyyyzzzyzzzyzzyyzzyz|zyyz{zzzy{zzzzyyyyyyyyyyyy|{yyy|zzyz{zzyyzyyzyz|zyyy|z{yy|zzz{yy{yzyzyy{zyzzyzyz{{yz{zy{zz{zzzyyy{yy{}zy{z{zzzyyzzzz{zzz{zzzyzzz{{zyzzzzzz{zz{zzyzzz{}zzzz{z{zyyyzyzyzzyyz{|zyzzz{zyzzzzzyzzzyz|zyzz{z|zy{zzz|yyzzzz{zzz{zzzyzzzz{zyzzz{zzzyz{zyyzzzz{zzzz{zzzyzzzzzzzzz{{zz|{||{{|||{zz|{{|z|{||{z|{{z|||{z|}|||{|{|{|{z{z{z{z{{{z||z{z|}|{zz}|z|{z|{{{z{{zz|}|{{|}{||zz{z{{{{z{{{||{{z||}zz{|z{|z{|z{{{z{z{|}|z{||{}|zz{|z{{||{{|||{z{|{{|z|{|{z|z{|z{|||||||}|{|{|{|zz{z{z{zz{{z||{zz|{{{z{{zzzzz{z{{zzzzz|||z{|{{{|zy{yzyzyy{zy|zyzy|{{zyz{zz{zy{zzzy|z{y|{zy{||{zzyy{zzy{yz{zy{{z{zz{{{yz|{z{zz{z|zy|z{zy{zz{{{{|{y{z{z{z{zz{{z{{z{z{{|zz{{z{{z{{z{{z|z{zz{{z{{|{{{zyzzzz{zzz{zz|zzzz{{zyzzzz{zz{zz{z|zzzzz{|zz{{||yyzzzzzzzzzzz|zzzz{{zyzzzz{zy{zzzz|zyzzzz|zzz{z|yy{yzyzyy{zy{{yzyz{zzyzzzzzzz{zzyzyy{yyz{zy{zzz{yzzzyzy{zzyz|{zzz|{y{z{zzzzz{{zzyz|zyz{|{|zz|zz{z|{zz{zzzz{zzz{|zzz{z{{z{zz{{{zzzzzz|zz{z|{|{z{{z|zyzzzz{zzz{z{{yzzzz{zyzzzz{zzzzz{zzzzzz{{zzz{{zzyyzzzz{zzz{z{{yzzzz{zyzzzzzyzzyz{zyyzzzz{zzz{{zzzyyzz{zzyz{z{zzzz|z{yyz{zy{yy{yz{zyzz{z{{zyzz{z{zyyyyyyyyyzzzyyyyzyzyyyzzyyyyyzyzyyyzyyzzzyyzzyzyyyyyyyzyyyyyzxxyyyyzyyyyyyxyyyyyyyyzyyy{yyyzzyzyyyxyyyyzyzyyyz{yyyyzz{yyzzzz{yzzyzzzzyyzzz{yyyzzz{zyyyzzzzzz{z{zzzz|z{zzy{zz{yzyyz{zyzz{z{{zyzz{z{zyyzyzy{zzzzz{yyzzzzyxzzzyzyyzyzzzyyzyzzz{yzzzzz{yyyyyzyyyzz{yyyyzy{yyzzzz{yzzyyzyyyyzyz{zyyzzz{zyyyzz{zzz{z{zyzzzz{yyz{zz{yy{zz{zyyz{zz{zyzz{z{zyxyyyyzzyzyzz{yzyz|z{yy{zzz{yzzyzzzzzyzz{{zyy{zz{zyyyzz{zzzz{{zyzzzz{zzy{zz{yzzyz{zyyz{zz{zyzz{z{zyyyyzyyzzzyzzzyzzzyzzzzyzyyyzyzyz{yyyzzzzyyzzzzzyyyyzzyzyzzz{zyz|z{yyzzzy{yzzyyzyzzyzy{{zyyzzy{zyyyzz{zzzz{z{zzzzz{zyz{zy{yz{yz{zyzz{zz{zyzz{z{zyyyyyyzyzyyzz{yyyzz{yyzzzz{yzzyzzzzyzzzz{zyyzzy{zyyzyzyz{zzyzz{yyzzzzyzzyyyzyzyzyzyyyyzz{{yzzzzz{yyyyyyyyyyzzzyyyyzzyyzzzzzyzyyyzyyyzyyz{zyyzzzzyyyyyzyyzzzyzyzzyz|zzzz{yzyyyyyzyz{zyyz{{zyyzzzzzyyyyyzyzyyzz{zyyyzz{yz{zy{yzzzyzyzyzzyz}zyyz{z{zyyyzz{zzzz{z{zyzzzz{zz{zz{zz{yz{zyyz{zz}zyzz{z{zyyzyzyz{zzyzz{zyzzzzyzzyzyyzyyzyz{yyyz{{{yzzzzz{zyyzyzzz{zzzzz{z{zz{z{{zz{|z{{z{{zz{zz{zzzzzz{z|||zz{{{{{|z{z|{z{|{{|{{{z{|{{{z|{z{{z|{{z{||z{z}|||z|{{{{z{{zz{z{z{{z|{zz{|z|{zz}{z|{z|{z{zz{{z{}|zz{}{|{z{z{z{z{zz{{}{z{z||}zz{|{{|z{|zz{{z{{{|}{zz||{}{{z{zz{{|{z{|{|zz{||{|z|{z{{{z{{z{|{{{|||}{{|{{{|yyyyzzyzzzzz{zzyz|z{zzzzzz{yzzzzzz{zyy{zzyyzz{{zyzyzzzyyzzzz{zzyz|z{zzz{zz{yzzzzzz{zzz{{zyyz|{{yz{zzzzz{zzzz{{z{zzz{{zz|zz{{z{{zzz{z{zz{zzzzzz|{|y{z{z{zzzz{z{zz{z{{{zz{{|z{zz{yz{z{y{{zz{yz{|{{zyzzzz{z{zz{z{{zzzzz{zzz{zz{yz{yz{z{yz{zz{{zz{{|{yyyyyyyzyyzzzyyyyzzzyyzzzzzyyzyyzzyyzyyz{zyzzzzzyyyyyyyzyyzzzzyyyzzzzyzzzzzzz{zyzzzyzyyz{zyyzzzzzyzyzyzzzzyzzzzyz|zzzzzzyzzzzz{zyz{zzyz{{|zz|zzz{{zyzyzzz{zzzz{{zyz{z{zz{zzz{zzzzzzz{zyzz|{{zz{zz{yyyzz{zzzz{z{zyzzzz{zzz{zz{zz{yz{zyyz{zz{zyzz{z{yyyyyy{yyyzzy{yyzzzy{yzzyzy{yyzyyzzzyyzzz{zyzzzy{zzzyyyyzzzyyzzzyyzzyzyyyzzyyzyzzyzyyzzyyzzzyyzzzzyzyyyyyyzyyyyyyzyxyyyyzyyyyyyyyyyyyyyyyyyyzyyyyyzzyyzzyzyyzzyyzzzzzyzzzzzzzzyzzzyzyzyzzzzyzzzzzyzzzzzzyzyyyyyyy{yzyyzy{yyzzzy{yyzyzz{yyzyyzzyyyzzz{yyzzzy{yyyzyyzzyzz{zzzyyzzzzzyzzzzzzzzyyzz{zzzz{zzyz{zzzzyzzyzyzyzyzyzzyzyzzzzyz{zzyzyzzyyzyzzzzyzzzzyz{zzzzzyyyyyy{zyzzy{yyzzzy{yzzyzy{yyzyyzzzyyzzz{zyzzzz{zzzyyzyyzzyzzzzzyzzzzzzzzyzzzyzyzyzzzzyzzzzzyzzzzzzzyyyzyyyy{yzyzz{yyzzzz{yy{zzz{zzzyzzzzzyzzz{yyz{zz{yzyzyzzzzzzz{zzzyzzzzzzzzyzzzyyzzzz{zyzz{z{zz{zzzzzzzzyzyzzzzyzzzzzzzzyzzyzyzyzzzzzyzyzzyzzz{zzzzzzzzzzyzyzyzzzzyzzzyzzzzyz{zzyzyzzyyzyzzzzyzzzzyz{zzzzzyzyyyy{zzyzzz{yzzzz{yzzzzy{yyzyzzzzzyzzz{zyzzzz{zzzzyzzzzzzz{{zzzzzzzzzzzyzzzyzzzzz{zzzz{zzzz{zzzzzyzyzyzyz{zzyzzz{zyzzz{zyzyzz{yyzzyzzzyyzzz{zzzzzz{zzyzyyyyzzzyyzzzzyzzzyyyzzyzzzyyyzyzzzyyzzzzyzzzzzzzzzyzyzzzzyzzyzzzzzzzzyzyzyzzzzzyzyzzyzzz{zzzzzzzzzzzzyzyzzzzyzzzzyzzzzz{zzyzzzzzyzyzzzzyzzzzyz{zzzzzyzyzyz{zzyzzz{zyzzzz{zzyzz{zz{zyzzzzyzzz}zzzz{{{zzzzyzzz{zzz{{z{zzzzzz{yzyzzzzyzzzz{yzzz{z}zz{zz{{zyyyzzyzzz{y{zzzzzz{{zz{{z{{zzz{z{{{{z{zzzz{zzzzzz{{{{{z{{{{{{{z{z{zz{{{z{{z{{z{z{z{{{{z{zzzz{{{zzzz{{{{{z{{{{{{{{z{zzz{{z{{{{{{zzzz{{{{{{z{zzz{z{zz{z{{}{{z{|{{{{{{|{{zz{{|{{{z{{{|z{z{{{|z{z{{z|{z{z{z{{{|{z{{{{{{{z{z{{{|{{z{{{|{z{{{{|{||{{{|{{|{{{{z{{{||{{{||{|{yzyzzzy{zzzzzz{zzzzzz{y{zzzz{zzzzzzzzzyzzzzyz{zz{yzzzzzzy{zzzzzz{zzzzzz{z{{zzz{zzzzzzzzzzzzzzyz{z{{zzzzzzzz{zzzzzz{zzzzzz{z{{zzz{zz{zzzzzzzzz{zzz{{z{zz{{{{z{{z{{{{z{z{{z{z{z|{z{z{zz{{z{{{{z{{{z{{{{z{z{zz{z{z{{z{z{{{{zz{z|{{z{{{|z{zz{{z{{zzz{{z{{{{|{{zyyzyyyyzyzyyzzzyyzzyzzyyzzyzyzzzyzyzzzyyzzzzzzzzyyzyzyzyzzzzyzzyzzyzzzyzzzzyzzzzyzzyzzzyyzzz{zzzzzzzzzzyzyzzzzyzzzzzzzzzzzzyzyzzzzz{zyzzzzyzzz{zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz{{zzzz{zzzzzzzzzzzz{{zz{zzz{{zzyzyzy{zyzzzz{zzzzzz{z{{{zz{z{zyzzzzzzzz|{zyz{zzzzyzyyzz{zyz{{z{zyzzzz{zzzyzz{zyzyzz{yyzz{{{zz{zzz{{zzyzyzzz{zyzzzzz{zy{zzzz{{yzzzz{{zyzz{zyzz{{zzzz{{zzz{yyzzyyy{zzzzzzy{zzzzyzz{zzzyzz{yyyyyz{yyyzzz{zyzzzzy{zzyyyyyzzzzzzzzzzzyyzyzzzzyzyzzzyzyzyzzyyyzzzyyyzzzzyzz{yyyyyzz{zyyyzzz{yyyyzzz{yyyzzzy{yyyzzyyyyy{zyyyy{{yz{zzzzzzz{zzzz{zz{z{{zzzz{zzzzzz{{{zzz{zzzz{z{{zz{z{zz{z{z{zzzzz{{zz{{zz{zz{z{zz{zzz{zzz{zzz{{zzz{{{zzz{{|{zzzyy{{yyyyyy{{zzyzzz{{yzzyzz{{yzyzz{y{yzyzzyyyzz{{yyzz{{y{zzz{zzzzzz{{z{zyzz{{{zzyzzzzzzy{z{zzz{zzzz{{zzzz{{zzzzz{zzyzyzz{zyzzzzy{zy{zzzy{{yzzzz{{zyzz{zyzz{{zzzz{{zzz{zyyzyyyz{yzzzzz{zyzzzzy{yzzzzz{yzyzyz{yyyzzz{zyzzzzz{{{zzzzzzz{{zz{zz{{{{zzzz{{zzzzz{{{zzz{zzzz{z{{zz{z{{z{z{z{zzzz{z{{z{{{z{zz{{{{z{zz{{{zz{zz{{{{zz{{{zzz{{|{{zzyzzz{zzyzzzz{zzzzzz{zzzzzz{zzzzzz{{zyzzzyyzzz{zzzzz{zzzz{z{zzyzzz{{zzzzzz{yzzzzz{zyzzzzy{zyzzzyyzzz{zzzzz{{zzz{z{zzzzzz{{{z{zzz{{{zzzz{zzzzz{z{zzz{zzzz{{{zzz{{{{zzz{zzyzyzzz{zzzzzz{zy{zzzz{{zzzzz{{zzzz{zyzz{{zzzz{{{zz{{z{zzyyz{{{zzzzz{{zzzzz{{zzzzz{z{zzzz{zyzzz{{zyzz{{z{{{z{z{{z{{{{{z{{{{{z{{{{{{{z{{{{{{{{{{{{{{{{{{{{{{|{{{zz{zzzzzzzz{zzz{zzz{{{zzzz{yzzzz{y{zzz{{zzz{z{zzz{z{{zz{zyyyyyyz{zyzzzzz{zyyzzyzzyzzzz{zzyzyzzyyyzz{{yyzzzzz{{zz{zzyzz{z{zzzyz{z{yzzzzzzyzyz{yzzyzzzyyzzz{{zzzzzzz{{zz{zzzzz{z{{z{zz{z{{{zzzzzzzzz{z{zzz{zzzz{{{{zz{{zzz{{|z{zzyz{{|{zzzz{{|{y{zz{{{yzz{{{{zyzz{{yzz{{{zzz{{z{{{{{zzz{zz{{z{z{{z{{{{zz{z{z{z{z{{{z{z{{z{z{z{|zz{z{{{{zzyz{zzz{zz{{{|{{z{zzzz{{{{zz{z{{{{{{zz{{{{zzz{{z{zzzzzzz{|{{{z{|{z{{{{z{zzzz{{{{zz{z{{{{{{zz{{{{zzz{{z{zzzzzzz{|{{{z{|{z{{{{{{zzzz{{{{zz{{{{{{{{z{{{{{{z{{{z{z{zzzzz{|{{{z{|{{{{{{z{{{z{{{{{{{{z{{{{{{{z{{{{z{z{{{{{z{{{z{{||{{{{|{{{{{||}{|{{{{|}{||{{{|}{|{{{{|{{{{{|||{{{|{{{||{||{||{|{{zzz{zzzzzzz{{z{zzzz{z{zzzzz{zzzzzz{zzz{{zyzz{zzz{{{zzz{{z{zzzzz{{{{z{zz{{{z{zzz{z{zzzz{z{zzz{{zzzz{{zz{{{{z{z{z{zzzzzz{{{z{zzz{{z{zzzz{{zzzzz{{zzz{{zzzz{z{z{{{zzz{zz{zzzz{{z{{z{{{{{{{{z{{{{{zz{{{z{zzz{{zzz{{{zz{{z|{{{{{{|{{{{{{{|{{{{{{{{{{{{{{{{|{{{{{{{{{{{{{{|{{{{{|{{{{{zz{zzzzz{z{{z{{z{{{z{z{z{{{z{{z{{{zzz{{zzz{{z{z{{{{z{{{z{zzyzz{{{zzzzz{{{yzzzz{zzzzzz{y{zzzzzyyzzz{{zzz{{y{zzz{zzyzzzz{zzzzzzz{yzzzzz{zyzzzz{{zyzzzyyzzz{zzzz{zzzzzz{zzzzzzz{zz{zzz{{{zzzzz{zzzzz{zzzzz{zzzz{zzzzz{zzzz{{z{zzzzz{{{{z{z{{{{{{zz{{{{zzz{{{{zzz{{{zz{{{{{z{{zz{z{{{{{z{zz{|{{{{{z{|z{{{{z{{z{{{z|{{z{{{zz{{{{z{{{{|zz{zz{z{zzyzzz{{zzzzzz{{z{{zzz{{z{zzz{{zyzz{zyzz{|z{zz{{zz{{z|{{{z{{{|{{z{|z}{{{z{|{{{{{|}{{{{|}||{{|}|{{{|}|{{{z{zzz{{{{zz{{{{{}{{{{{|{|{z{}{|}{{z{|{|{z{{{}{{{{{|{{zz{yyy{{z{zyzz{z{|z{{z{z{|zz{z{|}z{z{{{|{z{z{|{{{z{|{{z|}z{z{{|}z{{{{|}|z{{{{|}||z{{{|}z{z{{{|zz{{{|{}{{{|{{||{zzz{{|{zz{{{|{}z{{{{|{|{z{}{|}{{z{|{|{z{{{}|{{{{||{||}||{{{|}|{||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||z{zz{{|{z{z{|{|zzz{||{{zzz{|zz{zz|}z{z{|z|zz{|{|z{{|{|{zz{{{z|{{{{{{|{{z{|z}{{{z{|{{{{{z}z{{{|}z|{{|}{z{{|}{{{{z{{zzzzz{zz{zz{z}{zzz{|z|{zz}{|z{zzz|{|{zz{{}{{z{{{zzz|}zz|z{{|}{{{{|}}z{{{{|}||z{}{|}{{z{|{|{z{{{}|}{{{||{||}||{|{{|}|||{|}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||{||}zz{z{{|}z{zzzz{z{{{{|}{|z{{{|}z{z{{{|zz{z{|z}{z{|z{||}{|{z{{|}|{|{z{||{{{{|}||z{{{|}z{z{|{|zz{|{|z}{|{|{{||}{z|{{{|}{{|{{{|z}{{{|}||{{{{|}z{{{|}||{{|}|z}{|}|{{||}{z{z{{|}z{{{{|}{{{{{|}||z{}{|}{{z{|{|{z{{{}{}{{{|{{||}zz{z{{|}z{{{{|}z{{{{|}|~z{{{|}{{z{{{~~z{{{~{}{{{~{{||}||}|}}|}|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||z{zyzzzzz{zzzzzz{{z{zzzz{zzzzzz}{zzzz{|{zzz{{{zzz{{{zzz{zzz{zzz{{zzzzz{{z{zz{z{zzz{zz}{z{zz{|{{zz{{{zzz{z{zzz{{|{z{{z{|{|z{z{||{{zz{|zz{zz|}{{z{|{|{z{|{|{{{|{|{zz{{{z|{{{{{{{|{{{{|z}{{{{|{{{{{|}{{{{|}||{{|}|{{{|}|{{{|{zz{zz{|{z{{{{|{}{{{{{|||z{}{|}|{z{|{|{z{{{}|{{{{||{||}zz|{{~|}{{{{~|}~z{~{~|}~z~}~|}{{{~|~~~{{{~~{}{{{~{~|zzzz{zzzz{z{|}z|}z}{}{{{{|zz{{{{{{{{{{{z{{{{{{|{z{{z{}{z{{{{{z{{{{{{z{{{{{{{{{{|z{{{{{{{{{{{{z{{{{{{|{z{{{|}{{{{{|{z{{{|{{{{{|{{{|{{{|zz{|{{{{{{|{|z{{{{|{|{{{{z|}{{{{{|{z{{{}|{{{{}|{||}{{|z{{|}{{{{{|}{z{{{{|}||z{{{{}{{z{{|{z{{{|{}{{{|{{|{{|||{|{{||||{|{|}|{|{||||{{|}||}||{||||{||{}|{||{||{{{{{|~{~{{~|~|{~{~~{}~{~|~~~{~}~|}{~{~|}~{~|}~{{~|}~{{{{{{z{{{{{{{{|{{{{|z}{{{{{|{{{{{|}z{{{|}||{z{|{{{|}|{{{|{{z{{{{|{{{|{{|{|z}{{{|{|{{{{{|}z{{{|}||{z{||{{|}||{||}{z{{{{|}{{|{{|}|z}{{{|}||{{{{|}{{{{|}||{{{|{}{|}|{{|{{{z{{{{{{{{|{{{{}z}{{{|{|{{{}{|}z{{{|}||{{|}{{{|}{{{{{{{{|{{{{{{{|{{{{~z}{{{{{~~{{{{|}z{{{|}|~{{|}{{{|}~{{{|}||}|}}|}|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}|||{{|{z{{|{|{|{{|{||{{{{|{|zz{{{|}z{z{|{|zz{|{||{z{||{||}{|{z{{|}|{|{{|}||{{{{|}||z{{{|}{{z{|{|{z{|{|{}{{|{{|z{{|{z{{z{|{|z{z{}|{{z{|{|zz{}{|}z{z{|{|zz{|{}z{{|{{zzz{{||z{{z{|{|z{z{~|{{z{z{~~z{z{|}z{z{|{|~z{|{|z{{|{zzz{{{||{{{{{|{|{{{{}|}{{{|{|{{{}{|}{{{{|}||{{|}}{{{|}|{{|}|||||||}||||||}~|}||||}~~|||||}|||||}~~|||}~|}||}~|||{{{{z|{{|~}{|{~}||{|~}||}|~}|||~~}|||{|}|||{|~~}|{|{}|~}|{|{{|{|{{{{|{{{|{|{{|{{}{{|{{|{||{|z}||{|{{||{|{{{{|{{{{{{z{|{{{{|{|{z{|{|{{z|{|{{z|{|{{{z}|{{{{z||{{{{{||{{{{zzyz|{{y{|{{{z{|{{{{z|{{{{z|{{{{{z}|{{{zz||{{z{{{|{{{zz{y{z{{z{|{{{{{|{{{{z|{{{{~|{{{{{z}|{{{z~~|{{z{{{~{{{z{{z{{{{{{|{{{{{|{{|{{}{{|{z|{||{|z}||{|{z||{|{{|{|{{{{{{z{{{{|~}{{~}||{|~}||}|~}|||~~}|||{|}|||{|~~}|{|{}|~}|{|{{z|{|{{{|{|{|{|{||{{}{||{{|{||{|z}||{|{{||{|{{{||{{{{z{y{z~{{z{{zz{zz{{{{z{{{{z~z{{{z{z}z{z{z~~{z{z{{z~{z{z{{z{{{|{{{{z{{{{{{|{{}{{|{z|{||{|z{||{|{z||{|{{|{{{{{{{{{|{|{{{||{||z|{z{}{|{z{{{|{z{{{z}z{{{{|z}|{{{{{|}|{{{||{{{|~}{|{~}|||~}||}|~}|||~~}|||{|}|||{|~~}|{|{}|~}|{|{{z|{|}{{||}|{||}||{{}}||{||}||{|z}||{|{{||{|{{}||{{{{{{z{{~{{{{~{|{{z{|{{z|{|{{~|{|{{{z}|{{{{~~|{{{{{|~{{{{{{z{{||{{{|||{{{{||{{}{||{z|{||{|{}||{|{{||{|{{|||{{{{{{{|{|{{{||{|||z|{{}{|{|{{{|{|{{{z}|{{{{||}|{{{{||}|{{{{z{{|{{{{|{|{z{{{z{{|{|{{z|{|{{{z}|{{{{{||{{{{{||{{{{||}{}|~}}|}~}||}|~}|}}~}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}|{{z{{~}{{{~}|{{{~}||{z}||{~|}||{{z}||{{{~~|{{{{}{~{{{{{{z{{|}{{{|}|{{{|}||{{}||{||}||{|z}||{|{z||{|{{}{|{{{{{{{|{|}{{||}|||{|}||}{|{|{||}||{{z}||{{{||}|{{{}{|}|{{{{z{{{}{{{{}|{{{{}||{{{{z{||}||{{z}||{{{{||{{{{}{|{{{{{{z{{z}{{{z}|{{{z}||{zz{zz|z}||{{z}||{{{z||{{{{}z|{{{{{{z|{~}{{|~}|{|{~}|~{{~}|~{~}|~{|z}|~{|{~~~{|{{}{~{{{{{{z{{||{{{|||{{{||||{{}|||{||||{||}||{|{{||{|{{|||{{{{{{{|{|{{{||{{||z|{{{}{|{{{{{|{{{{z}|{{{{||}|{{{{{|}|{{{{z{{|{{{{|{{{{{|{{{{{|{{{{z|{{{{{}|{{{z{||{{{{{{|{{{{z{y{zz{{z{z{zz{zz{{{{z{{{{zz{{zz{z}z{z{zz||z{z{{{z{z{zz{y{z{{{z{{{zz{zz{{{{z{{{{zz{{zzzz}z{z{zz||z{z{{{{{z{z}{}{}|z}|{z}|{{z{z{z{{~{~|~|~{~~~{|~|~~{~}|~~{~|~~~|~|~|}|~|~{~}|~{~|{~}|~{{{{|{|||{|||{||{||{|{|}|{|{|||||{||}||{|{||||{{|||{||{{{z|{|}{{||}|{|{|}||{{|}||{||}||{{z}{|{{{|||{{{}{|{{{{{{z|{||{{||||{|{|||{{{|||{{{|||{{{{}|{{{{{||{{{||}{{{{z{z|{||{z|||{{|z||{{{{{|{{{{||z{{{z}|{{{z{||{{{|{|{{{zz{z|{||{z|||{{|{||{{{{||{{{{||{{{{z}|{{{z{||{{z|{|{{{z||}|}|~}}|}~}||}|~}|}}|~}|}|~~}|}|}|}|}|}|~~}|}|}}~}|}|{{{|{~{{{|~{{||{~{{{}{~{{{{~~{{{{{z}|{{{{~|}|{{{{{}|{{{{{{{|{{{{|{{|{{|{{|}{}{{|{{|{||{|z}||{|{||}||{{{{{|{{{{{{{|}{{{|}||{{|}||}{|}||{||}||{{z}||{{{||}|{{{}z|{{{{{{{{|{{{{|{||{{|{|{}{|{|{{{|{|{{{z}|{{{{||}|{{{{||{{{{{{{{|{{{{|{{|{{|{{{}{|{{{{{|{{{{{z}|{{{{||}|{{{{{|{{{zyzyzzyyzzzzyzyzzzzzyzzzzyzzzzyzzzzzyzyz{yzyzzz{zyyyyzyzzz{{{{z{z|{zzzy|{{{{{z{{{{{{{{{z|{{{{zz{|{zzz{z{{{zzyzyyzzyyyzzzyzyzzzzzyzzzzy{zzzyzzzzzyzyy{yzyzzzzzyyyyzyzz{yyzz{zyzyz{zzzy{zzzyz{zzyzzzzzyzyz{yzyzzz{zyyyyzyzy{yyzz{zyzyz{{zzyz{{zzz{{zzz|zzzyzyz{yzyz{z{zyyyzzyyzzyzyzz{zzzzz{z{zzz{zz{z{zzzzz{zzzz{|zzzzz{{{zyzzzyzzz{zzz{{zzzz{{zzzz{{zzz{{zzz|z{zzzzz{zzzz{{{zzyzzyzzz{{{{{z{|{zzzz|{{{{{z{{{{{{{{{z|{{{{zz{|{zzz{z{{{zzyzyzyz{yyz{zyzyz{{zzy{{{zyz{{zyz|zzzyzyz{yzyz{z{zyyyzyyyzzzyzyz{zyzzz{z{zzz{zz{y{zzyzz{zzyz{|zyzyz{{{zyzz{y{z{{{z{{{z{z{{y{zz{{y{z{{y{z{|{z{z{zz{z{z{{z{zy{zz{y{z{{{z{{{z{z{{z{zy{{z{z{{z{z{|{z{z{zz{z{z{{z{zz{zzzzz{{{{{z{{|{zzz|{{{{{z{{{{{{{{{z|{{{{zz{|{zzz{z|{{zzz{z{z{{{z{{{{{{z{{{z{{{{{z{{{{z{|{{{z{zz{{{z{{{{z{{zzzyzzzzyzzzz{zzzz{z{zzz{zz{z{zzzzz{zzzz{|zzzzz{{{zyzz{y{z{{{z{{{zz{z{{{zz{{z{z{{z{z{|{z{z{zz{z{z{{z{zy{zzz{{{{{{{{|{z{{{|{z{{{{zz{{{zz{z{{{z{zzz{{{zz{{{{{{zzzzzz{{{zz{{z{{z{{{z{{{{{zz{{zzz|z{{zzz{|{{zz{{{{{{z{{{{{{{{z{{|{{zz{|{{{{{{{{{|{{{{{|{{{{{{||{{{{{{|{{{{zzyzzz{zzzz{{zzzz{{z{z{{zz{{{zzz|z{zzzz{|zzzz{{{{zzzz{y{z{{{z{{{zz{z{{{{zz{{{z{{{{z{|{z{z{zz{z{z{{z{zy{zzz{{{{{{{{|{z{{{|{{z{{{{z{{{{z{z|{{z{zzz{{{zz{{{{{{zyzyzyz{yyzz{zyzyz{{zzy{{zzz{{zyz|zzzyzyz{yzyz{z{zyyy{{z{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|{{{{{{{|{{{{{|{{{{{z{y{z{{{z{{{{z{z{{{{{z{{{{z{{{z{|{{{z{zz{z{z{{{|{z{zzz{{{{{{{{|{{{{{|{{z{{{{{z{{{z{z{{{z{zzz{{{zz{{{{{{zzzyzzz{yzzz{{zyzz{{zzz{{{zz{{yzzzz{zzzzz{zyzzz{{zzyzzyyyzzzyzyzz{zyzzz{zzzzz{zzzzzzzzz{zzyzz{zyzyz{{zzyz{{{{z{{zzz{zzzz{{{{{{|{{{||{{{{||{{{{}|{{{{|{{{{|{{{{{{{{{{{||{{{{{z{z{z{{{z{{{{{{z{{{{{{{{{{z{{{{z{|{{{z{z{{{z{{{|{{{zzzzzz{{{zz{{{{{z{{{z{{{{{z{{{{z{z|{{{{zz{{{zz{{{{{{zzzzzz{{{zz{{z{{z{{zz{{{{zzz{{zzzzz{{{zzz{{yzz{{{{{{zzzzzz{{{zz{{z{{z{{zz{{{{zzz{{zzzzz{{{zzz{{yzy{{{{{{zzz{{{{zz{{|z{zz{|{{z{{{{{{{{{{z{z{z{z{zzz|{zzz{{{{zz{{|{|||{{{||{{{{|||{{{|||{|||{{||||{{{||{{||{{|{{{{{{zz{{{{{{{{|{{{{{|{{z{{{{{z{{{{z{z{{{{{zz{{{{zz{{{{{zz{{{{{{{{{|{zz{{|{z{{{{{z{{{{z{{{|{{{{{zz{{{z{{z{z{zzz{{{{{z{{|{{zz{|{{z{{{{{z{z{{z{z|z{z{zzz{{zzz{{{zzzzz{{{{zz{{|zzzz{|{zz{{{{zz{z{zz{z{z{z{zzz{{zzzzz{zyyyyzyzzyyzzzzzzyzzzzzzyzzyzzzzyzzyzzyzyzyyzyyz{zzyyyzyyyzyzyyzzzyyyzzzzyyzzyzzzzyyzyzzyyyzzzyyyzzzzyyyyyyyyyyzzyyyzzzzyyyzzzyzxzzyzzzzyyzyzzyyyzxzyyyz{zyyyyzyzzzzyzyzzzzyzyzzyzzzzyzzyzyzzyzzyzyzzyzyzz{zzzyyyyyzzyyyzzzzyyzzzzzzyzzzzzzzzyzyzzyyyzzyyyyz{zzyyyyyyyzyyyzyzzyyzyzzyzyzzyzzzzyyzyzzyyyzzyyyyy{zzyyyzyzyzzyzzzzzyyzzzzzyzzzzzzzzzzzzyzzzyzzzyyzz{zzyyyyyzyzzyzzzzzzyzzzzyzyzzyzzzzyzzyzzyzyzzzzyyy{zzyyyyzyzyzyzzzyzzzzzyzzzzzzzzzyzzzzyzzyzzyzyzzyzyzz{zzzyyyyyyzzyyyzzzyyzzzzzzyyzzzzzzzyzzzzyyyzzyyyyz{zzyyyzyzxzxzyzzxzzyzyzzzzyyzyyzyzyzzyzzyzyxzyzyzz{zzzyyzyzyzzzyzzzzzyzzzzzzyzzyzyzzyzzyzzyzyzzyzyzz{zzzyyzzzyzzyzzzzzzyzzzzzyzzzzzzzzzzzzzzzzyzzzyyzzzzzyyzzzyyzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzyz{zzzzyzyzyzzzyzzzzzzyzzzyzzzzyzzzzyzzzzzyzyzzyzyzz{zzzyyzyzyzzzyzzzzzzyzyzzzyzzyzzzzyzzyzzyzyzzyzyzz{zzzyyzyzyzzyyzzzzzyyzzzzzzzzyzzzzyzzyzzyzyzz{yyzzzzzyyyzyzyzzzyzzzzzzyzzzzzyzzzzzzzzzzzzzyzyzzzzyzz{zzzyzyzyzzzzzyzzzzzzzzzzzzzzzzzzzzzz{zzzzzzzzzzzzz{zzzzyzyzyzzzyzzzzzzyzzzzzzyzzzzzzzzzyzzyzyzzyzyzz{zzzyyzyzyzzyyzzzzzyyzzzzzzzzyzzzzyzzyzzyzyzz{yyzzzzzyyyzyzyzzzyzzzzzzyzzzzzzzzzzzzzyzzzzzyzyzzyzyzz{zzzyyyyzyzzyyzzzzzzyzzz{zzzz{yzzzzzzyzzyzyzzzzyyz{zzyyyzyzzzzzyzzzzzzyzzz{zzzz{zzz{zz{zz{zzzzzzzyzz{zzzyyzyzzzzyyzzz{zzyzz{zzzz{zzzzzzzzzzzzzzzz{zyzz{zzyyyzyzzzzzyzzzzzzyzzzzzzzzzzzzzzzzzzzyzyzzyzyzz{zzzyyyyzyzzyyzzzzzzyzzzzzzyzzzzzzzzzzzzzzyzzzzyyz{zzyyzzz{zzzyzzzyzyzyzzzzzzz{{{zzz{{zzyz{zzzz{z{{zz{zzyz{{zz{{z{zyz{z{z{zzz{{z{zzz{z{{z|{{{zz{z{z{{zz{z{zzzzz{{|zzzzzzzzzzzzzzzz{zzzzz{zzzz{{{{z{z{zzzzz{zzzzzzz{{|zzzyzzzyzzzzzzzzzzzzzzzzzyz{zzzz{zzzyzzzzyzzzzz{{zzzyyzzzyzzzzzzzzzzzzzzzzzyz{zzzzzzzzyzzzzzzzzyz{{zzzyyyzzyzzzzzzzzzzyzzz{zzzz{zzzz{zzzzz{zzyzz{zyy{zzzy|zzzzz{{zzz{{zzzz{{zzz{{z{zzzz{zz{zz{zzzzz{zzz{{zzzyzyzyzzzyzzzzzzyzzzzzzzzzzzzzzzzzzzzzzyzz{zyzz{zzyyzyzyzzyyzzzzzzyzzzzzzzzzzzzzzzzzzzzzzyzz{zyzzzzzyyyyzyzzyyzzzzzzyzzzzzzzzzyzzzzyzzzzzyzyzz{zyyz{zzyyyyyzyzzyyzyzzyzyzzzzyzzyzzyzyyzzzyyyyyzyyyyz{zzyyyyyyyyyzyyyyyyyyyyzzzyyzzzyyzzyyzyyzyyyyyyyxyz{zyyyxyxxxyzyxyxyzyyyzyyyyyyzyyzyzyyyyyzyyxyzyyyyyzzzyxxxxyxyyyyyxyyyxxyyyyyyyyyyyyyyyyyyyyxxyyyxxyyyyyyyyyyyyzzyyyyzzyyyzzzzyyzyzzzzyyyzzyyyyyzzyyyz{zyyyyyyyyyzyyyzyzyyzyyzzzyzzzzzyyzyzzzyzyyyyyyyyz{{zyyyyyyyyzzyyyyzzyyyzzzzyyzzyzyzzyyyyyzyyxzyyyyzzzzyyyyyyyyyyyyyyyyyyyyzyzyyzzzyyyyyyzyzyyyyyzyyyyz{zyyyyyyyyyyyyyyyyyyyyzzyyyzzzyxzzyyyyzzyyyyzyyyy{{zyyyyyyyzyzzyzyzzyzyzzzzyzzzzzyzzyzzzyzyyyzyyyyz{{zyyyyyyyyyyzyyyyzyyyzzzyyyzzzzzyzyyzyyzyyyyzyyyyzzzzyyyyyyyyzzyyyzzyyyzzzzyyzzzzzzyyyzzyzyyyzzyyyz{zzyyyyyyyzyzzyyzzzyzyzzzzyzzzzzyzzyzzzyzyyyyyyyyz{{zyyyyyyyyyyyyyyyyyyyzzzzyyyzzyyzyyyzyzyyyyzzyyyyz{zyyyyyyyyyzzyyyyzyyyzzzzyyzzzzyzzyyyyzzyyyyzyyyz{{zyyyzyzyzyzzyzzyzzzyzzzzyzzzzzzzzyzzzzzyyyzzzyyz{zzzyyyyyyzyzyzzyyzyzzyzzzzzyzzzz{zzzzzzzzzyyyzzyyyz{zzyyyyyyyzyzzyyzyzzyzyzzzyzzzzzyyzyzzzzyyyyyzyyyz{{zyyyyyyyyyzzyyyyzzyyyyyzyyzyyzzyzyyyyyyyyyyzyyyz{zzyyyyyyyyyyyyyyyyyyyyzzzyyzzzyzyyyyzyzzyyyyzyyyyzzzyyzyyyzyyyzzyyzyzzyyzzzzyzzzzzzzzyzzzzyzyyzyzyy{{zzzyyyyyyyzzzyyyzzzzyzzzzzzzzz{zzzyzzzzzyyzzzyyyz{{zyyyyyyyyyyzyyyyzzyyyzzzzyyzzyzzzyyzyyzyyyzzyyyy{zzyyyyyyyzyzyyyzyzyyzyzzzzyzzzzyzyyzzzyzyyyyzyyyz{zzyyyyyyyyyyzyyyyyzyyyyzyzyyzzyyzzyyyyzzyyyyzyyyyzzzyyyyyyyyyyzyyyyyzyyyzzzzyyzzzzzzzyyyzzyyyyzyyyyz{zyyyyzyzzzzzyyzzzzyzzzzzzyzzzz{zzyzzzzyyzyyzyyyz{{zyyyyyyyzyzyyyzyzyyzyzzzzyzzyzzzzyzzzzyyyyzzyyyz{zzyyyyyyyyyyyyyyyyyyyyyzzzyyzzzzyzzyyzzzyyyyyyyyyz{zyyzzz{zzzzzyzyyyzyzzyzzyzzyzyz|zzyy|zzzyzzzyyyzzyyyzzyzz|{zzyzyzyzzyyz{zyzzz{yzzzzzzyz{{zzz{zy{zz{zzyzz{yyz{zzzzyzzzz{zzzzz{zzzz{zzzzzzz{{zzz{zz{zz{yz{zzzyz{{zyzyzyzyzyzzyzzyzzyzyzz|{yzzzz{zzzzzzzzzzyyzzzzz{{|yyyyyyyyyyyyyyyzzyyyzzzyyyzzzzyzzzyzyzzzyyzzyyyz{zyyyyyyyyyyyyyyyyyyyyzzzzyyzzzyzyzyyzzzyyyyyzyyyz{zyyyyyyzyzyzzyyzyzzyzzzzzzyz{zyzz{zyzzz{yzzyzyzyy{zzy|zzzzzzz{zzzzz{zzzz{zzzz{zz{zzzzzz{{zzzzzzzzzz{{{zzyyyyyyyyzyyyyzzyyyzzzzyyzzzzzzzyyyzyzyyyzzyyyy{{zyyyyyyzyzzyyzyzzyzyzzzzyzzyzzyzyyzzzyyyyyzzyyyz{zzyyyyxyyyyyyyyzzyyyyzzyyyzyyzyyyzyyyzyzyyyyzyyyyz{zyzyyyyyyzyyyyzzzyyyzzzyyzzyyzyzyyyzyyyyyyyyyxyyzzzzzyyyyyyzxyyyzzyyyyzyzzyzzyyyyyzyyyyyyzyyyyyyyyzzzzzyyxyxyzyyxyzzzyxyzyzxyyyyyzyyyyyyyxyyxyyxzyyyzyzzyyyyzyyyzzyzyyzyzyzyyyzzyyyzzyzyzzyyyzzyyyyyzzyyyzzzzzyyyyyyyyyyyyzzyyyyzzzyyzzyzzyyzyyzyyzyxyyyyyyyz{zyzyyyyyyzyyyyzzzyyyzyzzyzzyyzyzzyyyyyyzyyyyyyyyzzzzyyyyyyyyyyyyyzyyyyyzyyyzzyzyyyzyyyzyzyxyyzyyyyz{zyzyyyyyyyzyyyzzzyyyzzzzyzzyyzyzzyyzyyyzyyyyyyyyzzzzyyyyyyyyyyyyyyyzyzyyyzzyyyyzyzyzzzyyzyyzyyyzzyyyzzzzyzyyyyyyyzyyyzzzyyyzzzzyzzyzzyzzyyzyyyzyyyyyyyyz{zzyyyyxyyyyyyyyzyyyyyzzyyyzyzyyyzyyzzyyyyyyzyyyyzzzyzyyyxyyyzyyyyzyyyyzyyyyzyyzyzzyyyyyyyyyyyzyyyyzzzzzyyyyyyyzyyyyzzyyyzzzzyzzyzyyzzyyyzyzzyyyzyyyyz{zzzyzyyyyyzyyyyzzzzyzzzzyzzzyzz{zyyzzzzzyyyzzyyyzzzzyyzyyyzyzyzyyzyzzzyyzzzzyzzyzzzzzyyzzzyzyyzzyyyzzzzzzyyyyyyyzyyyyzzzyyyzzyyzzyzzyzzyyzzyyyyyyzyyyyz{zzzyyyyyyyzyyyyyzzyyyyzzzzzyyzyyzyyzyyzzyyyyyyyyzzzzyyyyyyyyyyyyyzyyyyyyzyyzzyzyzyzyyzyyzyyyyzyyyyzzzyzzyzyyyyzzzyyzzzzyzyzzzzzyzzzzzyyzzyzzyyyzzzyyz{zzyyyyzyyyzyzyyzzzzyyzzzzyzzzzzzzzzyzzzzyyzzzyyzzzzzyyyxyxyyyyyyyyyzzyyyyzzyyyyyyzyzyyzzyzyyyyzyyyyzzzyyyyyyyyyyyyyyyzyyyyyyzyyzzyyyzzyyyzyyyyyyyyyyyzzzyzyyyyyyyzyyyyzzzyyyzyzzzzzyzzzzyyyzyyzyyyzzyyyzzzzzyyyyyyyzyyyyzzzyyyyyzzyzzyzz{zyyyzyzzyyyzyyyyzzzzyyyyyyyyyyyyyzzzyyyzzzyyzyzzzzzzyzzyyyyzyzyyyyz{zyyyyyyyyyyyyyyzzyyyyzzzyzzzzzzyzyzzzzyyyyzzyyyyzzzyzzyzzzzzzyyyyyyyyzyyyyyzyyyyzzzyyyzzzzyzzyzyzyzyyyzzyyyz{zyzyzyzyyyzyyzyzzzyyyzzzzyz|zzzyzzyzzzzzzyzzzyyy|{zzz{zzzzyzz{zzzzzz{yzzzzzzzzzzzzz{zyzzzzzyzzz{zyz{zzyyzzyzyzzzzz{zzzzy{z{zyzzzz{zzz{zz{zz{yy{zzyzzz{zyzyzyyyzyzyyzyz|zyzyzz|yyzzzzzyzzyzzzzyzzyzzzyzz{|zzyyyyyyyzyyyyzzzyyyzyzzzzzyyzyzzyyyyyyzyyyyyyyzzzzyyyyyyyyyyyyyzyyyyyyzyyzzzyzyzzzyyzyyyyyyyzyyyzzzyzzzzyzyyzzzyzzzzzzzyzzzzzzyzzzz{zyzzz{zyzyzzzyyzzz|yzyzyyzyyzyyzzzzyyzz{zyzzzz{zzzzzz{zyzyyzzzyzyzz{yyyyyyyyyyyyyyzzzyyyyzzyzzyyzyzyzyyyzyzyyyyzyyyyz{zyyyyyyzyyyyyzyyzyyzyzzyzyyyzyzzyyyzzyzyyyyzyyyyzzyzyyyyyzyyyyyzzzyyyzyzyyzzyyyyzzyyyzyyzyyyyzzyyzzzzzyxyxyyzyxyyzyzxyyzyzyyyyyyzyyzyyyzyyyxyyyyyyyyyzyzyyyyyzzyyyyzzzyyyzyzzyzzyyzzzzyyyzzzzyyyzzzyyzzzzyyyyzyyyzyzzyyzyzzzxyyzyzzyyzyyzyzzyyyzzyyxyyzzzyyzzzzzyyyyyzzyyyyzzzzyyzyzzyzzyyzzzzyyyzzyzyyyyyyyyyz{yxyyyyyyxyyyyzzyzyyzyzyyzzyyzyzyyyyzzyzyyyyzxyyyz{zzyyyyyyzyyyyzzzzyyzyzyyzzyyzzzzyyyzzyzyyyyzzyyzzzzzyzyyyyzzyyyzzzyyyzzzzzzzyzzzzzzyyzzzzyyyzzzyyzzzzyyzzyyyyyyzzyyyzzzzyyzyzzyzyyyzyzzyyyzzyzyyyzzyyyzz{yzyyyyyyzzyzyzzzzyyzyzzzyzyyzzyzyyyzyyzyyyyzzyyzzzyzyyyyyyzzyzyyzzzyyzyyzzzzyyyzzzyyyzzyzyyyzzzyyzzzzzyyyyyyzzyyyyzyzyyzyzzyzzyyzyzyyyyzzyzyyyyzzyyyz{zzyyyyyyzzyzyzzzzyyzyzzzzyyyzyzzyyyzzzzyyzyzzyzyz{yzyzyzyyzzzyyzzzzyzzzzzzzzyzzzzzzyyzzzzyyzzzzyzzzzzzzzyyyzyyzzyzzyzzzzyzyzzzyzyyzzzzyyyzzyzyyyzzzyyzzzzzyyyyyyzzyyyzzzzzyzyzzyzzyyzzyzyyyzzyzyyzyzzyzyzzzzyyyyyyzzyyyzzzzzyyzzzzzzyyzyzzyyyzzzzyyzyzzyzzzzyzyyyyyyzzyzyyzzzzyyzyzzzzyyzzzzyyyzzyzyyyzzzyyzzzzzyyyyyyzzyyyyzzzzyyzyzyzzyyzyzzyyyzzyzyyyyzzyyzz{zzzzzzzyzzzzyzzzzzzzzzzzzzzzzzzzzzzzzz{zyzzzzyzzz{zzzzyyyzyzzyzyzzzzzyzzzzzyzzzzzzzyzyzzzzzyzzzyyzzzzzzyyyyyyzzyyyyzzzzyyzyzzyzzyyyzzyyyzzyzyyyyzzyyzz{zzyzyzyyzzzyyzzzzzyyzzzzzzzyzzzzyyyzzzzyyzyzzyzzz{zzyzyzyyzzzzyyzzzzyyzzzzzzzyzzzzzyzzzzzyyyzzzyyzz{zzzzzzzyzzzzyz{zzzyzzz{zzzzzz{zzzzz{zz{zyzzzzyzzz{zzyyyyyyzzyyyy{zzzyyzy{zzzzyzzzzyyyzzyzyyyzzzyyzz{zzzzyzzzzzzzzyyyzyyzzzyzzzzzzzyzzzzyzzyzzzzzyyzzzyzyyzzzyzzzzzzzyzzyyzzyzzzzzzzzzzzzzyzzzzzzzzyzzzzyzyzzzzyzzz{zzzzyzyzzzzzzzzzzzzyz{zzzzzy{zzz{zyzzzzzyzzzzzzz{zzzzzzzzzzzzzzz{zzzzzzz{z{zzzz{z{zzzz{zz{zzzzzzzzz{zzzyzyyyzzyyzz{zzzz{{z{zyzz{z{zzzyzz{zz{yz{{zyz{z{zzyyyyyyzzyyyyzzzzyyzyzzzzzyyzyzzyyyzzzzyyyzzzyyz{yzyyyyyyzzyzyyyzzzyyzyyzzzzyyyzyzyyyzzzzyyyzzzyzzzzzyyyyyyzzyyyzzzzzyzzyzzzzzyyzzzzyyyzzzzyyzzzzyzzzz{zzzzzzz{zzzzzz{zzzzzzz{{zzzzzzzzzzzzzzzzzzzzzzzzz{zyyzyyyzzyzyy{zzzyzzz{zzzzzz{zzzyzz{zzzyyzzzzyyzz{yzyzyz{zzyzyz{zzzyzzz{zzz{yzz{yzzyzz{zyyzyz|zzyz{{{zzyyyyyzzyyyyzzyzyyyyzyzzyzyyzyyyyyyzzzzyyyy{yyyyzzyzzyyyzyzzyzyyzzzzyyyyzzzyyzyyzzzzyzyzzzyzyyy{yyyyzzyzz{zzzz{zyzz{z{zzzz{zz{z{{zzzz{yzzzz{{{{zz{{{zz{{z{{z{zzzzzz{{zzz{{{|yzzz{{{zz{zz{{{{zzz{z{|zzzz|zzzz{{z{yyyzzyyyyzzzyzyyzzzzyyyyzzzzyzyyzzzzyzyzzzzzyyy{zyyyzzzzz{zyzzzzzzz{zyz{zzzzzyz{zzzzzy{zzzz{z{{zz{y{yz{yz{zzzyzyzyz{zyzyz{zzzyzzz{zzz{yzz{yzzyzz{zyyzyz|zzyz{{{zz{zzzzz{zzz{z{zzzz{zz{z{{zzzz{zzzzz{{{{zz{{{zz{{z{{z{zzzzzzz{{zz{{{|zzzz{{{zz{zz{{{{zzz{z{|zzzz|zzzz{{z{yyz{yzyzzz{{zzzz{{zzyzzz{{zzzyzz{{zzzzz{z|zzyz{zzyzz{{{zzzzzzzzz{zzzzz|{y{zzzz{{zyzzzzyzzzz{z{zzz{{yzz{{zzzz{zyzzzzzzzz{zz{zzzzzzz{zzzzzz{zzzz{z{{zz{y{yz{yz{zzzyzyzzz{zzzzyz{zzyzzz{zzz{yzz{zzzzzz{zzzzyz|zzyz{{{z{{zzzzz{{zzz{z{{zz{zz{{{{zzzz{{zzzz{{{|zz{{{zz{{z{{{{zzzzzzz{{zzz{{{|zzz{{{zz{zz{{{{zzz{z{|zzzz|zzzz{|z{zzz{zyzzzzzzzz{zzz{zzzzzz{yzzzzz{zzzz{z{{zz{z{zz{zz{zz{yyyyzyz{yzyyz{{zyyyzyzzyzyyz{{zyzyzzz|zyyy{zyyyzzz{{zzzzzzz{{zzzz{{|{y{zzz{{zyzz{{zzzzz{z|zzz{{yzz{{zz{{{zyzzzz{zzz{z{{{zzzzzz{zzzzz{{zzzz{z{|zz{y{yz{yz{z{{yzyzzz{{zzzyz{{zzyzzz{zz{yzz{{zzzzz{z|zzyz|zzyz{{{{{{{z{{{{{{{{z{{{|{zz{{{{z{{{{{{|{{{{{{|{{{z||{{z{|{{{{zzzzzzz{zzzzz{{zzy{zz{{{{yzz{{zzzzz{z|zzz{|zzz{{zz{zyzyzyz{zzyzyz{zzzyzzz{zzzzyzyzzzyzz{zzyzyz{zzyzz{{zzyzyzyz{zzyzyz{zzzyzzz{zzzzyzyz{zyzz{zzyzyz{zzyzz{{zzzzzzyz{z{zzzz{z|{y{zz{z{{zzzzz{zyzz{z{yzz{{zzz{{{{zz{zzzzz{zzzz{{{z{zzzz{{z{z{zz{{{zzz{{{{zz{z{zz{z{|{z{{{z{z{{{{z{{{{{{{z{{{{{{{{z{{{{{z{{{{|z{{{|{{{{{{|{zzzz{zzz{zz{{{{zzzzzyzzzzzzzzzzzzz{zzzz{{{zzzzzzzzzz{zzyzy{zzz{{zzzzzzzzzzzzzzzzzzzzzz{zzzz{{{zzzzzzzzzz{zzzzy{zzz{{zzz{zzzzzz{{zzzzz{{zzz{zz{{{{{zzz{zzzzzz{z|zzz{zzz{{{{{{{zzzzzz{zzz{{z{{zz{z{z{{{{zz{z{zzzz{{{{zz{{{z{{{{z{{{{{{zz{{{{{{z{{|{{{{z{{{{{z{z{{{{z{{{{{z{{{{z{{{{{{zzzzzzzzz{zzzzzz|{yzzzzz{zzyzzzzzzzzzzz{zzzz{yyyzzyz{zzzzzz{{{zzzz{{|{yzzz{{{zzyzz{zzzzzz{z|zzzz{zzzz{{{z{zzzzzzz{zz{zzz|{zzzzzz{zzzzzz{zzzz{z{{zz{z{zz{z{zzzzzzzyzzz{zzzzzz|{y{zzz{{{{yzzz{zzyzz{z{yzz{{zzz{zzz{{|{{|{{{||{{{{{||{{{{{||{{{{|{{|{|{{{{||{{{|{{{{{z{{zzzzzyz{z{zzzz{z|{yzzz{{{z{yzz{{zzyzz{z{yzzz|zzzz{{{{z{{{z{z{}{{{{{|{}{z{{{|{}{{{{||{|z{{{{|}z{{{{||z{{{{|{{{{zzz{zz{|{{z{{{{|{{{z{{{|z{{z{{{|~z{z{|}z{z{{|~~z{{{~{{{|yyyyzz{|{{y{{z{|{y{z{z{|z{{z{z{|zz{z{|}z{z{{||zz{{{|{{}|{{{{{|}|{{{{||}|{{{{||}|y{{{||}||{{{||}z{{{{||y{{{{|{}{|{{{{{|{|{{{{{|{|{z{{{|{|z{{{{|{|z{{{{|}z{{{{||z{{{{||{{|{{{{{z{}{{{{{|{}{{{{{|{}{{{{||{|z{{{{|}z{{{{||z{{{{|{{}~{|{|||}~|{|{||}~|{||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{{{z{|{z{{{{{|z{{{{z{|z{|{{z{|z}{{{z{|{{{{{z}z{{{|}z|{{|}{z{{{z{{{z{z}{{{{z|z}{z{{z|z}{{z{||z|z{z{{|{zz{{{||z{{{{{{{{~{zzz{zz{z{z{{{{{z{zz{{{{z{{z{{{z~z{z{z{z{z{z{~~z{z{~z{}|{{{{{{|}|{{{||}|{{{{||}|z{{{||}||{{{||}z{{{{||z{{{{|{}{|{{{{{{|{}{{{{|{}{{{{{|{}{{{{||{|z{{{{|}z{{{{||z{{{{||{}~{|{|{{|}~|{{||}~|{||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{{z{|{{z{{{|{|{{{{zz{{y{{{|{|z{{{{|{|z{{{{|}z{{{{||z{{{{||{{|{{{{{{|{|{{{{{{|z{|{{|{|z}{{{|{|{{{{{|}z{{{|}||{{|}||{{|{{{{{{|{}{{{{{|}{z{{{|{}{{{{||{|z{{{{|}z{{{{||z{{{{||{{~{{z{{{|{~{{{{{|{z{{{{|{|z{{{{|{|~{{{{|}z{{{{|~~{{{{~|{}|{{{{{{|}}{{{{||}}{{{||}}{{{{||}||{{{||}z{{{{||z{{{{||}}~{|{|{||}~|{|{||}~|||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{|}z{{{{{{|}{{{{{||}{{{{zzzzz{{{||}z|{{{||}z{{{{||z{{{{|z}}{{{{{{{|}{{{{{||}{{{{{zz{z{{{||}||{{{||}z{{{{||z{{{{|z}}|{{{{{{|}|{{{{||}|{{|{|{|z}{{||}||{{{||}z{{{|}||{{|}|z}}|{{{{{{|}}{{{{||}}{{{{||}{{{{||}||{{{||}z{{{{||z{{{{|{}}~{{{{{{|}~{{{{||}~{{{{||}z{{{||}|~{{{||}z{{{{|~~{{{{~{}}~}|{|}||}~|}|}}|}~|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}|zz{zzz{zzz{z{z{{{z{z{zz{{z{z{zzzz{zz{z{z}z{z{z||zz{z{z{zzz{zzz{zzz{z{z{{{z{z{zz{{z{z{{zzz{zz{z{z}z{z{z||zz{z{z{z{|{{{{{{z{|{{{{{{{|{{{{{{z|z{{{{{|z{{{{|}{{{{{||{{{{{|{{{|{{{{{{{{|{{{{{{{|z{|{{{{|z}{{{{|{{{{{|}z{{{|}||{{|}|{{{|{{{{{{|{}{{{{{|{}{{{{{|{}{{{{||||{{{{|}|{{{{||{{{{{||{}~{{{{{{|}~{{{{~|}~{{{{~|}~{{{{~|}~{{{~|}z{{{{~~~{{{{~{}zzzz{zz{|}z{|}z|}z}{}{|{{{zzzz{|{{z{{z{|{z{z{z{|z{{{zz{|{zzz{|}zz{{||{z{{{|{{{|{{{z{zz{|{{z{{z{|zz{z{z{{z{{{{z{|{z{z{|}z{{{||{z{{{|{{{|{{{{{{|{|{{{{{|{|{z{{{|{|z{{{{|{|{{{{z|}z{{{||{{{{{}|{}{{{{{{{|}{{{{{||}{{{{{||}{z{{{||}||{{{|{}z{{{||{{{{{|z}{||{{{{{{{}{{{{{|{}{{|{{|{}|{{{||{|{{{{{|}|{{{|||{{|{{|{{~~||{~{{{~|~{~{|{~|~|{{|~~{}{{~|~~~{~{~|}z~{~|}~{~|}~{{{|{{{{{{{{|{{{{{{{|{{|{{{{|z}{{{{{|{{{{{|}z{{{|}||{{{|{{{|{{{{{{|{|{{{{{|{|{{|{{|{|z}{{{|{|{{{{{|}z{{{|}||{{{||{}|{{{{{{|}|{{{{||}|{{|{||}|z}{{||}||{{{||}z{{{|}||{{{|z}{|{{{{{{{{}{{{{{|{}{{|{{|{}{}{{||{|{{{{{|}z{{{|}||{{|{z{{~{z{{{{{{~{{{{{{{~{{|{{{{~z}{{{{{~~{{{{|}z{{{|}|~{{|}{{}~}|}|}||}~|}|}}|}~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}|z{|{||{|||~|{||~}||||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{}}{}}}{z}}{{}{}}{}|{|}{}{{}}{}{}}|{}{}{|}|{}{}}}{|{}{{zz{||z{z||{{z{||{{|z||{{{{z|{{{z{|{{{z{z}|{z{zz}{|{z{{zyz||zyz||{{z{||{{|z||{{{{{|{{{z||{{{z{z}|{z{zz}{|{z{||{||||||||}|||||}|||||}||{{|}|||}|}||||{}|||||z}{||||{|z|{||{|||{{|{||{||{||{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{{|{|||{|||~|||~}||||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{}z}{}}}{}}{{}{}}{}|{|}{}{{}}{}{}}|{}{}{|}|{}{}}}{|{}{||{||||||||}|||{|}|z|{z}||{{|}|||}{}||||{}|||||z}{||||{|z|{|~|{||{{|{||{|{{||{|{{||{|{|~{{|{|{|{|{|{|~~{{{|{z}z}{}|}z}}}{}{}}z}|{}}z}{{}}z}{}||z}{}zz{|{}z}z}{|{}z|{|||{|||~||||~}|||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{}z}{}}}{}}}{{}}}{}|{|}{}{{}}{}{}}|{}{}{|}|{}{}}}{|{}{||{|||||||||}||||}|||||}||{{|}|||}|}||||{}|||||z}{||||{|z|{|~|{||~{{|{|{||{||{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{{}z}{}|}{}}}{{}{}}}|{}}{}{{}}{}{}||{}{}{z}|{}{}z}{|{}{{{z{{||z{{||{{z{{|z|{||{{{{{|{{{{||{{{{{z}|{z{{z}{|{z{{}||{|||~||||~}||||~}}||~}}|}|~}}||~~}}|||}}}||||~~}|||||}{}|}}}|}}}}|}|}}}}||}}}|{}}}}|}}|}}|}||}||}|}}}{||}|{|z|{|~|{||~{{|{|~{||{|{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{{}z}{}|}{}}}{{}{}}{}|{}}}{{}}{}{}||{}{}{z}|{}{}z}{|{}{{|z|{|||{|||{{|{||{||{||z{{{|{|{|||{|{|{z}|{|{|z}{|{|{{|z|{|||{|||{{|{||{||z{|zz{{|{|{|||{|{|{z}|{|{|z}{|{|{}}|||}|~|}||~}}|}|~}}|}|~}}}}~}}}|~~}}}|}}}}}|}|~~}|}|}||{|||~||||~}||||~}||||~}||{|}|||~|}|||||}|||||~~{|||||}{}|}|}|}}}}|}|}}}}||}}}}|{}}}|}}|}}|}|{}||}|}{}{||}|||{|||||||||}|||||}|||||}||{{|{||}|}||||{}|||||{}{||||||{|||||||||}|||||}|{|||}||{{|zz|}|}||||{}|||||{}{||||||{|||||||||}|||||}|{|||}||{{|zzz}{}||||{}|||||{}{|||||}{}|}~}|}}~}|}|}~}}||}~}}||}~}}|}~}}|}|}}}|}|}~~|||}|{}z}{}}}{}}}{{}{}}{}|{}}{}{{}}{}{}}|}{}{|}|{}{}}}{|{}{{|z|{|}|{||}{{|{|}{||{|}{|{{|}{|{|}|{{|{|}|{|{|}}{|{|{{|z|{|}|{||}{{|{|}{||{|}{|{{|}{|{|}|{||{|}|{|{|}}{|{|{{|z|{|}|{||}{{|{|}{||{|}{|{{|}{|{|}|{|{{|}|{|{|}}{|{|{{|z|{|}|{||}z{|{|}{|{{|}{|{{|}{|{|}|z|z||}|{|{|}}{{{|{}|}{}|{}|{{}|{z{}|{z{~}|}~}~}~}}~~~}~}~~}|~}~~}~{}~~}~}~~~}~}~|}|~}~}~{|~}~{}z}{}|}{}}}{{}{}}{}|{}}{}{{}}{}{}||{}{}z|}|{}{}|}|{}{||{|||}||||}}||||}}|{||}}||{|}}|||}|}|||||}{||||}}{|||{|z|{|||{|||{{|{||{||{||{|{{{|{|{|||{|{|{z}|{|{|{}{||{{{z{{||z{{||{{z{||{{|{{|{{{{{|{{{{||{z{{{z}|{z{{{}{|{{z{z{{||zz{||{{z{||{{|{||{{{{{|{{{{||{{{{{z}|{zz{{}{|{zyyzzzzyzz{zzyyy{zzzzzzzz{zz{zz{zyyzzzyyyy|zyyyzz{zyyzyz{{z{{z{zzz{{z{z{z{z{{{z{z{{z{|z{{z{{{{z{zyz|z{z{z{{zzzyyyzzzyzy{zzzyy{zzzzzzzzzzzzzzzzyyzzzyyyy{zyyyyzzzyyzzyzzzzzz{zzzzz{zzzzzzzz{zz{zz{zzzzzzzyyy{zzzzzzzzzzzzyzzzyzz{z{zyz{z|zzzzz|{zz{z|{zz{{zzzzyy{zzzz{{zzzzzzy{z{zz{{z{z{z{z{{zz{z{{z{{z{{z{y{{z{zyy{z{zzz{zzzzzzyzzzzzz{zzzyz{zzzzzzzz{zz{zz{zzzzzzzzyy|zzzzz{{zzzyz{{zzz{z{zzz{z{z{z{z{{{z{z{{z{|z{{z{{{{z{zzz|z{z{z{{zzzzzyzzzzzzzz{zzzzz|zzzzz|{zz{z|{zz{{zzzzyy{zzzz{zzzzzzzy{z{zzz{{{z{z{z{{zz{z{{z{{z{{z{y{{z{zyy{z{zzz{zzzzzzyzz{{zzz{{zzz{{z{zz{{z{z{{{z{zz{z{zzzyy{zzzzz{zzzzzzy{z{{zz{{{{{z{{{{zz{{{{zz{z{{z{z{{z{zyy|z{zzzz{zzzz{{z{z{z{zzz{{z{z{{z{{{z{z{{z{|z{{z{{{{z{zzz|z{z{z{{zzzzzzzz{{zzz{{{zzz{|{{z|z|{z{|{|{zz{{{zzz{{{zzzz{{{zzzzzy{z{zzz{{{{z{z{{{zz{z{{z{{z{{z{z{{z{zyy{z{zzz{zzzzzzyzz{{zzz{{zzzz{{{zz{{z{z{{{z{zz{z{zzzyy{zzzzz{zzzzzzzzzz{zzz{{zzzz{{zzz||z{z{{{z{zzzzzzzz{{{zzzzy{zzzzzzzzzz{zzz{{{zzz{{|zz|||{z{{{|{zz{{zzzz{{|zzzz{{{zzz{{z{z{z{zzz{{z{z{z{z|{{zz|{z{|z|{z{{{{z{zzz|z{z{{{{zzzzzz{z{{zz{{{{z{z{{{{{z|{{z{|{{{z{z{{z{z{{{z{zzz{{zzzzzyzz{{zzz{{zzzz{{z{zz{{{z{{{z{zz{z{zzzyy{zzzzz{zzzzzzzzzz{zzz{{zzzz{{zzzz||zz{{{z{zzzzzzzz{{{zzzzy{zzzzzzyzzzzyzz{zzzyz{zzz{zzzz{z|zz{zzyzzzzzyy{zzzzzz{zzzzzy{z{zzz{{{{z{z{{|||z{{||z|{||z{{{|z{zyy|z{zz{{|zzz{{|z|{|{|{||{{z|{|{||{z|{||{{|||{|{{|{|{y{|{|{|{{{{|{zzy{z{{zz{{{{z{z{{|{{z{{|{z{{{{z{{{{z{zyy|z{zz{{{zzzzzz{z{{zz{{{{z{z{{|{{z|||{z{{{zz{{{{z{z{{|z{zz{{{zzzzzy{z{zzz{{z{z{z{z|{{z{z|{zz|zz{{{{{z{zyy|z{zz{z{zzzzzy{z{zzz{{z{z{z{z|{{z{z|{zz{zz{z{{{z{zyy|z{zz{{{zzz{|z|{|{|{||{{{|{|{{|{{||{|{{|{{|{|{|{|{{{|z|{|{{{z|{z{z{z{{zz{{{{zzz{{{{{z||{{z{|{{{z{zzz{z{{|zzz{z{{zzzz{y{z{{zz{{{zzzz{{z{{z{{z{z{|{z{z{zz{{zzz|zzz{z{{zzzz{y{z{{zz{{{zzzz{{z{{z{{z{z{|{z{z{zz{zzzz|zzzzz{{zzzz{y{z{{zz{{{zzzz{{z{{z{{z{z{|{z{z{zz{z{zz|zzz{z{{zzz{{{{{{{{zz{{zzyzzz{z|{zz{|{{{{z|{{{|{||{{z{|{{{z{{{{z{z{{|{{zz{|{zzzzzzzz{zzz{{{zzz{{|z{z|||{z{|{|{zz{{zzzz{{{zzzz{{zzzzzy{z{{zz{{{{z{z{{{{{z{{{{zz|{{{z{zz{z{zyy{z{zzz{zzzzzyzzzzzzz{zzzzz{zzz{zzzz{zz|zz{zzzzzzzzyy{zzzzz{zzzyyyzzzzyzz{zzzyy{zzz{zzzz{zz|zz{zyyzzyyyyy{zyyyzzzzyzyzyzzzyyzzzzyyyzzz{zzzyz|y{zz|yzzz{yzyyyyzyyzz{zzyyyyyyyyzyyyyzz{yyyzzzzyyzyzz{{zyzyyzyzyyyyy{yyyzzz{yyyyyy{yyyyzzzyyyzzzyyyyzzzzyzxzzyzzyzyyzyzyyyyyyyyyyzyzyyyyzyzzz{yyzyz{yyyzy{zzy{{zzy{z{zyzzzzyzyzzzyyyz{|zyyyyzyzyzzyyzzyz{yyzzz{{{zzz|z{{z|zzzz{yzyyyy{yyzz{z{yyyyyyyyzzyyzyzzzyzyz{zyzyz{y{zz{yzz{{yzyyyyzzyyz{zzzyzzyzzz{zzzz{yzzzz{zz{zz{zzz|{zzzz{zzzzz{zzzzzzzz{zzzzzyzzz{{zzz{{zyzz{{{zzy{{|z{{z|zz{z{zzz{zzzzzz{|zzzzyzyzyzzzyzzzz{yyzzzzzyzzzzz{{zzzzzzzzzyyyy{yyzzzz{yyyyz{yzyzyzz{yyzz{{yyzy{{{{{{z|y{{{|yzzz{yzyzzz{yyz{|z{yyyzyzyzzzzyzzzzzyzzz{zyzzz{z{zz{zzz{{yzyyyyzzyzz{zzzyzzyzzz{zzzzz{zzzz{zz{zz{zzz|{zzzz{zzzzz{zzzzzzzy{zzzyzyzyzyzzyzzyzzyzyz{zzzzz|y{zz|yzz{{yzyyzzzzyzz{zzzyzzyzzz{{zzzz{{{zz{{zzzy{{zz{{zzzz{zzzzz{zz{zzz{|z{zzzz{zzyzzz{zzzzz{z{zz{z{{{zyz|z{{z|zz{z{zzz{zz{zzzz{z{zzyzyzyzz{zyzzz{zzyz{{zy{{z{y{z{{yzz{{yzyzzzzzyz{|zzzyzzyzzz{zzzzz{zzzzz{z{zz{zzz|{zzzz{zzzzz{zzzzzzzz{zzzyzyzyzz{yyzzz{zyyzz{zz{{{zy{z{zyzzzyyzyzyzzyyz{|zzyyzyyyzyzzyzyyzz{yzyz{{{yz{|z{{{|zyzy{zyzzzz{yzyz{{{yzyzyzyzyzzyzzzz{zyzzz{zzzz{z{{z{zzz{{zzyyzz{zyzz{z{zy{{zzyzz{{zzzz{{zzzz{{z{{z{z{z{{z{zz{{{zzz{z{zzzzz{{zzzzzyzzz{{zzzz{{zzzz{{z{z{{zz|{{zzz{zzzzz{zzzzzz{|{zzzyzyzyzz{yyzzz{zyyzz{zzz{{{y{z{zyzzzyyzyzyzzyyz{|zzyyyzyzyzzzyyzzzzyyyzzzzzyzzzz{zzzyzzzzyzyyzzyyyzzzzyyyzz{zzz{zz{zz{z{z{z{{{{{z{{|{{{|{z{{{{z{{zz{z{zz{{{zz{{zzz{{{{z{z{{{{z{{{{{{{{{{{{|{{{z{{{{z{{{z{z{z{|{{z{zzyzzz{{zzzz{{{zzz{{{z{{{{{z{{{zz{{{zzz{zz{zzz{|z{zzzzyzzz{zzzzz{z{zzz{z{z{z{z{z{{zzz{{{zzz{zz{zzzz{z{zzzzyzzz{zzzzz{z{zzz{z{z{z{z{z{{zzz{{{zzz{zz{zzzz{z{zzz|z|z{z{{z||z{{{z|z||{{{{||z|{{|{|{|z|zz{|{{z|{|{{{z{{z{z{{{{{{{{{z{{{{{{{z{{{|z|{{|z{|{{{z{||zz{{{|{zz{zzyzz{z{zzz{z{zzz{z{{{z{{{|z|z{|zz{{zzzzz{zzyz{|{zzyyzyzy{z{yyz{z{zzy{z{{{z{{{|z|z{|zz{{zzyzz{zzyz{|{zyyyzyzy{z{yyz{z{zzy{z{{{z{{{|y|z{|yz{{zyzzz{zyyz{|{zyyy{zzzyzzyyyzzyzzz{zzzzz{zzzzz{{{{zz{{|z|{{|zz{z{zzz{yzzzzz{{zzzzzzzzzz{yzzzz{{yzzz{z{{{{{zz|{{zzzz{zzzzzzz{yzz{|{yzyzyzyzzzzyzzzzzzyzzz{zzzzz{z{zz{zzz{{zzyyzzzzyzz{zzyzzyzzz{{zzzz{{zzzz{{zzz{{{zz{{{zzz{zyzzz{zzzyzz{|zzzyzyzyzzzyyzzzzyyyzzzzzyzzzzy{zzzyzzzzyzyyzzzyyzzzzyyyyyyzy{yyyzy{{yzyzy{{zzy{{yyz{yzyzyyyyyy{yyyyy{y{zyyyyyyzyyzyyzyzz{yyyyzzyzyyzzy{zzzyyyyzyyyyyyyyxyy{zyyyyyyyxy{yyyyyyy{yyyzyzyyzyyyy{zzzyyyyyyxyyy{yyyyyy{yxxxxyyyyxyyyyyyyyxyyyyyyyyyyyyyyyyyyyyxyyxyyyxyyyyyyyyyyyy{yyyyy{zyyyyy{zyzyyzyyz{yyyzyyyyyy{yyyyy{yyyyyyyyyyyzzyyzyz{zzyzyy{zzzzyzzzz{zyzyyyyyyyyyyyyzz{zyyyyyyyzy{yyzyyz{{yzyzy{{yzzzyy{zzyyyyzyyyyyy{yyyy{z{yzyyyyyyyzyyyyzzyzyzyzzzzyzzyzzzzyyy{zyzyyyyyzyyy{zyzzyyyyyyyzyyyyzzzzyzyzzzzyzzzzzzzyyy{zyzyyyyyzyyz{zyzyyyyyzy{zyzy{{{yyzy{{yzy{{zy{{yzyzyyzyyy{yyyyy{y{zyyyyyyyzyy{yzyzzz{yyyzzzzyzzzyz{zzzyyyyyyyyyy{yyyyyy{yyyyyyyy{zyyy{zzzyyy{zzzyyzyyz{zzyzyyyyyy{yyyyy{yyzyyyyyyyzyz{yyzz{{{yzyy{{{zzyzzy{{zyzyyzyyyyyy{yyzz{z{yzyyyyzyyyzyzyzzyzzzzzzzzzzzyzzzzyyy{zyzyyyyyzyyy{zyzxyyyyyy{yyyyy{zyyyy{yzzy{yyy{{yyyzyyyyyy{yzyyy{yyzyxyyyyyyyy{yyyyyy{yyyyyz{yy{yyz{{zyyyyyyyyyyz{yyyyyz{yzyyyyyyyzzyyyyz{zyzyzzzzyzzz{zzzyyy{zyzyyyyyzyyz{zyzyyyyyzy{{yyzy{{y{zy{{zzy{{zyy{zzzzyyzzyy{yy{yy{y{z{yyz{yyyyyzy{{yyzy{z{{yz{z{{yyzzyz{yzyzzyzyyy{yy{yy{z{z{yzyyyyzyzyzyzyz{zyzzz{zzzzzzzzz{zyzy{zyzyyyyyzyzz{zyzyyyyyzy{yyyzy{zzyyzy{zzy{zyy{{zyyzyzyyyy{yzyyy{yyzyyyyyyyyyy{yyyyyz{{yyyyz{yy{zy{{{zyyyyzyyyyyz{yyyy{z{yzyyyyyyy{zyyyyzz{zyzzzzzzz{zz{z{zyy{{zzyyzz{zyyz{z{z{{zyyyzzz{yzyzz{zzyzzz{zzzzzz{z{zzyz{{zyzz{zzyzy{z{zyzyyyyyzy{yyyzy{{zyyzy{{zzz{zz{{{zyzyzyyyy{yzyyy{z{zyyyyxyyzyzyyyzyz{yyyzyz{zzzz{yzz{yyzyyyyyyyyyyyyzy{yyyzyyyyyy{{zyyy{z{{zyz{z{{z{zz{{zzyzy{zyzy{yy{zy{y{z{zz{y{y{y{{z{{y{z{{z{z{z{{z{{zy{{z{{y{z{zy{yz{z{{y{z{z{z{y{y{y{{z{{y{{z{z{z{{z{z{{zy{{z{{y{z{zy{yz{z{{z{z{zzyyyyzy{{zyzy{{z{zzz{{z{z{{zyz{{yzy{zyzy{yy{zy{y{z{zzyyyyzy{{zyzy{zz{zzz{zz{z{zzzz{zzzy{zyzy{yy{zy{z{z{zyzzzyzzzzzzzzz{{zzzzz{{zzz{zz{z{zzzzzzzzzyzzzzzy{zzyzz{zzz{z{{zz{z{{{{z{z{{{{z{{{{{{{zz{{zzyz{{{zzzy{{{z{{y{{{{{z{{{{{{{z{{{{{{{{{{{{{{{{{{{{{{z{{{zy{{{{zzyzzyzzzzzzzzzzz{{zzzzz{{zzz{zz{z{zzzzzzzyzzzzzyzz{zzzyzyzyzyzzyzzyz{{zyzyz{{zzz{zz{z{zzzzzyzyzyzzyzzy{zzyyyyzyzyyyzyyyyyyyzzyyyyzzzzyzzzzzzzzzyzzzzyyy{zyzyyyyyzyy{zyzyyyyyyy{zyyyy{y{zyyy{y{zy{{zy{{{zzzyyzzyy{yzyyy{{zzyyzyzyzyz{yzzyz{z{yzyz{z{zz{zz{{{zzzyzzzyyzyy{yzzz{{yzyyyyzyyyzyzyzzzyzzzzzzzzzzzzzzzzyyy{zyzyyyyyzyyz{zzyyxyyzy{yyyzy{{yyyzy{{yzz{{yyy{{yyzyyyyyy{yyyyy{y{yyyyyxzyzzyyzyzyzyzyzyzzzyzzzyzzzzyzyz{yyyzyyyyyzyz{yyyyyyyyyzyyyyy{yzyzy{{zzzy{{yzz{yyyyzyyyyy{yyyyy{z{yyzyyyyyy{zyyyyy{yzzyyyyyzzzyyy{zyzyyyyyzyyyyyyyyyy{yzyyyyyyyzyyyyyyzyxxyyyyzxyyyyyyyzyyyyyyzyyyyxyyyyzyyyyyyy{yyyyyyyyyyyyy{yzyyy{yyyzyzzzzz{yyyzyyyyyy{yyyyy{zyyyyyyyyyyzzyyyyzzzyyyy{zzyyzyyzzz{yyyzyyyxyyyyyyyyz{yy{yyyyyy{{yyyyy{{zzyzyy{{yzzyzy{zyyyyyyzyyyyy{yyyz{y{{yyyyyyx{yyyyyy{yyyyzyy{yzzyyy{{yyyyyyzyxyzy{yxyzyy{yyyyyzyzzyzyzyzzzzzyzzzzzzzyzzzzyzyz{yyxzyyyyyzyz{yyzyyyyyyy{zyyy{{yzzy{{zyzz{{yz{{yzyyzyyzyy{yyyyy{z{yzyyz{yyyyyyyyzzyyy{zzyyy{zzzzyzzzzz{zyyzyyyyyy{yyyyy{zyyy{yyyyyyy{{yyyz{{zzyy{z{{yzyyzy{{yyyzyyzyyyyy{yyyz{y{yyyyxzxzyyyzyzyyzyzzzzzyzzzyzzzzzzyz{yyxzyyyyyzyz{yy{yyyyyyxz{yyyyy{yzyyzyz{yzzyyz{{yyyyzyzyxyzy{yxyzyy{zyyyyzyz{zyzyzy{zzzyzzzzzzzyz{zzzzyz{yzyzyyyyyzyz{yz{yyyyyyyz{yyyy{z{zy{{zzyy{{yzy{zyyyzyzzyy{yy{yy{z{y{yz{{yyyyyyy{{yyyy{{{zz{zz{{yzzzzz{zyzzzzyzyz{zy{yy{z{y{yyyyyzyzyyyzyzzyyzyz{zzyzzzyzzz{zzyz{yyyzyyyyyzyz{yyyyyyyyyyyyyyyy{yyyyy{y{yy{zyz{{zyyyyyyyyy{zyyyy{zyyyzyyyyyyy{zyyyyy{zzzyyy{zzzzyy{zzyyyyyyzyyyyyyyyyz{yz{yyyyyyy{{yyyyy{{zzyyzy{zzzyy{{{zyyyzyzyyyzy{yyyz{y{{zyzyzyzz{zzyzyz{zzzyzzzzzzyzz{z{zyz{{zyzyzz{zzyz{z{{{yyyzyzyzzyyzyz{zzzyz{z{zzzzz{z{zzzz{{yyyz{zzyyz{z{zyyyyyyyyyzyyyyy{zyyyy{{z{yy{yz{{{yyyzyyyyy{zyyyy{z{yy{yyyyzyzz{yzyz{z{zzz{zzz{z{zyz{zzzyz{yzyz{yy{yz{z{y{{yyyyzyz{{yzyz{{{zzz{zz{{z{zy{{zyzyz{yzyz{yy{yz{z{y{{y{yzz{z{{yz{z{{{z{z{zz{{z{z{z{{yz{z{y{{z{zy{yz{z{z{{{yzy{z{zy{yz{z{y{z{z{{z{{z{{{z{{yz{z{y{{z{zy{yz{z{y{{yyyyzyzy{yzyz{y{zyz{{zz{z{{yzz{{zyz{yzyz{yy{yz{z{y{zyzyyyzy{zyyzyz{zzzyz{z{zzz{zz{z{zzyzzzzyzzyzyyzz{yzzzzzzzzz{zzzzzz{zzzzz{z{zzz{zz{z{zzzzzzyzzzzzyzzz{zz{{z{z{{{{{{{{{z{{{{{z{{{{{{{{{{{{{{{{{{{yz{{{zyzz{{{z{z{z{zz{z{{z{{{z{z{{{{{z{{{z{{{{{zz{{zzz{{{zyz{{{yzzzzzzzzy{zzzzzz{zzzzz{z{zzz{zz{z{zzzzzzzzzzyzzyzz{yzyyyzyyzyy{yyyyyyy{{yyyyy{{zzyyyy{{zzyyy{{yyyyyyyzyxyyy{yyz{y{yyyyyzyzzzyzyzyzzzzzyzzzzzzzyzzzzzzyz{yyxzyyyyyzz{yyzyyyyyyy{zyyyy{{zzzy{zy{zz{zyz{{{zyyyzyzyy{yyzyy{{zz{yyyyyyyy{yyyyzy{yyyz{z{{yz{zz{{{yyzzyyzyyzzy{yyzz{{yyxyxzyzzyyzxzzzzzyzzzzzzzzzyzzzzyzyz{yyxzyyyyyzyz{y{zzyzyzy{zyzzzy{zzyzzzy{zz{yzzz{|zyzzz{yzzzzz{zzz{yzzyyyyyyzyyyyz{zyzyzzy{zyzyzzy{zz{yzy{{zyyzzyyyyzzz{zzzyyyzyzyyzyyzyzzyyyyzzzzyzzyyzz{yzyyzzzyyyyyyyyyzyzyyyxyyyyyyyyyyyyyyyyyyyyyyyyyyzyzyyyyyyyyyyyxyyyyyyyz{zzzyzz{yyzzzz{yzyzzzzyzzzyzzy{{zyzzz{yzzzzz{zzzzzzyyyz{zyyyyyyzzyyyyzzzyyy{zzyzyyzyzyz{{yyzyzyyyy{yyyyy{zyzzzyyyyzzzyzyy{zzzyyyy|zyzzzzy|zz{yzy{zzzyyzyyyxyzz{zz{zzyzyz{zyzzzy{zzyzzzy{zz{yzzz{|zyzzz{yzzzzz{zzz{yzzzyyyyzyzyzyz{zzzyzzy{zzzyzzy{zz{yzy{{zzyzzyyyyzzz{zz{zzyzyzz{yzzzz{yzyzzzzyzzzyzzz{{zyzzz{yzzzzz{zzzzzzyyz{zzyyyyzyzzyzyzzzzyy{zzzzzyzzzzz{{yzzzzzzyy{yyyyy{zyz{{zzyzzz{{zzz{{{zzyzz|{{yzzzz|z{{zzz{z{zzzzzz{zzzz|{{zyyyyzy{{yzyy{{zyyzyz{{zzzzyz{z{yzyyzzzyyzzyzyyzz|{z{zzyzzzz{zzzzz{zzyzzzz{zz{zzzz{|zzzzz{zzzzzz{zzz{yz{zyyyyzy{{yzyz{{zyzzy{z{zyzzy{{z{yzy{{zzyzzzzzyzzz|{z{zzyzyzz{zyzz{z{zy{z|zyz{{zz|z{{zyz{z{yzz{zz{zz{z{zzz{{{zzyzzz{{zzzzz{{zz{zz{{yzzzzzz{{zzzzz{zzz{zz{zz{z|{zyyyyyyyzyyyyz{zyzyzy|zzzzzzy|zz{yzy{{zyyzzzzyyzzz{zzzyyyyzyzzyzyyzzzzyyyzzzzyzzyzzz{yzyzzzzyyyzzyyyyzyz{zyyyyzy{{yzyyz{{zyyzy{{zzzzyz{z{yzyyzzzyyzzyzyyzz|{{{zzyzzz{{zzzzz{{zzyzzz{zz{zzz{{|zzzzz{zzzzzz{zzz{|{z{zzzzzzz{zzzz{z{{zzzz{z{z{zz{z{{zzz{{{zzzz{z{zzz{{z{{zyyyyyyyzzyyyz{zzzyz{z{zzzzzz{z{{yzz{{zyyz{zzyyz{z{zzzyzyzyzzzzyzy{{zyzy{z|{zy{yz|{{{zyz{yzyzy{zzzzy{{{zz{zzyzyzz{zyzz{z{zzz{z{z{z{zyzz{{zzz{{{yzz{zz{zz{z{zz{zzyzzzz{zzzz{z{zzz{z{z{z{zzzz{{zzz{{{zzz{zz{zz{z{z{{zzyzzz{{zzzz{{{zzz{z{{{z{zzz{{{zzz{{{zzz{zz{zz{z|{{{z{z{z{{{{z{z{{{{{z{{{{{{{{z{{{|{z{{{{z{z{z{{{z{{|{{z{z{y{yzz{{y{z{{{z{z{{|{{z{{z{|{{{z{{{{y{z{zz{zz{{{z{zzyzyzy{{yzyy{{{{yzzy|{{{z{zy|{z|zyz{{zyyz{zzyyz{|{{zzyzyzy{{yzyy{{{{yzzy|{{{z{zy|{z|yyz{{zyzz{zzyyz{|{{zzzzzzz{{zzzz{{{{zzzz|{{{z{zz|{z|zzz{{zyzz{zzyzz{|{{{{{z{{{{{{{{{{{{{{{z{|{{{z{{{|{{|{{{{|{{zz||{{zz{|{{z{z{z|z{{z|z{||{|z{{z||{{{{|{|{{|z|z|{|z{{|{zz{{{|{yyyzzyzzzzyzzyyyyzyzzyzyyzzzzyyyyzzzzyzzyzzz{yzyzzzzyyyyyyyyzzz{{zzyzzz{{zzzzz{{zzyzzz{{zzzzzz{{{zzzyz{zzyzzz{zzz|{zzyyyyzyzzyzyz{zzzyzzy{zzzzzzy{zz{yzy{{zzyzyzzyyzz{z{zyzyzzz{{zzzyz{{zzy{zz{{z{{zzz{{|zzzzzzzzy{zzzzy{|{z{zzyzyzz{zyzz{{{zzyzz|{{zz{yz|{{|zyz{y{yzzzzy{zzz{{zzzzzz{zzzzz{{z{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{yzyyyyyzzzyyyzzz{yyyy{zzzyzyyzzz{zyyyzzyyyyy{yyyyyzzyzyyyyyzzzyyyzzz{yyyyzzzyy{yyzzz{zyyyzzyyyyy|yyyyy{zy{zzzzzz|zzzz{z|{zzzz{zz{z{zz{z{|zzzz{zzzzzz{{{zzz{zyzzzz{z{zz{zz{{z{zzzz{{z{z{zz{{z|{z{z{{z{zzz|zyzzz{{zyyy{{zyyyyyzzzyyyzzz{yyyy{zzzzzyy{zz{zyyyzzyyyyz|yyyyz{zy{zzzzzz{zzzz{z{{zzzz{z{{zzzz{z{{{zzz{zzzzzz{yyzzzz{zzzzzzzz{zzzz{{z{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{y{zzzzzzz|zzz{z|{zzzz{zz{z{zz{z{|zzzz{zzzzzz|{{zzz{zyzzzzzzz{zzzz{{z{zzzz{{z{z{zz{{z|{z{z{{z{zzz|zzzzz{{zyy{{zzzyzzzzzzzzzzz{zyzz{zzzzzzz{zz{zzzzzzyzzzz|yyzzz{zy{zzzzzzz|zzzzz|{zzzz{z|zzzzz{z{{zzzzzzyzzzz{{{zzzzzy{zzzzzzz{zzzz{{{zzzz{z{{zzzz{z{{{zzz{zzzzzz{yyzzzz{zzzzzzzz{{zzzz{{{zzzz{{z{zzzz{{z{{zzz{{zzzzz{yyzzzz{y{zzzzzz{|zzzz{||zzzz{|z{z{zz{|{|zzzz{{{zzzz{{{zzz{z{zzzzz{z{zz{zz{{z{zzz{{z{z{zz{{z|{z{z{{z{zzz|zzzzz{{zz{{{zzzzzz{{zzzz{{{{zzz{{{{zzzz{{z{zzzz{{zzzzz|yyzzz{zyzzzyzzzzzzzzyzzz{zyz{zzzy{zz{zz|zzzzzzyzzzz{yyzzz{zy{zzzzzzz|zzzzzz|{zzzzz|zzzzz{z{{zzzzzzyzzzz{{{zzzzzy{zzzzzzz{zzzz{{{{zzzz{{{zzzz{z{{{zzz{zzzzzz{yyzzzz{z{zzzzzz{|zzzz{{|{zzzz{{{z{zz{{{|{zzz{{zzzzz{{{zzz{{yzzzzz{z{zz{zz{|z{zzzz{|zz{zz{|z|{z{z{{{{zzz|zzzzz{{{{{{zzzzzz{|zzzzz||{zzzz{||zzzz{|{{zzzzz{{zzzz|{{zzz{z{zzzzzzz{zzzzz{|z{zzzz{|z{z{y{zz{zzzz{{{zzzz|yyzzz{z{zzzzzzz{zzzzz{|z{zzzz{|z{z{z{zz|zzzz{{{zzzz|yyzzz{z{{zzzzzz{|zzzz{||{zzzz{||{z{zzz{{zzzz{{{zzzz|{{zzz{z{{zzzzzz{{zzzz{|{{zzzz{|{{z{zz{{{{zzz{{{zzzz|yyzzz{{{{|{{{|{{{{|{|||{|{|z{||{|z{|{|||{{|{|{{|{|{|{y{|{{{{{zzz{zzz{{z{zz||{{z{zz||{{z|{z||{|z{z|{{zz{z|yyzzz|{{{zzzz{zz{z{zz{z{{zzzz{z{{z{{z{z{|{{z{zz{zzz|zzzzz{{z{zzzz{zz{z{zz{z{{zzzz{z{{z{{z{z{|{zz{zzzzzz|zzzzz{{z{zzzz{zz{z{zz{z{{zzzz{z{{z{{z{z{|{z{{zz{zzz|zzzzz{{z{zzzz{z{|z{zz{{|{zzzz{{|{z{{z{{{|{z{zzz{zzz|{{zzz{{z{|{z{|{{|{|{||{||{|{{|{||{{|{|{{|{{|{|{|{|z|{{{|z{{{yzy{{zy{{z{{{{{zyyyyyyzzzyyyzzz{yyzy{zzzz{yz{zz|zyyyzzyyyyz{yyyyzzyzzzyzzzzzzzzzzzz{zzzz{zzzz{zz{zz|zzzzzzyzzyz{yyzzzzz{zzzzzz{{zzzz{{{{zzzz{{{{z{zz{{{|zzzz{zzzzzz{yyzzzzz{zzzzzz{|zzzzz||{zzzz{||zz{zz{|{|zzzzz{{zzzz{{{zzzz{{zz{zzz{|z{zz{{||z{{z{{||{|{z{{{|{z{z{{{zz{{|{{zz{|{|{{{|{{|{|{||{||{|{{|{||{||{|{||{{|{|{|~|{|{|}|{|{|{~~|yyyz{{|{zyz{{||{y{{{{||y|z{{{|{{{z{{{||z{z{|}y{z{|{}y||z{|{{|{|{||{||{|{{|{||y||{|{|{{{|{|{|||{|{|}y{|{|{}{|{{{{{{|{{{{{{||{{{{{{||z|{{{{|{{{{{{{||{{{{|}z{{{|{}z}}{{}{{}{z{}|{}}{}{{|{}|{||{}{}}{{}{}{|}}{}{|}|{}{|{}}~|||||}~||{|}}~|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~z{|{||}{zz}z|{}z}{z|}{}{z{z}}z|{z}z}}{z}z}z||}z}{|{zz}{|{}z~|{{{|{{{|{||{||{|{{|{||{{|{|{||{{|{|{{~|{|{|{|{|{{{~~||{z{|{{||{||{||{|{{|{||z||{|{|{{{|{|{|||{|{|}z{|{|{}{}}{{{}{{}{{}|{}}{}{{|{}|{||{}{}}{{}{}{|}}{}{|}|{}{|{}}~||||||}~|||}}~|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~{|{||z{z{{{{|{{{z{|{{z{{{{||z|z{{{|{{{{{{{||{{z{|}z{z{|{}z|}{z{}{{|{}{}{|}{}{{{{}}z|{{}{}}{{}{}{||}{}{|}z{}{|{}z~|{{{|{{~{|{||{|{|{{|{||{||{|{||{{|{|{|~|{|{|}|{|{|{~~|||z|||}||||||}||||||}|||||||}|{{||||}|}|||||}{||||{}z}}{{{}{{}{}{}|{}}}{{|{}|{||{}{}}{{}{}{|}}{}{|}|{}{|{}}~||z|||}~||||}}~||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~|{|||{z{|{{|{|{||{||{|{zz|{y||{|{|{{{|{|{|||{|{|}z{|{|{}z||{z{|{{|{|{||{||{|{{z|{z||{|{|{{{|{|{|||{|{|}z{|{|{}z|}{z{}{{|{}{}|{|}{}{{|}}z||{}{}}{{}{}{||}{}{|}z{}{|{}z~|{{{|{{~{|{||{~|{|{{|{|{||{|{||{{|{|{|~|{|{|}|{|{|{~~}}|{|}|}}|}|}|}}}|}|||}}||||}}}}{|}|}}|}}|}||}||}||{}}~||||||}~||||}}~|||||}}~||||}}~|}|||}}~~||||}}}||||}~~{}|||z|||}||||||}|||||||}|||{zzz|{{||||}{}|||||}{||||{}{|||z|||}||||||}|||||||}|||{|zz|{{||||}|}|||||}{||||{}{|||z|||}||||||}|||||||}||||||{|{{||||}|}|||||}{||||{}{|}|z|}|}||}|}|}|}|}|||}}}||||}}}{|}|}}|}}|}||}{|}||{}{~||{|||}~|||||}~||||||}~||||||}|{||||}|~|||||}|||||{~~~|}|}|}}~}|}|}}~|}|}}}}~|}||}}}~}}|}}}~~|}|}}}}}|}|}~~}}|{{{|{z}{|{||{}|{|{{|{}|{{|{|{}|{|z|z|}|{|{|}|{|{{{}}}|{{{|{{}{|{||{}|{|{{|{}|{||{|{}|{{{|{|}|{|{|}|{|{|{}}}|{{{|{{}{|{||{}|{|{{|{}|{||{|{}|{{||{|}|{|{|}|{|{|{}}}|{{{|{{}{|{||{}|{|{{|{}|{||{|{}|{{|{{|}|{|{|}|{|{|{}}}}{{{}{{}{}{}|{}}{}{{|{}}{||{}{}}{{}{}|}}{}{|}|{}{|{}}~}|||}|}~|}|}}}~}|}||}}~}||}|}}~}||}|}}~}|}|}}}|}|||~~{z{|}zz{|}z{|}z|}{}|}|z{z{{z{|{{zz{{||{z{{{{||z|z{{{|{{{{z{{||{zz{|}zz{|{}z|z{z{{{{|{{{z{{||{z{{{{|{z|z{{{|{{{{{z{||{{z{|}z{{|{}z||{z{|{{|{|{||{||{|{{|{||z||{|{|{{{|{|{|||{|z|}z{||{}z}||{|||}}|||||}}||||||}}||{|||}}|{||||}|}||||{}||||{}}|}{{{}{{|{}{}|{|}{}{{|{}}z|{{}{}}{{}{}{||}{}{|}|{}{|}|~}~{~}~~~~}~}|~~}~}~~|~~}~||~}~~}{~}~}~~~}~}~|}|~}~|{~{{{|}z|{}|}|}|}}|~|}|}|~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}||}|~|}||~}}|{|~}|{}|~}|}||z}|}|}~}|}|}z||}|}|z}|{}|}{{z{{{{{{{{|{{{{{||{z{{||{|{{||{{}|||{{{z||{{{{y}|{{{{{{z{||{{{{||{{{|z||{{||||{|||||{{}|||{{{y||{{{{z}|{{{{}|{|}}|}||}~}|}|}~|{}|}~|}||}~|}|}|~|}|}z~|}|}|{}|{}|}{|z|{||{||||{|{||||{{||||{|||||{|}|||{|{z||{|{|~}|{{|{{{|}z|}{}|}|}}}|~|}|}|~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}|{|}|~|}|~}}|{|~}|{}|~}|}|||}|}|}~}|}|}z||}|}|z}|{}|}}|{|}|}|}|}~}|}|}~|{}|}~|}||}~|}|}|~|}|}z~|}|}|{}|{}|}{|z|{|~|{||z{|{||{|{{||{|{|||{|{|}|z|z|{z|{z|{|~}|{{|{{|z|{|||{|||{|{||{|{{||{|z|||{|{|}|z|{|z~||z|z|{}|{{|{{|}z|}{}|}|{|}}|~||}|~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}|{|}|~|}||~}}||~}|{}|~}|}|||}|}|}~}|}|}z||}|}|z}|{}|}}|{|}|}|}||}~}|}}~|{}|}~|}||}~|}|}|~|}|}z~|}|}|{}|{}|}{|z|{|~|{||~|{|{|||{{||||{|||||{|}|||{|{z||{|{|~}|{{|{{|z|{|||{|||~{|{|||{{||||{|||||{|}|||{|{~||{|{|{}|{{|{}|{|}|~|}||~}}|}|~}{}|~}|}||~}|}|}~}|}|}{||}|}|z}|{}|}|}{|}{}|}|}|}}|~|}|}|~}}}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}|{|}|~|}||~~}|}|~~|{}~~|}||}~|}|}~~|}|}z~|}|}|{}|{}|}||{|||~||||~|||||~||{||||||||||||}||||||z||||||~}|{|||{|z|{|||{|||~{|{||~|{{|||{|||||{|}|||{|{~||{|{|{}|{{|{}|{|}|~|}||~}}|}|~}|{}|~}}||~}|}|}~}|}|}{||}|}|z}|{}|}{{z{{||{{{|||{{{||||{{||{{|||||{{}|||{{{z||{{{{z}|{{{{}z}}|}}}}}}}}}~}}}}}~}{}}}~}}|}~}}}~|~}}}}~~}}}}}|~|}}}}}|{|}|~|}||~}}|}|~}|{}|~}|}||}|}|}~}|}|}z||}|}|~}|{}|}||{|||||||||~|||||~|{|||~||||||||}||||||~||||||{}|{|||}|{|}|~|}||~}}|}|~}|{}|~}|}||~}}|}~}|}|}{||}|}|{}|{}|}|{{{|||{|{||||{|||||{|||||||||{{{}||||{|z|||{|{{}|{|{||{{{|||{|{||||{|||||{|||||||||{{{}||||{|z|||{|{{}|{|{|}}~{~}~~~}~~~~}~}~~~~~}~~~~}|~~~~}~~~~}~}~~~}~}~~~|~}~}}|{|}|}|}||}~}|}|}~|{}|}~|}||}~|}|}||}|}~~|}|}|{}|{}|}}|{|}|~|}||~~}|}|~~|{}|~~|}||~~|}|}~}}|}{~|}|}|z}|{}|}}|z|}|}|}||}~}|}|}~|{}|}~|}||}~|}|}||||}z~|}|}|z}|{}|}}|z|}|}|}||}~}|}|}~|{}|}~|}||}~|}|}|||{}z~|}|}|z}|{}|}}|z|}|}|}||}~}|}|}~|{}|}~|}||}~|}|}|z|{|z~|}|}|z}|{}|}}~{~}~~~}~~~~}~}~~~~~}~~~~}|~~~~}~~~~~}~}~~}~}~~~|~}~}}}|}}}~}}}}~}}}}}~}}}}}~}}}|}~}}}}~~}}}}}||}}}}~~|{}}}|}{}|}~}|}}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}}|}~~|}|}||}{}|}~}|}}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}||}~~|}|{||}{}|}~}|}}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}|}}~~|}|}||}{}|}~}|}}~||}|}~|}}|}~|}||}~|}|}~~|}|}|||}|}|~~|}|}|}{}{}|z}|{z}|{{z}|{{{{z{{{{|zy{{{|{zy{{|||{{{||{{|{||{{}}||y{{z{zzy{z|{|{zz{z{|}z{||{|z}|{||z}{|z|z}|{{|z}|{{|z}|{|}}||{|{||{|{|}}{{{|{yzyyzz|yyyzz|zzyzz|zzyzz|zy{{z|zyz|{{zyzyy{yzyzy|zzzyy{|z||{||{|z{|{|{|z|||{|{||{{|{||{|}}|z{|{z{y|{|z|{|{|{{{z{{{|z{{{{|{z{{{|||{{{||{{|{|{{{}}||{{{z{zz{{z|{|{z{{}z}{}|}{}}{}{}{}{}}|{}{}}{{|{}}z}}}|}{}{z}z}z}z|{|{}z{|z|{|{|{||{|{|{|{|||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{{{z{{{{|{{{{|{z{{{|||{z{||{{|{||{{}}|{{{{z{zz{{z|{|{z{z{|}z{|z|{|{}|{|{}{|{|{}||{|{}|{{|{}|{|}}||{|{||{|{|}}{|{|{{|z|{|{||{|{|{|{|z|||{|{||{{|{||{|}}|{{|{z{z|{|z|{|{|{{}z}{}{|}{}}}{}{}{}}|{}{}}{{|{}}{}}}|}z}{z}z}{}z|{|{}{{|z|{|{~|{||{{|{|{|||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{{|z|{|{||{||{||{|{|||z|{||{{|{||{|}}||{|{z{z|{|{|{|{|{{|}z{|z|{|{}|{||{}{||{}||{|z}|{{|{}|{|}}||{|{||{|{|}}{|{|{||{|||}|||||}||||}|||||{|||{|}||||}}|||||{{||||{}{||||{}z}{}{|}{}}{}{}{}}}|{}{}}{{|{}}{}}}|}{}{z}z}{}z|{|{}{{|z|{|{~|{||{~{|{|{||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{||{|||}|||||}|||||}||||}|||{|}||||}}|||||{{||||z}{||||||{|||}}||||}}||||}}|||}}||{{}}|||}}|||||||||||}}{{||||}z{|z|{|{}|{||{}{|{|{}||{{}|{{|{}|{|}}||{|{||{|{|}}{|{|{|}{}|}}|}|}}}}|}|}}}}||}}}|{|}}}|}}}|}|}|{}|}|}{}{||}|{|z|{|{~|{||{~{|{|{~||{|{|{{|{||{|~}||{|{||{|{|~~{|{|{||{|||}|||||}|||||}|||||}||{|}||||}}|||||{{||||z}{||||{|z|{|{||{||{|{|{|{|||{|{||{|{||{|}}||{|{z{y|{|{|{|{|{{}y}{}{|}{}}{}{}{}{}}|{}{}}{|{}}{}}}|}{}{|}z}{}||{|{}{}|{}z}{}{}}{}}{}{}{}{}}|{}{}}{{|}}{}}}|}{}{|}{}{}}}{|{}{||{|||}~||||}~||||}~||||}~||{|}|||~}|||||||||||~~{||||||{|||}|||||}|||||}|||||}|||{|}|||}}|||||{{||||z}{||||{|z|{|{||{||{|{|{|{|||{|{||{{|{|||}}||{|{z{z|{|{|{|{|{{{z{{{{|{{{{{|{{{{{|||{{{||{{|{||{}}||{{{z{z{{{z|{|{{{~}z}~}~~}~}}~~~}~}~~}|~}~~}~{|~~}~}}~}~}~|}~}~}~~{|~}~}|}{}|}}~}|}}}~|}|}}~}||}}~}||}}~}|}~}}|}|}}|}|}~~|||}||}{}|}}}}|}}}}|}|}}}}||}}}}|{|}}}|}}}||}||}|}|}}}{||}|{}z}{}{}}{}}{}{}{}{}}|{}{}}{{|{}}{}}}||}{|}{}{}}}{|{}{{}z}{}{}}{}}{}{}{}{}}|{}{}}{{|{}}{}}}||{{|}{}{}}}{|{}{{}z}{}{}}{}}{}{}{}{}}|{}{}}{{|{}}{}}}||{z|}{}{}}}{|{}{}|||}}}~|}|}}~}|}}}~||}}}~|}}}}~|}|~}~|}|}}}|}|~~}|}|}||{||}}~|||}}~|||}}~|||}}~||}}}~|||~}~||||}||||~~}||||||{||}}~|||}}~|||}}~|||}}~||}}}~|||~}~||||}|{||~~}||||||{||}}~|||}}~|||}}~|||}}~||}}}~|||~}~||||}|{||~~}||||||{||}}~|||}}~|||}}~|||}}~||}}}~|||~}~||||}|{|{~~}||||}}{|{||{|{|{|{z{z{z{z{{z{{z{|{{z{z{|{|{z{|{|}|{|{{|}|y{zzzy{z{{|z}|{zzz{z{z{{zy{z{|{{zzz{|{{{z{|{|||{|{{|}|{yzzzzzzy{zz{{{zyyzzzyyyyyzzzyyyzzzzzyyyzzzzyzzzzyz{zzzyyz{zyyyzxzyyyyyzzyyy{{z{||}{{{z|}z{{{|y}{{{||z{{|||}z{{|}z{{{zzy{{{}z|{{{{{{z{{|{{{{{z{|{{{{|z|{{{|{{{|||{|{{|}|z{{|zzy{{{zz{{{{z{z{z{{{z{{z{||{z{z{|}|{z{|{|}|{|z{|}|{{zzzz{z{{|z}|{z{{z{{{z{{{||{z{{{||{}{{{|{}{|||{}{y|}|{{{zz{y{y{zz{{{{{{z{{{|{{{{|{|{{{{|{|{|{|{|{|}|{|{{|}|{{{|zz{{{{|z}|{{z{z{z{z{{{{z{|{{z{z{|{{{z{|{|||{z{{|}|z{zzzzzz{{zz{{{zz{|}z{{z{{||}{{{|}z{{{|z}{{{||z{{|||}{{{|}|{{{zzz{{{}z|{{{{{{z{{{|{{{{{{||{{{|{|}|{|{|{|}|{|{{|}|z{{|zz{{{{|z}|{{{{z{{{z{{{{|||{{{||{}{{{|{}{|||{}{{|}|{y{zz{y{{{zz{{{{z{z{z{z{{z{{z{{{z{z{|{{{{{|z~||{|{{~}|{{zzzz{z{{~~{{{z{{z{{||}{{{||}|{{||}|{|||}|{|}|}|{{|}|{{{zzy{{{}||}|{{{{z{{{|{{{{{|{|{{{|{|{{z|{|{|||{|{{|}|{{{|zzz{{{zz{{{{{|}z{{z{{{z{{{{{{{|{{{{{|{{{{z|{|||{|{{|}|{{{z{z{{{{{z{{{{{{z{{||}{{{||}||{{|}|}|||{|{|}|}|{{|}|{{{zzz{{{}||}|{{{{z{{{|{{{{||{|{{{||}{{{|{}{|||{}{{|}|{{{|z{z{{{zz{{{{z{z{z{z{{z{{z{~{{z{z{{{{{{|{~||{|z{~}|{{zzzz{z{{~~{{{z{{z{{{z{{{{||{||{{||{}|{|{}{{}|{}{{|}|{{{zz{{{{{|z}|{{{{z{{||}{{{||}z{{{||}z{||}z{||z}z{{|}|{{{zzz{{{}z|{{{{|}zz{z{z{z{{z{{z{||{z{z{|}|{{|{|}|{|{{|}|z{zzzz{z{{|z}|{z{{z{{||}{{{||}|{{{||}}{{||}{|||}}{{|}|{{{zz{{{{}z|{{{{{{z{{{|{{{{{|{~{{{{|{~{{{|{{~||{|{{~}|z{{|zz{{{{~~{{{{{{z{{||}{{{||}|{{{||}|{{||}||||}|{{|}|{{{zzy{{{}y|{{{{z{z{z{z{{z{{z{~|{z{z{~}|{z{~z}|{~z{|}~z{zzzz{z{{~~}|{z{{z{{zz{{{{||{||{{||{}{|{|{}{{|{}{{|}|{{{z||z{{{|z{|{{}z{{z{{{|{{{{||{|{{{||{}{{{|{}{|||}{{|}|{{{||{{{{{z|{{{{{{z{{||}{{{||}~{{{||}~{{||}~{~||}{{~}|{{{zzz{{{}~~{{{{{{z{{||}{{{||}|{{{||}|{{||}|{|||}|{|}|{{{zzz{{{}z|{{{{{{z{{{|{{{{{|{|{{{{|{|{{{|{|{|||{|{|}|{{{|zzz{{{zz{{{{{~z~{~z{~{~~|~~|~{~|~~}|~|~~{~}|~~{~}~{~{zz{~{~{~~}|~{}{{z{{~|}{{{~|}~{{{~|}~{{~|}~{~~|}~{{~}{{{{z{{{{}~~{{{{{{z{{||}{{{||}|{{{||}}{{||}}{|||}}{{|}|{{|z{{{{}z|{{{{{{z{{{|{{{{||{|{{{||{}{{{|{}{|||{}{{|}|{{|z{{{{{zz{{{{{{z{{{z{{{{||{|{{{||{}{{{|{}{|||{}{{|}|{{zz{{{{{zz{{{{|}|}|}|}}|}}|}~|}|}|}~}|}|}~|~}|}~|}~}~|}|||}|}}~~}|}||}{}|}|}}|}}|}~|}|}|}~}|}|}~|~}|}~|}~}~|}|||}|}}~~}|}||{{{|||}{|{||}~|{|||}~}|||}~|~}|}~|{~}~|{|||||{}~~}|{||{{{|||}{|{||}~|{|||}~}|||}~|~}|}~|{~}~|{||||{{}~~}|{{|{{{|||}{|{||}~|{|||}~}|||}~|~}|}~|{~}~|{||||{|}~~}|{||||{z{{z{{{z{z{{{|z{z{{|{{|{{{|{||{|{|{||{|{||||}||{{|z|{z|{zz{|{{{z{z{z|{zz{z{}z{z{z{||{|{z{||}|{|zz|}|y{{zyy{zz{|z}|{zzzyzzzzzzzzz{zzyzzz{zzzzzz{zzzz{zzzz}|zzzzzzzzz{zzyzzyyxxyxzzyyyxzzzzyyyzzzzzzyyz{zzzz{yyy{zyyxyyyyyzzyzzyyzzyzzzzzzzzzzz{zzzyzzzz{zzzz{{{zz{z{|}zzyz{{zzzzy{z{zz{zzz{{|z{z{y|}{z{{{z}z|{{{|z{|{|}{zz|}zz{{yyy{z|}z|{z{{z{z{{||{z{{z{{|{{{|{||{|{|{||{|{||||}||{{|z|{z|{zz{|{{z{z{z{|{zz{z{}|{z{z{||}|{z{||}|{|zz|}|z{{zzz{zz{|z}|{{z{z{{{|{z{{|}{|{{{|}||{|{|}||{|}||{|}||{{{{|{z|}{|{|{{z{z{{{||z{{|{}z{{{|{||{|{|{||}|{|z||}|z{{|yz{z|{|z}|{{zzz{z{zz{z{z{{z{z{z{||{{{z{||{|{zzz|}|z{{zzzzzz{zz{z{z{yzyzzzzz{zzz{zz{y{z{z{zz{z{{{zz{{{|}{{yz{{zz{zz{z{zz{z{z{{{||{z{|}{|{{{z}||{|{|{||{|}||z|}||{{zy|{z|}z|{|{{z{z{{{||{z{{{}|{{{|{||}|{|{||}|{|z||}|z{{|zz{z|{|z}|{{zzz{z{zz{z}{z{z{}{|{z|{|{|{}}{|{}zz|}|zz{zzzzzz{zz{z{{z{z{z{z|{z}{z{|{}{|{|z{|{|{}}{|{}|z|}||{zzz|{zz{zz{|{{z{z{{{||{z{{|}}{{{|}||{|{|}||}|}|z{|}|z{{{{y{z|}||}|{{zzz{{{|z{z{{|{{z{{|{||{{z|{||{|{|z||}|z{{|zzzz|{zz{zz{|}z{z{z{z{z|{zz{z{{|{zz{||{|zz{||{|{||{|}||{z{{|{zz{{z{|{{z{z{{{||{z{{|}}|{{{}||}|{|{||}|}|zz|}|z{{yzz{z|}||}|{{zzz{{{|z{z}{|{{z{}{|||{|{|{}}{|{}z||}|z{{|zzzz|{zz{zz{zzz{z{zz{zz{z{{z{z{z{~{{{z{|~{|{|z{~}|zz{{{zzzz{~~{z{{z{z{z{z|{zz{z{{|{z{z{~{|{z{~|{|{~|z|}~|{zzz|{zz{~~{|{{z{z{z{z|{z}{z{}|{}{|{|z|{|{}}}|{}zz|}|z{{zzz{zz{|z}|{{zzz{{{|z{z{{|}{z{{{|}z|{{|}{|{z}{z{|}|z{{{{z{z|}{|{z{|}z{z{z{{{z|{z{{z{}|{{{z{||}|{{||}|{|z{|}|z{{{{z{zz{|{}|{{zzz{{{|z{z}{|}{z{}{|}z|{|{|}}{|}}zz|}|z{{zzz{z|}z|{z{{zzz{{{|z{z{{|{{z{{{|{~~{{{|{~{|{|z|~}|z{{|{zzz|{~~{zz{z{z{z{z|{zz{z{}|{z{z{~~}|{z{~}|{~zz|}~z{{zzz{zz{~~}|{{z{z{z{z|{z}{z{{|{}{|{||{|{|{}}|{}|z|}||{zz||{zz{|z{|{}{{zzz{{{|z{z}{|{{z{}{|{||{|{|{}}{|}z||}|z{{||zzz|{{|{zz{zzz{{{|z{z{{|}{z{{{|}~~{{{|}~~{|}z{~}|z{{{{z{z|}~~{z{{zzz{{{|z{z{{|}{z{{{|}||{{{|}||{|}|z|}|z{{zzz{z|}z|{z{{z{z{z{z|{z}{z{}|{}{|{||}|{|{}}}|{}||}||{{{{|{zz{|z}|{~z{z~z{z|~z}~z{}|~}~|~~~}|~|~~~}|~~z{}~z~{{{z~zz{~~}|~}{{z{{{~|z{{}~|}{z~}~|}~~~|~|}~~~|}~{{~}{{~{{z{{|}~~{z{{zzz{{{|z{z}{|}{z{}{|}||{|{|}}}{|}}z||}|{{|{z{z|}{|{z{{zzz{{{|z{z}{|{{z{}{|{||{|{|{}}{|{}z||}|z{|{zzz|{{z{z{{|{|{|{||{||{|}}|{|{|}~~}|{|}~~}|}~||~}~|{|||{||}~~}|{}|}|}|}||}||}|}}|}|}|}~~}|}|}~~}|}~||~}~|}}||}||}~~}|}}|{|}|}||}||}|}}|}|}|}~~}|}|}~~}|}~||~}~|}}||}||}~~}|}{|{|{|{||{||{|}}|{|{|}~~}|{|}~~}|}~||~}~|{{|||||}~~}|{{|{|{|{||{||{|}}|{|{|}~~}|{|}~~}|}~||~}~|{{|||{|}~~}|{{||||{z{z{z{z{z{{z{{z{||{z{z{|}|{z{|}|z|{|}|{z|}|zz{zzz{{|}z|{z|z{z{z{{z{{z{||{|{{{|{|{|{|{|||{|{|{||}||z{|z|{{|{zz{||{{z{z{}|y{z{zz}y{{{z{{z|{{{|zz}|{|{zz}|zz{yyy{{z{|z}|zyyxyxyzzyyxyzzyzyyyzzzzyyyyzyzzzz{yyzzzyxyyxzyyyyzyyzyyyz{yzzyzzzz{zzzzzzz{zzzyzzz{zzzzzzz{zzzzz|}zzzzzzzzzzyzz{zz{z{z{{{z{{z{||{z{z{z}|{z{|{|z|{|}|{y|}|zz{yyz{{|}z|{z|{z{z{z{|{{z{z|{|{{{|{|{|{|{|||{|{|{||}||z{|z|{{|{zz{|z{z{z{z{z{{z{zz{|{}{z{}{|{|{|z}{|{}zz|}|zzzzzz{{z{zz{z|{z{z{z{{{{z{||{|{{{|}|{|{|}|z|{|}|{z|}||z{zz|{{|}z|{||{z{z{z{}|{z{||}z{{{|{|{|{|{|||}|{|{||}|zz{|yz{{|{|z}|yyzzyz{z{z{z{{z{{{z|{z{z{z{|{z{{{|zz{|{|{z|}|zzzzzz{{z{zz{z|{z{z{z{{|{{z||{|{{{z}|{|{|{|z|{|}|{z|}||z{zy|{{|}z|{||{z{z{z{}|{{z{|}|{{{|{|}|{|{|||}|{|{||}|{z{|{{{{|{|{}|z{z{z{z{{z{{z{z{z{z{z{|{z{{{~z|{|{~zz|}~{zzz{{{{z{~~{z|{z{z{z{{|{{z{z||{}{z{}{|{|{|z}{|{}{z|}||zzzz|{zz{zz{||{z{z{z{}|{{z{||}{{{|}|{|{|}|z|}|}|{z|}|zz{zzy{{|}||}|z{z{z{z{{z{{z{||{zz{|{|{zz|{|||{|{|{||}|{z{|{{z{|{z{{z{|}z|{z{z{z{{|{{z{z|{|{{z{|{|z{{|z|{|{|{z|}||zzzz|{zz{zz{||{z{z{z{}|{{z{||}|{{{}|}|{|{|z|}|}|{z|}|{z{y{{{{|}||}|z{z{z{z{{z{{z{||{|{}{|}{|{|{z|}{|{}{||}|zz{|zzz{|{zz{z|{z{z{z{{|{{z{z~{|{{{z{{|{{{~z|{|{~{z|}~|zzz{|{zz{~~{||{z{z{z{}|{{z{zz}|{}{z{}|{|{|z}}|{}{z|}|zz{zzz{{z{|z}|z{z{z{z{{z{{z{||{z{{{|}|{{|}|z|{|}|{z|}|{z{z{{{{|}{|{z|}z|{z{z{z{}|{{z{zz}|{{{z{{}|{{|z{}z{|{z|}|{z{z{{{{z{|{}|z{z{z{z{{z{{z{||{|{}{|}}{|{|zz}{|}}{z|}|zz{zzz{{|}z|{zz{z{z{z{{z{{z{|~{z{z{|{~{z{|{|~{|{|{|~}|zz{|zzz{|{~~{z|{z{z{z{}|{{z{z|}|{{{z{|}|{{{||}|{|{z|}|zz{zzz{{z{|z}||{z{z{z{}|{{z{z~}|{{{z{~}|{{{~z}|{~{z|}~{z{z{{{{z{~~}||{z{z{z{{|{{z{z|{|{}{z{}{|{|{|z}|{}{z|}||zzz||{zz{|{{|}{z{z{z{z{{z{{z{||{|{}{|{}{|{|{||}{|}{||}|zz{||zz{|{z|{zz{z{z{z{{z{{z{|~{z{z{|}~{z{|}~z~{|}{z~}|zz{zzz{{|}~~{z|{z{z{z{{|{{z{z|{|{}{z{}{|{|{|z}{|{}z|}||zzz{|{{z{z{{||{z{z{z{}|{{z{z|}|{}{z{}}|{|{|z}}|{}{|}||z{z{|{{z{|{}||~z~z{{{}|~~{{z~}|~}~z{~}|~|~~{~}|~~{{}~{{{z{{~{z{~~}|}z{z~z~z~{z~~z~|~~|~}~|}~~|~|}~z~~|}~~z~}{z~z{{{~|}~~{zz{z{z{z{{z{{z{||{|{}{|}}{|{|}||}{|}}{||}|z{|{{{{|}z|{z|{|{|{|{}|{{|{|~}|{|{|}~}|{|}~|~}|}~{|~}~|{|||{{|}~~}||{|{|{|{}|{{|{|~}|{|{|}~}|{|}~|~}|}~{|~}~|||||{{|}~~}||}|}|}|}}|}}|}|~}|}|}|}~}|}|}~|~}|}~}|~}~||}||}}|}~~}||}|}|}|}}|}}|}|~}|}|}|}~}|}|}~|~}|}~}|~}~||}||}}|}~~}||{|{|{|{}|{{|{|~}|{|{|}~}|{|}~|~}|}~{|~}~||{|||{|}~~}|z{z{||||{z{{{{{{z{|{{{{}{||{{{{}{|{{{y{}{|||{{{|}|y{y{zz{{{{zz{{{z{z{z|{zz{z{|{z{z{|{|{z{|}{z|{|}|z{{|}|{z{zzzz{|}z|{{|{{{{{|{z{{{{|y|{{{{{y{|{{{{{|{|||{{y|}|{{yyz|{{{{zy{zzyxyxyzzzyxyyzzzyyzzyzzyzy{yyzzz{zyyyz{yxyzyyzyyy{zyzzz{zz{zzz{z{z{{z{zz{zz{zz{z{{z{zz|zz{zz}|{z{zzzz{z{zzzyyzz{y{z{z{zz|{zzyz{|{zzz{{{|{z{{{{{|{|||zy{|}|yzzzzzz{{{zz{{z{z{z{|{zz{z{|{z{z{{{|{z{|{{{|{|}|z{y|}|{z{yzzz{|}z|{{z{z{z{z{{z{z{|{{{z{{z|{{{{{{{|{||~z{{|}~{z{zzzz{{{~~{{z{{{{{{||{{{{}{||{{{{}{|{{{{{}{|||{y{|}|{{y{zz{{{{zz{{|{{{{{{|{{{{{|{|{{{|{|{|{|}{{|{|}|{{z|}|{{{zz|{{|}z|{zz{zyz{zzz{{z{{z{zz{zz{zz{z{{z{zz|zz{zz}|{z{zzzz{z{zzzz{|}z{z{z{z{z|{zz{{|{z{z{{{|{z{{{{{z{|||z{z|}|{zzzzzz{{{zz{{|{{{{{{|{|{{{|{|{{{{{|{|{|{{{|{|}|{{{|}|{{{zz|{{|}z|{{z{z{z{z~{{z{z{{{{z{{{|{{{{{{z|{||~z{{|}~{z{zzzz{{{~~{{|{{{{{{|{|{{{{}||{{{{}{|{{{{{}{|||{{{|}|{{z{z|{{{{zz{}|{{{{{{|}|{{{{|}|{{|{|{|||}{{|}|}|{{{|}|{{{zzz{{|}||}{z{{{{{{|{{{{{{|{{{{{{|z{{{{{{|{|||{{{|}|{{{z{z{{{{z{{{|}z{|{{{{{{|{|{{{{|{|{{{{|{|z{{{{|{|||{{{|}|{{zzz|{{{{zz{}|{{{{{{|}|{{{{|}||{{{|}|||{{{|}|}|{{{|}|{{{yzz{{|}||}}|{{{{{{|}|{{{{|}||{{{|}||{{{{|}|||{{{|}|{{{yzz{{{{|y}{|{{{{{{~{|{{{{~{|{{{{{{|{{{{{|{||~{{z|}~{{{zz|{{{{~~{}|{{{{{{|}|{{{{}}||{{{{}||{{{{}}|||{{{|}|{{{{zz{{{{|z}{z{z{z{z|{{z{z{|{{{z{|{|{{|}{{|{|}|z{z|}|{z{zzzz{|}z|{|}z}|{{{{{{z}|{{{{z}||{{{{z}||{{{z}z||{{{|}|{{{zzz{{{{|z}{z{{{{{{|{|{{{{}{||{{|{}{|{|{{}{|}{{{{|}|{{{{zz{{|}z|{{|{{{{{{|{|{{{{|{|{{{{{|{|{{{{|{|||{{{|}|{{zzz|{{{{zz{}|{{{{{{|}|{{{{|}||{{{{|}||{{{|}|||{{{|}|{{{zzz{{{{|z}}|{{{{{{~}|{{{{~}||{{{{~}||{{{{}||~{{{|}~{{{zzz{{{{~~}{|{{{{{{|{|{{{{}{||{{{{}{|{{{{{}|||{{{|}|{{{{||{{{{|z{}z{zz{z{{{|{|{{{{}{||{{|{}{|{|{{{}{|{{{{|}|{{z||z{{|{z|{{z{z{z{z~{zz{z{~{z{z{|z~{z{|}{z~{|}z{z~}|{z{zzzz{|}~~{{z{{{{{{|{|{{{{}{||{{{{}{|{{{{{}{|||{{|}|{{{{zz{{{{zz{{|{{{{{{|{|{{{{}{||{{{{}{|{{{{{}{|||{{|}|{{{{z|{{{{zz{}|{{{{{{|}|{{{{}}||{{{{}}||{{{{}}|||{{|}|{{{{z|{{{{|z}}|{{{{{{~}|{{{{~}|~{{{{~}|~{{{{~}|~~{{{}~{{{{z{{{{{~~}}{z~{{{~{~~|{~{~~~|~{~|{~~|~|}~{~~|}~{~{~}~{~{zz{~|}~~{}|{|{|{|~}||{|{~}|||{||~}|||}{|~}|}~|{|~}~|{||||{|}~~}}|{|{|{|~}||{|{~}|||{||~}|||}{|~}|}~|{|~}~{{|||{{|}~~}}|{|{|{|~}||{|{~}|||{||~}|||}{|~}|}~|{|~}~{|||||{|}~~}}|}|{|}|~}||}|}~}|}|}||~}|}|}}|~}|}~|}|~}~}|}|||}|}~~}}|}|}|}|~}||}|}~}|}|}||~}|}|}}|~}|}~|}|~}~}|}|||}|}~~}{{{z{{z{|||{|{{{|{|{{|{|||{|{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|}{z{}{}{{}{}}}{}{}{{}}{}{|}z}}{|{{}{}|}}}z}z}zz}{|{|z|{{z{z{|z{z{z||{{{z{{||{{{|z{{|{|{{zy||}}z{yy{y{z{|{|y|yyzyzy|zyzyy{|zzyzzy{|zzy{zy{|z{{yzy{|{|zyzy{yyyz{{|z|}||||||}z|||||}z||||||z|||||||}|{||||{}}||||{{|||{{}{}z|{{|{}z{|{||}z|z|{{|}z|{{|{|}z|{{|{||}}|{|{||{|{{{}}{z{|}y|{z{z{{|{{{yz||{{yz{{||{{{|{{||{|{{{y||}}{yzz{zzz{|{|z~{|{{{|{{{|{|||{|{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|{}{z{}{}{}{}}}{}{}{{}}{}{|}{}}{|{{}z}|}}}{}z}z{}{|{|z|}||z||||}|||||}z||||||z|||||||}|{|||||}}||||{{|||{{}{}{|{{{|{}{{{||}{|{|{{|}{|{||{|}{|{{|{||}}|{|{||{|{|{}}z{|}y|{z{z{{{|{{{{||{{{z{{||{z{|{{||{|{{{{{|}}{{zz{z{z{|{|z|}||z||||}|||||}|||||||}|||||||}|{|||||}}||||{{||||{}z~{|{{{|{~{{|{||{|{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|{}{z{}{}{{}{}}}}{}{{}}{}{|}{}}{|{{}{}|}}}{}z}z{}{|{|z|}||z||||}||||||}||||||{|||||||}|{|||||}}||||{{||||{}{}{|{{{|{}{{|{||}{||{{|}z|{||{|}{|{{|{||}}|{|{||{|{|{}}{|}z|{|{z{|{|{{|{|||{|{|{||{|z||{||{|{{|{||}}|{|z{z{|{|{|z|{|{z{|{|{{|{|||{|{|{||{|{||{||{|{{|{||}}|{|y{z{|{|{|{|}||z||||}||||||}||||||}|||||||}|{|||||}}||||{{||||{}z~{|{{{|{~{{|{||~{|{|{{|{|{||{||{|{{|{||}~|{|{||{|{|{~~|}}|z|}|}}|}|}}}}}|}||}}}||}|}}}|{|}|}|}}}|}|}{|}||{}{}{|{{{|{}{{|{||}{|{|{{|}{{||{|}{|{{|{||}}|{|{||{|{|{}}|}z}}||{|||}}|||||}}||||||}}|||||}}{{|||||}}|||||||||{{}}|{{{z{{{|{{{{{||{{{{{{||{{{|{||{|{{{{||}}{{{z{z{{{|{|z|{|{z{|{|{{|{|||{|{|{{||{|{||||{|{{|{||}}|{|z{z{|{|{|{|}||z||||}||||||}|||||||}||||||}|{|||||}}||||{{||||{}z~}||{|||~}|||||~}||||||~}||||||}|{|||||}~||||||||||{~~}{}{{{}{}{{}{}}}{}{}{{}}{}{|}{}}|{{}{}|}}}{}{}|{}{|{}}}||{}{{{}{}{{}{}}}{}{}{{}}{}{|}{}}{|{}{}|}}}{}z}|{}{|{||}{}{{{}{}{{}{}}}{}{}{{}}{}{|}{}}{|{z{||}}}{}{}|{}{|{}}}{}{{{}{}{{}{}}}{}{}{{}}{}{|}{}}{|{{{||}}}{}{}|{}{|{}}}{}{{{}{}{{}{}}}{}{}{{}}{}{|}{}}{|{{}||}}}{}{}|{}{|{}}}}}|{|}|}}|}|}}}}}|}||}}}}||}|}}}|{|}||}}}|}|}||}||{}}~}}|||}|~}|}|}}~}}|}||}~}}||}|}~}}||}|}}~}|}|}}|}|||~~}~~}~{~}~~~~}~}}~~}~}~~}~~}~|}~}~~|{~}~}~}}~}~}|~}~|{~~~}||||||~}|||||~}}|||||~}}|||||~}}}||||~}~{|{|}||||}~~~}||||||~}|||||~}}|||||~}}|||||~}}}||||~}~||{|}||||}~~~}||||||~}|||||~}}|||||~}}|||||~}}}||||~}~||{|}||||}~~~}||||||~}|||||~}}|||||~}}|||||~}}}||||~}~||||}||||}~~~}|}|}|}~}}|}||~}}}|}}|~}}}||}|~}}}}|}|~}~|}|}}}|}|}~~z{|{|{|{||{|{}}|{{{|{||{|{|||||{|{{||||{{|{|||||{|{|||}|{|{||z{|{{|}~|{{{{{|{{{{{||||{{{{||||{{{{|||||{{{|||}{{{{||y{{{{|}yz{{{{{|{{{{{||{{{{{{||z{z{{{||z{|{{{|||}{{{{||y{{{{|}y|{||{|||{{|{|||{|{||||{||{{|||||||{||||}{|{|||{|{|{|}z~|}{|}}~}|}||}~|{|}}|}~|}{|}|}z||}|}|}~}|}|}||y}|}{|}z|}|{||~||}|}}~|}|}||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{{{|}z|{{{{|{|{|{||{||{|{z|{||{{{{|z|||z|{|z|}|z|z||~{|{{|}z~|{{{|{z{|{||{||{|{{|{||{{|{|{|||{|z|z|}|{|z{|z{|{{|}~|{|{|{|||{|{|||{|{||||{||{{|||||||{||||}{|{|||{|{|{|}z~|}{}|}}~}}||}~|{|}}|}~|}{|}|}|||}|}|}~}|}|}||z}|}{|}z|}|{|}|~||}}}~|}|}||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{{|}z~|}{}|}}~}|}|}~|}|}}|}~|}{{}|}~||}|}|}~}|}|}||{}|}{|}z|{{{{|{~|{|{||||{|{{||||{{{{|||||{|{|||}|{|{||~{|{{|}z~|{{{|{|~{|{||||{|{{||||{{|{|||||{|{|||}|{|{||z{|{{|}~}|}{}|}~}}|}||~}}|}}|~}|}{|}|~}||}|}|~|}|}|}|~{}|}{|}{~|}{}|}}~}|}||}~||}}|}~|}{|}|}|||}|}|}~}|}|}||z}|}{|}z|}|{|}|~||}|{}~|}|||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{|}z|{{{{{{||{{{{||||{{{{{||{{{{|||||{{{|||}{{{{||z{{{{|}z~|}{}|}}~}|}||}~|}|}}}~|}{{}|}~||}|}|}~}|}|}||{}|}{|}z|{{{{|{~|{|{||~||{|{{|||{{{{|||||{|{|||}|{|{||~{|{{|}z~||{||||~||||||~|||||||||{|||||||||||||}||||||z|||{|}~~|}{}|}~~}|}||~~|}|}}|~~}{|}|~}||}|}|~~}|}|}|~z}|}{|}{|}|{|}|~||}|}}~|}|}||}~|}}}|}~|}||}|}~|~}|}|}~~|}|}|~||}{|{|{|{||||{|{|||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{|{|{|{||||{|{|||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{~|}{}|}}~}|}||}~|}|}}|}~|}{{}}~||}|}|}~}|}|}||{}|}{|}{|{|{|||~||||||~|||||||~|||{{|||||||||||}||||||~|||{|}z~|}{}|}}~}|}||}~|}|}}|}~|}{|}|}||}|}|}~}|}|}||z}|}{|}~}}}{}}}~}}}}}}~}}}}}}}~}}}{}}}~}|}}}}~|~}}}}}~~}}}}|~|}z}|}{}|}~}}|}||~}|}|}}|~}|}{|}|~}|||{|z|}|}|}|~z}|}{|}z}|}{}|}~}}|}||~}|}|}}|~}|}{|}|~}||}{|||}|}|}|~z}|}{|}z}|}{}|}~}}|}||~}|}|}}|~}|}{|}|~}||}||||}|}|}|~z}|}{|}z~|}{}|}~~}|}||~~|}|}}|~~|}{|}|~~||}|}}~}|}|}|~{}|}{|}z}|}{}|}~}}|}||~}|}|}}|~}|}{|}|~}||}|}||}|}|}|~~}|}{|}z~~}{}~}~~}~}~~~~~}~}}~~~~}~~}~~~~|}~}~~~~}~}~~~}~}~|~~}~}|{|}||~|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~|}|}|||}|}|~~~}|{|}||~|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}}|}|||}|}|~~~}|{|}||~|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}||}|||{|}|~~~}|{|}||~|}|}}|~}|}||}|~}|}}|}|~}||}|}|~~}|}}|||}|}|~~~}}{}}}}~}}}}}}~}}}}}}}~}}}}}}}~}|}}}}}~~}}}}||}}}{|~~~~}{}~}~~}~}~~~~~}~}}~~~~}~~}~~~~|}~}~~~~~}~}~~}~}~|~~{{{|}z{{|}z{|}z|}{}z}~}}}}~}}~}}}~}~}}~}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}~~}}}}}}~}}}}}}~~~}}}}}}~~~}}}}}}~~~}}}}}}~~~}}}}}}~~}}}}}}}}~}}}}}}~~}}}}}~}~}}}}}}~}~}}}}}}~}~}}}}}}~}~}}}}}}~}}}}}}}}}~}}}}}}~~}}}}}~}}}}}}}}~}~}}}}}}~}~}}}}}}~}~}}}}}}~}}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}~}}}}}}~~}}}}}}~~}}}}}}~~~}}}}}}~~~}}}}}}~~~}}}}}}~~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~}~}}}}}}~}~}}}}}}~}~}}}}}}~}}}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~~~}}}}}}~~~}}}}}}~~~}}}}}}~~}}}}}}}}~}}}}}}~~}}}}}}~}}}}}}}~}~}}}}}}~}~}}}}}}~}~}}}}}}~}}}}}}}}}~}}}}}}~~}}}}}}~}}}}}}}~}~}}}}}}~}~}}}}}}~}~}}}}}}~}}}}}}}}}~}}}}}}~~}}}}}}~}}}}}}}~}~}}}}}}~}~}}}}}}~}~}}}}}}~}}}~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}~}}}}}}~~}}}}}}~}~}}}}}~}~}}}}}}~}~}}}}}}~}~}}}}}}~}~}}}}}}}~}}}}}}~~}}}}}}~~~}}}}}}~~}}}}}}~~~}}}}}}~~~}}}}}}~~~}}}}}}~~}}}}}}~~}}}}}}~}~}}}}}}~~}}}}}}~}~}}}}}}~}~}}}}}}~}}}}}}}}~~}}}}}}~~}}}}}}~~~}}}}}}~~}}}}}}~~~}}}}}}~~~}}}}}}~~}}}}}}}}~}}}}}}~~}}}}}}~}~}}}}}}~}}}}}}}~}~}}}}}}~}~}}}}}}~}}}}}}}}}~}}}}}}~~}}}}}}~}~}}}}}}~}}}}}}}~}~}}}}}}~}~}}}}}}~}}}~}~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}~}}}}}}~~}}}}}}~}~}}}}}}}}~}}}}}~}~}}}}}}~}~}}}}}}~}}}}}}}}}~}}}}}}~~}}}}}}~}~}}}}}}}}~}}}}}~}~}}}}}}~}~}}}}}}~}~}}}}}}}~}}}}}}~~}}}}}}~~~}}}}}}~~~}}}}}}~~}}}}}}~~~}}}}}}~~~}}}}}}~~}}}}}}~~}}}}}}~}~}}}}}}~}~}}}}}}~~}}}}}}~}~}}}}}}~}}}}}}}}~~}}}}}}~~}}}}}}~~~}}}}}}~~~}}}}}}~~}}}}}}~~~}}}}}}~~}}}}}}}}~}}}}}}~~}}}}}}~}~}}}}}}~}~}}}}}}~}}}}}}}~}~}}}}}}~}}}~}~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~}~~~~~~~}~~~~~~~~~~~~~~~~~~~~~}}}}}}}}~}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}}~}}}}}}~~}}}}}}~}~}}}}}}}}~}}}}}}~}~}}}}}~}~}}}}}}~}}}}}}}}}~}}}}}}~~}}}}}}~}~}}}}}}~}~}}}}}}}}~}}}}}~}~}}}}}}~}~}}}}}}}~}}}}}}~~}}}}}}~~~}}}}}}~~~}}}}}}~~~}}}}}}~~}}}}}}~~~}}}}}}~~}}}}}}~~}}}}}}~}~}}}}}}~}~}}}}}}~}~}}}}}}~~}}}}}}~}}}}}}}}~~}}}}}}~~}}}}}}~~~}}}}}}~~~}}}}}}~~~}}}}}}~~}}}}}}~~}}~}~}~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~}~~~~~~~}~~~~~~~}~~~~~~~~~~~~~}}}}}}}}~}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~~}}}}}}~}~}}}}}}}}~}}}}}}~}~}}}}}}~}~}}}}}~}}}}}}}}}~}}}}}}~~}}}}}}~}~}}}}}}~}~}}}}}}}}~}}}}}}~}~}}}}}~}}}}}}}}}~}}}}}}~~}}}}}}~}~}}}}}}~}~}}}}}}~}~}}}}}}}}~}}}}}~}~}}}}}}}~}}}}}}~~}}}}}}~~~}}}}}}~~~}}}}}}~~~}}}}}}~~~}}}}}}~~}}}}}}~~}}}}}}~~}}}}}}~}~}}}}}}~}~}}}}}}~}~}}}}}}~}~}}}}}}~}}~}~}}~}~}~}~}~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}~}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}|}}}~}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}|}}}~}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}~}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}~}}}}}}~}}}}}}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}~}}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}}~}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}~}}}}}}}~}}~}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}~}}}}}}}}~}}}}}}~}}}}}}~}}}}}}}}}}}}}}}~}}}}}}}~}}}}}}~}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}}}}}}}}}~}}}}}}}~}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}~~~}}}}~~}}~}}~~}}}}}}~~}}}}}}~}}}}}}}~}}}}}}}}~~}}}~~~~|~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}~~~~~}~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}~~~~~}~~~~~~~~~~|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}~~~~}~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}~~~~~|~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~~~~~}~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}~~~~}~~~~~~~~~~}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~~~~}~~~|~~~~~~}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}~~~}}}~}~}}~}}}~~}}}}}}~~}}}}}~}}}}}}}~}}}}}}}}~~}}~~~~~|~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~~~~~}~~~~}~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~~~~}~~~~~~~~~~~~~~~~}~~~~~}~~~~~~~~~~~~~~~~~~~}}}}}}}}~|}||}}}}}}}}}}}}}}}}|}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}~}~}}~}}}~~}}}}}}~~}}}}}}~}}}}}}~}}}}}}}}~~}}~~~~~}~~~~~~~~~~~~}~~~~~~|~~~~~~}~~~~~~~~~~~~~~~~~~~}}}~~~~~}~~~~}~~~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~}}}}~~~~~|~~~~}~~~~~~}~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}~~~}}}}~~}}~}}}~~}}}}}}~~}}}}}}~}}}}}}}~}}}}}}}}}}|}}}}||}}}}}|}}|}}}}|}}}}}}}|}}}}}}}}}}|}}}}}}}}}}}}}}}}}}~~~}}}~}~}}~}}|~~}}}}}}~~}}}|}}~}}}}}}}~}}}}}}}~~}}~~~~~|~~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~}}}~~~~~}~~~~}~~~~~~~~~~~~~~}~~~~~~|~~~~~~}~~~~~~~~~~~}}}}~~~~~}~~~~}~~~~~~|~~~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~}}}}}~~~~~|~~~~|~~~~~~}~~~~~~}~~~~~~~~~~~~~~}~~~~~~~~}}~}~}~}~~~~~~~||~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}|~}}}||}}}~}}}|~}||}}~}}|}|~}}||}}|}}}}|}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}|~}}}|~}}}~}}}~}~}}}}}~}}}}}}}}}}}}}}}}}}}}}}}~~~}}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}~}}}|~}}}|~|}}~}||}}~}}}}|~}}}}}}|}}}}}}}}}}}}}}}}~~~}}~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}~}}}}~~}}}~}~}}~}}~}~}}}}}~}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}|~}}}|~|}}}~}}|}~}}}}|~}}}}}}|}}}}}}}}}}}}}}}}}}}}~}}}{~}}}|~|}}}~}}|}~}}}}|~}}}}}}|}}}}}}}}}}}}}}}}~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}~}}}}~}}}}~}}}}}~}}}}~}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}~~}}}}}~}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}~}}}}|}}}}~}}}}~}}}}}~}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|~}}}|~}}}}~}|}}}~}}}}}~}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}~~}}}}}~}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}~~~~~}~~~~~~~~~~~|~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~}}}}~}}}}~~}}}~}~}}~}}}~}~}}}}}~}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~}~~~~~~|~~~~~~~|~~~~~~~~~~~~~~~~~~~~~~~}}}}~}}}}|}}}}~}}}}~}}}}}~}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}|~}}}|~}}}}~}|}}}~}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}||}}}|}}}}}}}||}}}}}|}|}}}}}}}|}}}}}}}}}}}}}}}~}}}}}}}}}}}}}~~}}}}}~}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}~~~~~}~~~~~~~~~~~|~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~}}}}}}}}}~}}}}~}}}}~}}}}}~}}}}|~}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}|~~}}|~}~}}~}|}~}~}}}}}~}}}}}}|}}}}}}}}}}}}}}}}}}}~}}}|~}}}|~}}}}~}|}}}~}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}|~}}}||}}}|~}}}}~}||}}}}}|}|~}}}}}}|}}}}}}}}}}}}}}}}}}|}}}}|~}}}|}}}}}}}||}}}}}|}|}}}}|}}|}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}~~}}}}}~}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}~~~~~}~~~~~~~~~~~|~~~~~~}~~~~~~}~~~~~~~}~~~~~~~~~}}}|}}}}}~}}}}~}}}}~}}}}}~}}}}|~}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}|~}}}|~}}}}~}||}}~}}|}|~}}}}}}|}}}}}}}}}}}}}}}{{||}}~}}}}}~~}}{}}~}}}~}~~}}~}}}~}~}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}~}}}~}~~}}~}}}~}~}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}|~}}|~}~~|}~}}}~}~}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}~}}}~}~~}~~}}}~~~}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}~}~~}}~}}}~}~}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}{{|}|}|{{{{}|{}}|}{{}}|{|{}}|{|||}}|{|{{|}|{|{{{{|{|{{{{{{{|}|}|{{{|}|{}}|}{{}}|{|{}}|{|||}}|{|{{|}|{|{{{{|{|{{{{{{||~~}||{|{~~{|}~~|{~}|~~{~}|~}~~~}|~}~||}|~}~|{||~}~|{|{}}}~~~}}}}}~~~}}~~~}~~}}~~~~}}~}~~~}}~}~}~}}~}~}}}}~}~}}}}}}}}}}}}}|~}}}|~}||}~}}}}}~}}}}}|~}}}}}}}}}}}}}}}}}}}}}}}{||}}}||{||}|{|}}|}{}}|{||}}|{|||}}|{|||{}|{|||{||{|||{|{{||}}}||{||}|{|}}|}|}}|{||}}|{|||}}|{||||}|{|||{||{|||{|{{|}~~}||{||~}}|}}~~|}}|}~}~}|}|}~~}|}|}|}}|}|}|}||}|}|}|}{}|~}}}|{}}~}|}~}~~}|~}}~|~}}}}}~~}}}}}}|}}}}}}{}}}}}}||{|}}}}}}}}}}}~~}}}~}}~}}~}}}}~}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}|}}}}~}~}}}~}}}}~}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}{{|}}}|{{{|}|{{}}|}{{}}|{|}}|{|||}}|||{{|}|||{{{{|||{{{{{{{}~~}|{{{|~}}{}}~~{}}}|}~}}|}|}~~}|}|}{}}|}|}{}{|}|}{}{}{}|~}}|}{}}}}{}~}~}}{~}}|~|~}|}|~~}}|}|}|}}|}|}{}||}|}{}{}}}}}}}}}||~}}|}}|~|}~}|}|}~}}}}|~}}}}}}}}}}}}}}}}}}}}}}}|}|}}}}}}}}}}~~}}}~}}~}}~}}}}}~}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}|~}}}~}~~}}~}}}}}~}}}}~~}}}}}}}}}}}}}}}}}}}}}}}|||~~}||||||}||~}||||~}||||~}||||~}||||||}|||||||||||||||{{}~~}|{{{|~}}{}}~~{}}}|}~}}}|}|}~}|}|}{}}|}|}{}{|}|}{}{}{}|~}}|}{}}}}{}~}~}}{~}}|~{~}}|}|~~}|}|}|}}|}|}{}||}|}{}{}}}}}}}}}{||}}{}}|}{}}}|}|}}}|}}}|}}}}}}}}}}}}}}}}}}}}}}}|||}}}|||||~|||}}|~||~}|{||~}|{|||~}|||||}||||||||||||||||}||}}}}}}}}}}~~}}}~}}~}}~}}|}}~}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}||}}}~}~}}}~}}}|}~}}}}|~~}}}}}}}}}}}}}}}}}}}}}}|||}}}|||||~|||~}|~||~}||}|~}||}||~}||}||}||}||||||}|||||{}|~}}|}{}}}}{}~}~}}{~}}|~{~}}|}|~~}}|}|}|}|}|}{}||}|}{}{}}}}}}}}}{|}}}{}}|}{}}}|}|}}}|}}}|}}|}}}}}}}}}}}}}}}}}}}}|||}}}|||||}|||}}|}||}}|{||}}|{|||}}|{||||}||||||||||||||{||}}}||{||~|{|}}|~|{~}|{|{~}|||||~}||||||}||||{||||||{|{|||{{}}}}}}}}}}~~}}}~}}~}}~}}|}}~}}}}}}~}}}}|}}}}}}}}}}}}}}}}}}}}~}}}}}}|}}}}~}~}}}~}}}|}~}}}}|~~}}}}}|}}}}}}}}}}}}}}}}|||}}}|||||||||}}||||}}||||}}|||||}}||||||}||||||||||||||}}}}}}}}}{|}}}{}}|}{}}}|}|}}}|}}}|}}|}}}}}}|}}}}}}}}}}}}}|||}}}|||||}|||}}|}||}}|{||}}|{|||}}|{||||}|{||||||||||||{||}}}|{{||||{{}}||{{}}|{|{}}|||||}}||{|||}||{|{{||||{{{{{||}|}||{||~{{|}}|~|{~||{|{~}|{|||~}|{|{||}|{{{|{||{||{|{|}|{{|}}}}}}}}}}~~}}}~}}~}}~}}|}}~}}}}}}~}}}}|}}}}}}}}}}}}}}}}}}}}~}}}}}}|}}}}~}~}}}~}}}|}~}}}}|~~}}}}}|}}}}}}}{}}}}}}}}|||}|}|||||}|||}}||||}}||||}}|||||}}||||||}||||||{|||||||{{{|{{|{||}|||}~~}{|||}||~}~||~}|}~|~}|}|}~}|}|||~}|}||||}|}||||||||}~~}||||}||~}~||~}|}~|~}|}|}~}|}|||~}|}||||}|}||||||||}~~}||||}||~}~||~}|}~|~}|}|}~}|}|||~}|}||||}|}||||||}|}~~}}|}|||}~}~}|~}|}~|~}|}|}~}|}|}|~}|}|}|}}|}|}|}|}}}}~~}}}}||}}~}~}|~}}}~|~}}}}}~}}}}}}~}}}}}}}}}}}}}}}{{{{|z|{{{zz|{|}|{{|||||{||||{{||||{{{||||{{{{|||{{{{{{{{{|{|{{{zz|{|}|{{|||||{||||{{||||{{{||||{{{{|||{{{{{{|{{~~}|{|||}{|}~|{~}|~~{~}|~|{~}|~||{~}|~||{|}|~||{|{}|~|}~~|~|~}|}|~~}~|~~|}~|~~|~}}~~|~}~|~~|~}~|~||~}~|~|{|{{|||{{|{{|{{|}|{|||||{||||{{||||{|{||||{{{||||{{{{{{|{{|||{{|{{|{{|}|{|||||{||||{{||||{|{||||{{{||||{{{{{{|{}~~}|{|{{|{||}~|{}|}~{~}||{}~}||{|{~}||{|{|}||{|{|{{|{{||}|{|{|}{|}}||{|||}{|}||{{|}||{|{|}||{|{|}||{|{|{|}||||}}}|||||}||}}|||}}|}|}}||||}}|||||}}||||||}||||||||||}~~|||||||||~}|||~||}|~||||}~||||||~|||||||||||||||z{{{|||{zzzz|z{|}|{{|||||||||{{||||{{{||||{{{{|||{{{{{z{z}~~}{z{z{|z{{}~{z|}{}~z}{{z}~}{{z{z~}{{z{z{}{{z{z{z{|{{||}|{|{|}{|}}||{}}|||{}||{{}}||{|{}}||{|{|}||{|{|{|||}||||||||||||}|||||{}}|||||}|||||||||||||||||||||||{}|{|{|}}}|{||||||}}|||}}||}|}}|||}}||||{}}||||||}||||||||||}||||||||}||}}||||||}}|||||||||||||||||||||||||||||z{{}~~}{z{z{|{{|}~{z|}|}~{|}||{}}||{{{~}||{{{{}||{{{{{{|{{|{}|{|{{}{|}}||{}|||}{}|||{{}||{|{}}||{|{|}||{|{|{|||}||}|||||||||}||||}|}}||||||}|}|||||}||||||}|||||||{|{{|||{{||{|{{|}|{{||||}{|||||{|||||{|||||{{|||||{{{{{}{|{|{|}|}|{||}|{|}}}|{}}||}{}}||}|}}||}{}}||}|{|}||}|{|{|||}||}|||||{|||}||||}|}}||}|||{|}|||||}||||||}|||||||z{{}~~}{z{z{|z{|}~{{|}|}~z|}||{}|}||{{{}||{{{{}||{{{{{{|{{|{}|{|{{}{|}}||{}||||{}|||{{}|||{|{}||{|{|}||{|{|{|||}||||||||||||}{||||{}}|||{||}||{|||||||||||||||||||{|{{||}{{||{|{{|}|{{|}|||{|||||{|}{|||{|}||{{|}|||{{{{z{z{{||{z{zz|z{|}|{z||{||z||{{z{||{{z{z||{{{z{|{{z{z{z{}||{{|{|}}}|{||||{|}}||{}}|{}{}}||||}}||||{}}|||||}||||{|{|||}||||||||||||}||||||}}||||||{||||||{|||||||||||||||{|{{|{}|{|{{}{|}}||{}||||{}|||{{}|||{|{}|||{|{|||{|{|{|||}||||||||||||}||||||}}||||||}||||||||||||||||||||||{|{{|||{{||{|{{|}|{{||{{|{||{{|{||{{||{||{{|{{||{|{{{{z{{{||}{z{zz{{{|}|{{|}|||{||||{{|}{|{{{|}|{{{{{}||{{{{z{z{{{|{z{zz|z{{}|{z{|{|}z{|{{z{{|{{{{z{|{{{{z{|{{{z{z{}{|z|{|{|}|}|{||||{|}}||{}}||}{}}||||}}||||{}}||||{|}||||{{|||}||||||||{|||}||||||}|||||||{||||||z|||||||z|||||||{{|{|{|{||{|{}}{|||}~~{|{|}|||~}~|||~}}}||~}}|||~}}|||~}}||||~}}|||||{|||}~~||{|}|||~}~|||~}}}||~}}|||~}}|||~}}||||~}}|||||{|||}~~|{{|}|||~}~|||~}}}||~}}|||~}}|||~}}||||~}}|||||{|||}~~|{||}|||~}~|||~}}}||~}}|||~}}|||~}}||||~}}|||||||}|}~~|||}}}||~}~|}|~}}}}|~}}}||~}}}|}~}}}|}|~}}}|}|}{{{|{|{{{{z{{{||}}{{||{|{{||{|{|||{|{{{|{|{{{{|{|{{{{{{{{|{|{{{{z|{{||}}{{||{|{{||{|{|||{|{{{|{|{{{{|{|{{{{{|}||{}}}|}|}||}|}}}|}}}|{|}}}}||}}}}|}|}}}|}|}}}}|}|}||}|||~~}|}|}}|}}}~}|}~}}||}~}}||}~}}|}|~}}|}|}~}}|}|}|}}}~||~~}}}~}|~}}~}}~}~~||~}~~}~|}~~}~}~~~}~}~}~~}~}~}~{{{|{|{{{{{|{{{||}}{||{|{{||{|{|||{|{{{|{|{{{{|{|{{{{{{{{|{|{{{{{|{{{||}}{||{|{{||{|{|||{|{{{|{|{{{{|{|{{{{{{|||{}{|{|||{||||}}|||}|{|||}|||||}|||||}||||||}||||||{|||{~~|{||||||||}~|||}|{||~}||||~}||||~}|||||~}||||||{}{|{}}}{}|}|{}}|}}}{}}|{{}}|}||}}|}|}{}|}|}{}}|}|}{}{|}|}||{|}}|}|}||}}}}}}|}}|||}}|}||}}|}|}|}|}|}|}}|}|}|}|z{{|{|{{zzz|{z{||}}{{||{|{||{|{|||{|{{{|{|{{{{|{|{{{{{{|||{}{|{|||{||||}}||||}|{||}|||||}|||||}||||||}||||||{|{|{~~|{|{||{|||}~|{||{|{{|{|{||~{|{|{~{|{|{|~{|{|{|{{}||{}{}{}|}{|}}|}}}|}}}|{|}}}||}}}}|}|}}}|}|}}}}|}|}|||{|{}}||||||||||}}|||}||{||}||||}|||||}||||||}||||||||}||||{{}}||||||||||}}|||}}{{||}}|||}}||||}}|||||}}||||||{|||{}{|{|||{||||}}||||}|{|||}||||}|||||}||||||}||||||{|{{{~~|{|{||{||{}~|{||{|{{||{|{{|{|{|{~{|{|{|~{|{|{|{{}{|{|{}{}|}{{}}|}}}{}}{|{{}}{}||}}}|}{}|}|}{}||}|}{}{||||{}||||||{||||}}||||}|{|||||||||}||||}||||||}||||||{|{{{}}|{|{||{|||}}|{|}{|{{|}{|{{|}{||{}{|{|{|}{|{|{|{|}||||{|{|||||||{||||}}||||||{||||||||||||||||||||||||||||{|{|{~~|{|{||{|||}~|{||{|{{||{|{|||{|{|{{|{|{|~{|{|{|{{}{|{|{}{}|}{{}}|{}}{}}{|{{}}{}||}}{}|}{}}|}{}||}|}{}{||{|{|||||||{||||}}||||||{||||||||||||||||||||||||||||{||{{}{|{|||{||||}}||||}|{|||{|||||}{||||}|||||}||||||{|{|{}}|{|{||{|||}}|{|}{|{{|}{|{||}{|{|{}{|{{|}{|{|{|{|{||||{{|{||{|{||{|{||}}{|||||{||||{|||||||{{||||{|||||{|{|{|{|{~~|{|{||{|||}~|{||{|{{||{|{|||{|{|{|{|{|{|{|{|{|{{}{|{|{}{}|}{{}}|}}}{}}{|{{}}{}||}}{}|}{}{}|}{}|}|}{}{|{{{{||{|{||{|{||{|{||||{{||||{|{|||{|{|||{|{|{|||{|{|z|{|{|{|z|z|{{|||}}|{||{|{{||{|{|||{|{|{|{{{|{||{||{|{{||{{}{|{|||{|||{}}||||}|{|||{|||||}{||||}|{||||}|||||{|{{{}}|{|{||{|||}}|{|}{|{{|}{|{{|}{|{|{}{|{|{|}{|{||{|}|||||{{{{||{|{||{|{||}|{|{||{{|{||{|{{||{|{z||{|{|z||{|{|{{{{|}z{{|}z{|}z|}{}z}{}|}|~~{}|}|||}}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|{}|}|~~}}|}|||}}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|{{|}|~~}{|}|||}}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|{}|}|~~}{}}|||}}|~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}||}}{|~~}|}}||}}}}~~}}}}~}|}}}~}}}}}~}}}}}~}}}}}~}}}}}}{~}~|~~~{~}~~}~~~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}{{{{|}z{{{z{|{{{{|}{{{{|||{{{||{{{{||{{{{||{{{{||{{{{{{{{{|}z{{{{||{{|||}{{{||||{||||{{||||{{{|||{{{{||{{{{{||}{|}z|||}|~{}|}~}|}|~~||}|~~|}{|~~|}|}~~|}|}|~|}|}|}||}{|}z|||}|~~}|||}|}|~}||}|~}|}{|~}|}|}~}|}|}|}|}|}|}|~}~|~~~|~}~~~}~~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}}{{|{|}{{{{|||{|{|||}{{{|||||||||{|||||{|||||{|{|||{|{|{{|{|}{{{{|||{|{|||}{{{|||||||||{|||||{|||||{|{|||{|{|{|}{|}{|{|}||{}||}~}|}}~||}|}~|}{|}~|}|}}~|}|}|~|}|}|}{||{|}{|{||||~|||||}||||||||~|||{|~|||||~|||||||||||||{|}{|}~|{|}|||}||}~}|}|}||}|}~|}{|}~|}|}}~|}|}|~|}|}|}|}}}|~|}|}}}~~}}}~|~}}}~}|}}~}}}{}~}}}}}~}}}}}}}}}}}}}|}z{{{|}z{z{{||{{{|||}{{|||||{{||{{||||{{{|||{{{{||{{{{{{|}{|}z|{|}||{}||}~}|}|}~||}}~|}{|}~|}|}}~|}|}|~|}|}|}z|{{|}z|z|{||~{||||}|{||{{|{|{|z{|~{|{|{~{|{|{|{|{|{|{{||{|}~|{||||||||||}||||||||||||{||~|||||~|||||~||||||||}{|}{|||}|~{}||~~}|}|~}||}|~~}{|~~|}|}~~|}|}|~|}|}|}{}|}|~|}{}|}~~|}}~|~}|}~|}||}~|}}}~|}|}|~|}|}|}|}|}|}|{}|{|}{|}z|{|}||{}||}~}|}|}~||}|}~|}{}~|}|}}~|}|}|~|}|}|}z|{{|}z|z|{||~{||||}|{|||||{||||{{|||{|{~||{|{|||{|{|{z|{{|}~|z|{|||{||||}|{|||||{||||{{|||{|{|~|{|{|~|{|{|{||}{|}{|||}|~{}||~|}|}|~}||}|~}|}{|~}}|}~}|}|}|}|}|}|}{|}{|}z|{|}||{}||}~}|}|}{||}|}~|}{|}~||}}~|}|}|~|}|}|}{}|}|~|}{}|}~~|}}~|~}|}~|}||}~|}|}}~|}||~|}|}|{|}|}|}|{}|{z|{{|}z|z|{||~{||||}|{|||||{||||{{||||{|{||{|{|||{|{|{z|{{|}~|z|{|||{||||}|{||{||{||{|z{||{|{|{||z|z|~|{|{|{||}{|}{|||}|~{}||~|}|}|~}||}|~}|}{|~}|}|}~}}|}|}|}|}|}{{|{|}z{{{|||{|{|||}{|||||||||{||{|||{|{||||{|{|||{|{|{|}{|}z|{|}||{}||}~}|}|}|||}|}~|}{|}~|{|}}~|}}|~|}|}|}{}|}|~|}{}|}~~|}}~|~}|}~|}||}~|}|}}~|}|}|~|}|}}|}|}|}|{}|{{z|{{|}~|z|{|||{||||}|{|||||{||||{{||||{|{|||{|{||{|{|{||}{|}{|||}|~{}||~|}|}|~}{|}|~}{}{|~}{}|}~}{}|}|}}|}|}z{{{|}z{z{{||{{{|||}{{|||||{||||{{||{|{{{||{{{{{||{{{{{{|{|}z{{{|||{|{|||}{|||||||||{||{|||{|{||||{{|{||||{|{|}{|}z|{|}||{}||}~}|}|}{||}|}~|}{|}~|{|}}~|}|}|~|}||}{}|}|~|}{}|}~~|}}~|~}|}~|}||}~|}|}}~|}|}|~|}|}|}|}|}||{}|{{{zyzz|zzz{z}{zz{||zz||{{z||z{{||z|zzzz|z|{zzz|z|{zzzy{||||{{z}{}|{{|~|{{||{~{|||{||||||{||||||{{{||||{{{{|||}||||{{~|||{}}||}|{}|}||||}||||||}|||||||||||||||{||}|||~}}}||~}}~~{}||}{}|{~|}||~|~|}||~|~||||~|~||{|{|||{|{}}}||{|||{||||}||||{||||||{||||||{|{||||{|{|z{}{z}}}}zz|{||{z{}z}|{z|{{{||{|{||{{|||{{z{||||{z{z{||{z{z{zzz|{||{z{}z}|zz|{{{||{|{||{{||||{z{||||{{{z{||{{{z{z|}|}}|}|}}}}||}}}}|}}|~|}}|}}}}|}}}|}}|}}}|}||}}}|}||||}}|||}}}}||}|}}|}||~|}|||}}|||}||}|||}||||||}|||||||||||||}{}||||}}z||{}||||||||||||||||||||||||||||||||||||||}{}||||}}|||{}||||||||||||||||||||||||||||||||}}}|||}{~||||~}||}{~|}}|||}}|||||}}||||||}|||||||||}}}}}}|}}}~}|}}}}}}}}}}}}|}}}}|}}}|}}|}}}|}}|}}}|}||||}}|||}}{}||}}}}}|}|||}||||}||||||}|||||||||||||||{{||||{{{}z}|{{z}|{{||{|||{{||||{|{||||{|{{{||{|{{{{{||}}||{|}{}|{|z}||{||{}{|{||}||||||}|||||{||||||{|{{{||||{|{}}~||{|~|{||||~|||{||||{|{||||{|{|{||{|{|{|||||}}}}|||}}}}||}~}||}}}~|}}}}}}}|||}}}}|||||}}||||||||||}|||}}}~||}|}}}|}||}|}|||}||||||}|||||||||||||||z||}}||z|}{}|z|z}||z||{}z||{|||z|{||}|||{|z||||{|z|zz{||||{|{}}}||{|||{||||}||||{|||{|{||||||{|{||||{|{|||||||||}}{~||}|~}}|||{~|||{|||||||||||||||||||||||||||||}}}}|||}|}|||}}}||}}}}|}}||}}}|||}}}||||||}|||||||{|||||||}}}}||}|~|}{|||~{||||||||||||||||||||||||||{||||}||||}{~||||}}||}||}|}||||}|||||}|||||||||||||||z||}}||z|}{}|z|z}||z||{}z||{||||||z|||z|{|z||||{|z|zz{||||{|{}}}||{||{{||||}||||{||||{|{|||{|z|{||{|{|z|||||||||}}{}||}|}}}|||{}|||{|||||||||||||||||||||||||{||||{|{}{~||{|~{{||||~||||{||||{|{|||||{|{||{|{|{|||{|||}}}}|||}|}|||}}}||}}}}|}}||}}}||||}}}|||||}|||||||{|||||||}}}}||}|||}{|||}{||{|||||||{|||||||||||||||{|{||||{|{}{}||{|~{{||||~||||{||||{|{||||{|{|||{|{|{|z{||||{|{}}}||{||{{||||}||||{||||{|{||||{|z|{|{|z|{|||||||||}}{}||}|}}}|||{}|||{|||||||||||||||||||||||||{||||{|{}{}||{|}{{||||}||||{||||{|{||||{|{|{|||{|{|zz|{||{z{}{~|z{{~|{z||{~z||{{|||||{{|||||{{zz|||{z{z||{{{||}}}}|||}|}|||}}}||}}}}|}}||}}}||||}}}||||||}||||||{|||||||}}}}||}|||}{|||}{||{|||||||{|||||||z|||||||{|{||||{|{}{}||{|||{|||||||||{||||||{||||||{|z||||{|{yzz{{zyzz{z{yzzz{zyz{{zy{{{{zzz{{{zzz{{{zzyz{{{zzyzyzz{|{zzzz{{|zzz{|zzz{{{z{{{{z{z{{{{zz{{{{zzz{{{{zzzzz{{||{z{z{{{z{{{|{z{|{{z{|{{z{{|{{z{z|{{z{z{|{{z{z{zz{{||{z{{{||{{}{|{{{|||{{||{{{{||{{{{||{{{{{||{{{{{{{{{{|{{{||{|{{|||{{||||{||{{|{||{{|{{|{{|{{{|{{|{{{{yzz{zz{z{{}{{zzz|{{{z{z|zzz|{{{|{{{{|{{{z{|{{{{{|{{{{{{|{{{{{{{{{zzz|z{{z{{|{{z|{{{|{{{{|{{{z{|{{{{{|{{{{{{|{{{{{{{{{{{||{{{||||{{{|{{||||{|||||{|||||{{||||{{{||||{{{{}|||}}|}|}|||}|}}|}|}}|}|}}|}||}}|}|}}}|}|}|}}|}|}|}z{{{||{z{{{{|{{}{|z{{{{{{|{{{{{|{{{{{|{{{{{{|{{{{{{{z{{{||{z{{{{|{{}{|{{{{{{{|{{{{{|{{{{{|{{{{{{|{{{{{{{z{{{||{z{{{{|{{}{|{{{{{{{|{{{{{|{{{{{|{{{{{{|{{{{{{{{{{{||{{{{||}{{}||{{|||{||||{{||||{{{|||{{{{|||{{{{{||}||}}||}|}|}||}}}||}}||}}|}||}}|||}|}|||||}}|||||||z{z{{{{z{z{{{z{{{|{z{{{{{{z{z{{{{{z{z{{{z{z{{{{z{z{zz{z{|{{z{z{{{z{{{|{z{{{{z{{{z{{{{{z{z{{{z{z{{{{z{z{zz{z{||{z{z||}z{{{|{z{{||z{|{z{{||{{{z||{{{z{||{{{z{zz{z{||{z{z{||z{{{|{z{|{|z{||z{{|||z{z|||z{z{|||z{z{z|{{{{||}|{{{}|}{|}{}|{|}||{|}||||}||{{{}||{|{{}||{|{|{{{{{||{{{||||{{}||{{||||{|||{||||{|{{||{|{{{||{|{{{{zzz{|{zzzz{{{zz{z|zzz{{{zz{{{z{{{{zzz{{{{zzz{{{{zzzzzzz{{|zzzz||}zz{{{zzz{||zz{|zz{z|z{zz||{{zzz||z{zzzzz{z{||{z{z{{{z{{{|{z{|{|z{|{{z{{|{z{z||{{{z{||{{{z{z{{{{||{{{|{{|{{}{|{{||{{{||{{|{||||{{||{|{{{||{|{{{{{{{{{{||}{{{{}|}{{}{|{{{}|{{{}|{||{}|||{}|||{{{}|||{{{{{{{{||{{{|{{{{{|{|{{||{|{||{{|{|||{|{||{|{{{||{|{{{{yzz{{|zyzz||}zz{{{zzz{||zz{|zz{z{|z{zz|{{zzz||z{zzzzz{z{||{z{z{{|z{{{|{z{|z|z{|{{z{{|{{z{z|{z{z{||{z{z{z{{{{||{{{|{{|{{}{|{{||{{{||{{|{||{{|{{|{|{{{|{{|{{{{z{z{{{{z{z{{|z{{{|{z{{{{z{{{{z{{{{{z{z{{{{z{{{{z{z{z{{{{{{{|{}{{{{}|}{{}{|{{{}|{{{}|{{|{}||{{{}||{{{}||{{{{{{{{{||{{{|{{|{{|{|{{|{{|{||{{|{|||{|{z||{|{{||{|{{{{yzz{{|zyzz||}zz{{{zzz{||zz{|zz{z{|z{zz{|{{zzz|z{zzzzz{z{||{z{z{{|z{{{|{z{|z|z{|{{z{{|{{z{z|{{z{z{|{z{z{z{{{{||{{{|{{|{{}{|{{||{{{||{z|{||{z|{{|{z|{{{|{|{{{{z{z{|{{z{z{{{z{{{|{z{{{{z{{{{z{{{{{z{z{{{z{z{{{{{z{zzzz{z{zzzz{{|zz{{|zzz{{{zz{{zz{z{{z{zz{{{{zzz{{{{zzz{z{zz{{{|{}{{{{}|}{{}{|{{{}|{{{}|{{|{}||{{{}||{{z{}||{{{{{{{{||{{{|{{{{{|{|{{|{{|{||{{|{|||{|{z||{|{{z||{|{{{zyzzyzyzz{zzzzz{zzz{z{|zz{z{zz{zz{{zzzz{{zzyz{{zzzzyzz{{{zzzz|zzzzz{{zz{z{|{z{{{{z{{{{{{zz{{{{zzz{{{zzzzz{{{z{z{z|{{z{{{z{z{{{|{z{{{{z{{{{{z{z{{{z{z{{{z{z{z{{{{{{{{{{{{{{||{{{||{|{{||||{{||||{{{|||{{{{{|{{{{{z{{|{{z{{|{|z{{{z{z{{}|{z{{}|{|{{}|z{{{}|{{z{}|z{z{zyzz|{zz{{z|{|{{{{z{zz{{{z{zzzzzy{{{{|{z{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{z{zz{{{z|zz{{zz{{{{|{{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{{{{{{{{|{|{{{{{{{{||{{{{||{{{{||{{{{||{{{{||{{{{{{|z{{{|{|z|{|{||{|{|{||{{|{||{{|{||{|{{||{|{|||{|{|{{{{{{{{{{{|{{{{||{zzz{{{{||{{{{||{{{{{|{{{{{{{{{{{{{{{{{{{{{{{|{{{{||{{zz{{{{||{{{{||{{{{{|{{{{{{{{{{{{{{{{{{{{{{{|{{{{||{{{z{{{{||||{{||||{{{|||{{{{{|{{{{{{{{{{{{{{{|{{{{||{{{|{{{{||{{{{||{{{{{|{{{{{{{{{{{{{{|{{{{|{|{|{|{|||{|{|||{{||||{{||||{|{|||{|{|||{|{|{{{{{|{{{{{{|{|{{|}{{{||||{||||{|||||{{{|||{{{{||{{{{{zzz{{z{zzz|zzz{{{z{z{z{{{zzzzz{{z{{zzzz{{z{zz{{z{z{zzzz{{z{zzz|{{z{{{z{z{z{{{zz||z{{z||zzzz||z{zz{|z{z{zz{z{{z{z{z|{zz{{{z{z{z{{{z{{{z{{{{{z{zz{{z{z{{{z{z{zz{z{{z{z{z|{|z{{{z{z{{{|{z{{|z{{{||z{z{||z{z{{|z{z{z{{{{{{{{{{|{{{{||{{{||{|{{|||{{|||{{{{||{{{{{|{{{{{{{|{{{{{{{{{{|{{{{||{{{|||{{{||||{||||{{{|||{{{{||{{{{{zzz{{{zzzz|{{zz{z{zzzz{{{zz{||z{z||zzz{||{zzz{|{zzzzz{z{{{{z{z|{zz{{z{{z{z{{{z{{{{z{{{{z{z{{{{{z{{{{{z{zzzz{{{zzzz|{|zz{{{zz{{{{{z{{{{z{{{{zzz{{{{zzz{{{zzzz{{{{{{{{{{|{{{{||{{{||{|{{||{|{{|||{{{|||{{{{||{{{{{z{{{{{{z{{|{{z{{{{{z{{{|{z{{|{z{{{|{{{{|{{{z{{{{{z{z{|{z{{{{{{z{{|{{z{{{{{z{{{{{z{{{{{{{{|{{{{|{{{z{|{{{z{zz{z{{z{z{z|{zz{{zz{z{z{{{z{z{{z{{z{{z{z{{z{z{{{z{z{zzzz{{zzzzz|{|zz{{zzz{{z{{z{{{{z{{{{{zzz{{zzzz{{zzzzz{{{{{{{{{{|{z{{||{{{||{{{{||{{{{|||{{{{||{{{{|{{{{{{z{{{{z{z{{|{{z{{{{{z{{{|{z{{{|z{{{|{z{{{||{z{{|z{z{zzzz{{{{zzz|{{z{{{{{z{{{|{z{{|{z{{{|{{zz{|{{zz{{{{zzz{|{|zz{{{{zzz{|{{zz{{{zz{{{{{z{{{{{{{{|{{zz{|{{zz|{{zzzzzzz{{zzzzz|{|zz{{zzz{{z{{z{{{{z{{{{{zzz{{{zzzz{zzzzz{{{{{{{{{{|{z{{||{{{||{{{{||{z{{|||{{{{||{{{{{|{{{{{zz{{{z{zz{|{{z{{{{{z{{{{{z{{{{z{{{{{zz{{{{z{zz{{{z{zz{z{{{{z{z|{{z{{{{{z{z{|{z{{{|z{{{|{{{z{||{{z{{|{z{zzzz{{z{zzz|{{z{{{z{z{{z|{z{{|{z{{{|{zzz{|{z{zz{{z{{z{|{|{zz{{{zzzz{|{{zz{{{zzz{{{{zz{{{{{z{|{zzz{|{zzzz|{zzzzzzz{|{{yzz{}zz{z{|{{z{{{{zz{{{{z{z{{{zzz{{{z{zz{{z{z{zz{|{}{{zz{|}{{{z{||{{{{|{{{{{|{z|{{||{z{{||{{{z||{{{{{z||{}{|z|z|}{{||{|||{|{|{{{|{||z||{||{|{{||{|{|||{|{|{{||{}}|{||{}||||}|}|||}}|{||}}||{|}}||||}}|||||}||||||z}||}|}z}||}||}}|||}|}|}}{|}|}}||}|}}|}||}}|}|}|}|}|}|{}~|{~}{}~|}|~}}~~~}~}~~}{~}~~}~|}~~}~}~~~}~}~}~}~}~}~zz{|}{z{{{z{|}{|}{}|}{{zz{|{{{{z{|zzzz{|{{{{|{z{{{|{{z{{|{{{{{|{{{{{|{{{{{{{{{|{}{z{{{|}{{{{||{{{{|{{{{{||{|{{|{{{{{||{{{{||{{{{{{|{|{}}|{|{|}|{|{|}|{|{}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{{}{|{}}}{}{|}|{}}|}}{}{}}{{}{}}{|}{}}{}{{}}{}{}}}{}{}{|}|||~~}|}|}}}|}}}~}|}}~}||}}~}||}}~}|}|}~}|}|}~}|}|}|{|||{}||{|||}{|||}|}z{z{{{||}|||{|}|||||}|||||||||||||{|||{}||{|||}{|||}|}|{z{{{||}|||{|}|||||}|||||||||||||{|||{}||{|||}{|||}|}||{|{{||}|||||}|||||}|||||||||||||{}||{}|}{}||}{|}}}|}}|}}}{|}}}}||}}}}|}|}}}|}|}|}|}|}|{|||{~~|{|||}||||}|~|||}|{||}~||||}~||||}~|||||~||||||||}|}~~|||}}}}}|}}~~|}}}~}}}}~|}|}}~|}|}}~|}|}|~|}|}|}}z|{|{}{|z|{|}{{||{|{|{|{|{{{z{{z||{||{|{{||{|{|||{|{|{z|{|{}{|z|{|}{{||{|||{|{|{{{z||z||{||{|{{||{|{|||{|{|{z}{|{}{}z}{|}{{}}{||}{}{}}{{}}}z|}{}}{}{{}}{}{}|}{}{}{{|{|{~~|{|{|}|{||{|~|{|{||{{|{|{||{~|{|{{~|{|{|~|{|{|{{}||{}}}{}||}||}}}|}}|}}}}{|}}}||}}}}|}|}}}|}|}}}|}|}|{|||}~~|{||}}}||}}~~||}}~|}|}}~||}}~||||}~|||||~||||||}{zz{|{}{{zz{|}{{{{{||{{{{|{{{{{||z|{||{z{{||{{{z||{{{{{z}{|{}{}z}{|}{{}}{||}{}{}}{{}{}}z|}}}z}{{}}{}{}|}{}{}{{|{|{~~|{|{|}|{||{|~|{|{||{{|{||{||{|{|{{~|{|{|~|{|{|{{|||{}{|{|||}{|||}|}|||}|{{||}|||||}||||}|||||||||||||{}{|{}}}{}{|}|{}}||}}{}{}}{{}{}|{|}{}}}{{}}{}{}}}{}{}{{|||}~~|{||}}}||}}~~||}}~|}|}}~|{|}}~|||}~|||||~|||||||{|z}{|{}z}z}{|}{{}}{||}{}{}}{{}{}}z|}{}}{}{}}{}z}|}{}{}z{|{|{~~|{|{|}|{||{|~|{|{||{{|{||{||{||{|{{|{|{|~|{|{|{{|||{}{|{|||}{|||}|}|||}|{{||}|||||}|||||}||||||||||||z|{|{}||z|{|}{{||||||{|{|{{{|{||z||{||{|{{|||{|||{|{|{{}{|{}}}{}{|}|{}}{|}}{}{}}{{}{}|{|}{}}{}{{}}{{}}}{}{}{{|||}~~|{||}}}||}}~~||}}~|}|}}~|{|}}~||||}~||||~|||||||{|{{|{|{~~|{|{|}|{||{|~|{|{||{{|{||{||{||{|{{||{|{||{|{|{{|||{}{|{|||}{|||}|}|||}|{{||}|||||}|||||}||||||||||||z|{|{}||z|{|}{{||||||{|{|{{{|{||z||{||{|{{||{|{||||{|{z{{|{}{{z{{|}{{{{{||{{{{|{{{{{||z|{{||{{{{||{{{{||{{{{{}{|{}}}{}{|}|{}}{|}}{}{}}{{}{}|{|}{}}{}{{}}{z{}}}{}}{{|||}~~|{||}}}||}}~~||}}~|}|}}~|{|}}~||||}~|||{|~||||||{|{zyzzz{z{z{z}yzzz}{zyzy||{z{|{{z{}{{z{}|zz{z{}{{zyzz{z|z|{{z{|}{{z{~|{{zy|}{z||{{z|}{{{|}|{{{{|}{{{{{{{|}|~{{|{~}{{|z~|{{|~~}{|~}|~|~}{{|~}|{{{|~}{{{{{{{{{~}~{{{~~}}{||~||}{~~}}|~}|~|~}||{~}|}{|{~}|}|}{|zz~|zz{z~|}zz|{}{zzz~~|{z~|{~z~}{{z~}||z{z~}{|{zzzz{|{z~z{{~{{z{z}{z{zz}|{z~{{|z~{{{{~{{|zz{~{{|{{zzyz|{z~zzz~{yz{z|{zyzy}|zz~{{|z~{{{z~{{|zzz~{{|{yzy{{||z~{{{~|{{{{~|{{zz}}{z~|{|z~|{{{~|{|{{{~|{|{{{{{|~~|~{~|~}~{~|}|{||~~~||~||~|~}|~|~}|~{~|~}{~{~{{z||{|~zz|||zz~|||{zz|}|z{~{||z~{|{|~{||zz|~{||{zzzy{{{z|zy{{|{zzz|{zyzy|{{z|{z{z|{{z{|{{zzy{|{{{zyzyz{{{z|zz{{|{{zz}{z{yz|{{z{{z{z|{zz{|{{{yz{|{{{z{zz||}{|~z||{{||}|{{||}|z{{~z{||{|~||{{{||{{{{{||{{{{{{{{|~{||{{||}|{{||||{{{~{{||{|~||{{{||{{{{{||{{{{{{{{|~|||{{||}}{{||~|{{{~|{||||~||}{{||}|{{{||}{{{{{{{|~||~|{|~~~~|~|}||~|~}~|~~|~|~~|~|~~|~|~|~~|~|~|~{|~{||{{||}|{{~|||{{||}{||{|~||{|{||{|{{{||{{{{{{{{{{|{|{{{{||{{{{}|{{{|{}z{{z{{||{{{||{{{{{||{{{{{{{{{|{|{{{{|}{{{{~|{{{||}{{|z{{|}{{{|}|{{{{|}{{{{{{{{~}{~{{{~~}{{|{~|{{{|~}{{}{~{~}{{{~}{|{{{~}{|{{{{|||~}|~|||~~}||||~||||~~}||~}~|~}|}|~}|}|||~}|}||||{|~||~{{|~~|{{||}|{{|~|}{|~|||~|{{|~|{{{{|~|{{{{{{z{||||{{{{|}z{{z~|{z{z}|{|||z|{}{{{|}|{{{{|}{{{z{zz{~{|~{z{~~{{{|{}|{{{z~|{||{{~|{z{{~{{|{{{~{{|{{{{z|~{|~{z|{~|z{~{~|{z{{~|{||{|~|~|z|~{|{{z|~{{{{z{z||{{~||~|{|~~}{||}}}|{|~~}{|~|}~|~}}|~}}{|{{~}}{|{|{{|||||{{||||{{~|~|{{||}}{||||||||||||||{{|||{|{{{{z{~{z~zz{~~{{z|{}{z{zz~|{z|{{~z|{{{{{{|z{{~{{|{{z{z|{{z|{z|{||{{~{|{{{{{|{{{|{|{{|{|z|||z{z||{{{{{{z{|~||~{{||~|{{||~|{{||~}{|||{~|~|{{|~|{{{|~|{{{{{{{{{{{~||~|{{~~}{|{|}||{|~~}{|~||~|~}||{~}||{{~}|||{{{{|~{||{{||}|{{~|||{{||~|{||{|~||{|{{|{||{||{{|{{{{{{{|z|{{{{||{{|{~|{{z||}{z||z{z||{{{||{{{{||{{{{{{y{~{z~zz{~~{{z|{}{z{zz~|{z|{{~z|{{{{|{{|z{{{z|{{z{y|{{z|{y|{||y{~{|{{y{{|{{{|{|{{|{|z||{|z{y||{z{y{y{|{|||{{||||{{||}|{{|||}{|||z{|||{{|||{{{{|||{{{{{z{~{|~{z{{~{z{{z~|{z{{~{{||{{~|~{{z{~{{{{z{~{{{z{z{{{{{{~||~|{{~~}{|{|}||{|~~}{|~||~|~}|{{~}|{|{{~}|{||{{|{{||{{||||{{~|}|{{||||{||{|{||{|{{|{||{z||{{|{{{z{~{||{z{{}{z{{{||{z{{~{{||{z~||{{z{|{{z{z{|{{{{z{zzzzzyy{zz{yyzzy{zyyyzzyzzz{zzz{{z{yz{{zzyz{{zzyyyzz{{zzz{zz{zzzzz{zzzzz|zzz{{zzz{{{{zz{{{zzz{{{zzzzzzz{z{z{zz{z{|zz|{z{z{zz{z{{z{z{{z{zz{{z{zz{{z{z{zzzz{zzz{zz{zz{zz}{z{{z{z{{z{z{{{{z{z{{{{zzz{{{{zzzzz{{||{z{z{{z{||{}{z{z{|{{z{|{{{{}{{{{{}|{z{{}{{z{zyzzzzzzzzz{zyzzz{yyzyzzzzzz{zzz{z{zzz{{{zzz{{{zzyyyzz{zzyzz{zyyzzz{zyyyzzzzzz{zzzz{{zzzz{{zzzz{{zyyyzzz{{zzzzz{zzzzz{zzzzz|zzz{{zzz{z{zzz{{{zzz{z{zzzzzzzz{z{zzz{z{|zz|{z{z{|z{z{|z{z{|{zzz{|{{zz{|{{z{zz{z|{zzz{z|zz{{|{{z{{z{z{{{{{{{{|{{z{{{{|z{{{{|{zzyzzzzzyyzyzzyzzz|zyzyzzyzzzzzzzz{zzzzz{zzyzzzzzyyyyzzzzzyyzzz{zzzz|zzzyzzzzzzzzzz{{zzzz{{zzyz{zzzzyyz{zzzz{zzzzz{{zz{{z{zzzzzz{{{{z{{{{zzz{{{zzzz{{zzzzzzzzz{zzzzz{{zz{{z{zzzzzz{{{{z{{{{zzz{{{zzzz{{zzzzzzzzz{zzzzz{{zz{{z{zzzzzz{{{{z{{{{zzz{{{zzzz{{zzzzzzzz{|zzz{z{|zz{{z|zz{{zz{{{{z{{{{z{z{{{zzzz{{zzzzz{{|{{|{{{|||{{||||{{{||{{||{|{||{{{|||{{{{{|{{{{{{zzzz{z{zzzz{z{|zz|{z{zzzzzz{z{z{{zzzz{{z{zz{{z{z{zzzzz{z{zzzz{z{|zz|{z{zzzzzz{z{z{{zzzz{{z{zz{{z{z{zzzzz{z{z{z{{z{|zz|{z{zzzz{z{z{z{{z{zz{{z{zz{{z{z{zz{zz{z{z{zz{z{|{z}{z{z{zz{z{z{z{{z{zz{{z{z{{{z{z{z{{|{||{|{|{{|{||{{}|{|{||{|{|||{||{|{{||{|{|||{|{|{zyz{zzzzyzz{zzzzz{zzzzz|zzz{{zzz{zyzz{{{zzy{{{zzzzzzz{zzzz{zz{zzzzz{zzzzz|zzz{{zzz{z{zz{{{zzz{{{zzzzzzz{{zzzzzz{zzz{z{zzzz{|zzz{{zzz{zzzz{{{{zz{{{{zzzzzz{{zzzzz{{{zzz||z{zz{|{z{{{{z{|zzz{|{{zzz|{{z{zz{{{z{|{|{{{{||{{|{||{{{{{}{{||{|{||{|{||{|{{z|{|{{{{zzz{{z{zzzz{z{|{||{z{{{|z{{{{{{{{{{z{{{{{zz{{{{z{zyzzzzzyy{zz{yzzzz{zyzyzzyzzz{zzzz{z{z{{zzyz{{zzyyyzzzzzzzzzzz{zzz{z{zzzz{zzzzz{zzzz{zzzz{z{yz{{z{zzzyzzz{zzyzz{{zzzz|{zzzzzzzzz{z{zz{{zzzz{zzzz{{zzzzzzzzz{z{zzzz{z{|zz|{z{{zzz{{z{z{{{{zzz{{{{zz{{z{z{z{{{zz{{{{{z{{{|z{|{{|{z{z{|z{z|{z{z|{{{{z|{{{z|{{{z{zzzz{{zzzzzz{zz{z|{zz{{z|z{{{{{{{{{{zz{{{{zz{z{zzzzzzzzzzzzzzz{yzz{z{zyzz{zzzzz{zzzz{zzzzz{z{yz{z{zzzyzzz{zzyzzz{zzzz|{zzzzzzzzz{z{zz{zzyzz{{zzzy{zzzzzzzzz{z{zzzz{z{|zz|{z{{zzz{{z{z{{{{zzz{{{z{zz{{{z{zzzz{zzzzzzz{zzzzz{zzzzz|zzz{{zzz{z{zzz{{{zzz{{{zzz{{zzzz{{{{{z{{{|z{|{{|{z{z{|z{z|{z{z|{{z{z|{{{zz|{{{zzzzz{{zzzzzz{zz{z|{zz{{zzz{{{{{{{{{zzz{{{zzzz{{zzzzyyzzyzyyzz{zyyz{z{zyyyz{yzzz{z{zz{|zzzzz|{zyzz{zzyyyzzz{{{zzzz{{zzz{{|zz{{z{z{{{{z{{{{|{zz{{|{zzz{{{zzzzzz{{z|{zzz|{z{{{{{{z{z|{z{z|{z{{z||zzzz||{{zz|{z{z{zzz{{zzzzz{{zzzz{z|zzzz{{zzz{{{{zz{|zz{zz|{zzzz{zzzzzz{{{z{|z{{|{{|{{{||{|{{|z|{||{{{{||{{{{{|{|z{{|{|{|z{zzz{{{zzz{|zzz{{{{zz{{{{z{{{{{{{{{|{zz{z|{zzzz{{zzzzyy{zzzzyzz{zyzz{zzzyzzzzzzzz{{{zzz{zz{zz{zzzyz{zzzyyyy{zzyzyzzzzyyz{zzzyyzzzzzzz{{zzzz{zz{zz{zzzyz{zzyyyzz{z{{{zzz{{zzz{{|zz{{zzz{{{{{z{{{{{z{{{{{zzz{{{zzzzz{{{{z|{z{|{z{{{{{{z{z|{z{z|{{{{z|{z{{z|{{{z{|{{{z{zzz{{{{zz{z{{{z{{{|zz{{{zz{{{}{{{{{}{z{{z}{z{zz}{{{zzyzyzzyzyyzy{yyzzzzzyzyzzyzzzzyzzzzzzzyzz{zzyzz{zzyyyyzzzzzzyyzz{zzzzzzzzzyzzzzzzzz{zzz{zzzzz{zzyzz{zzzyy{{{zzz{{{zzzzz|{zz{{||zzzzzz{{z{{{{{z{zzz{z{zzzzz{zzzzzzzz{{{zzzzz|{zz{{||zzzzzz{{z{{{{{z{zzz{z{zzzzz{zzzzzzz{{{{zzzz{|{zz{{||zzzzzz{{z{{{{{z|zz{{z|{zzzz{zzzzzzz{{{{zzzz{|{zz{{||zz{z{z{{z{{{{{{{zz{{{{{zzzz{zzzzzz{{{}{{{z{{|{{{{{||{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{zzz{{z|{zzz|{z{{{{|{z{{|{zzzzz{{{|{zzz{|{z{zz|{z{z{zzz{{{z|{zz{|{z{{{{|{z{{|{zzz{{{{{||zz{{||{{zz|{z{z{zzzz{{z|{zzz|{z{{{{|{z{{|{z{z{z{{{|{zzz{|{z{zz|{z{z{zzzz{{{|{zzz|{z{{{{|{z{{|{z{{{z{{{|{{zz{|{{{zz|{{{z{zz{{{|{|{z{{||{{{{||{{{{||{{{|{{{{||{z{{||{{{z|{{{{{{|{z{{{{|{{z{|{{{{|||{{{{|{{{{|{{{{|{{z{{|{{{{z|{{{{{{zz{{zzzzzz{{zzzz{z{zzzzzzzzzz{{zzz|zz{zz|{zzzz{{zzzzzzzz{zzzzzz{zzzzz{{zzzzz{zzzz{z{z{{zzzzz{{zzzz{{zzzzzzz{{{zzzzz|{zz{{{{zz{{zzz{{z{z{{{{zzz{z{{zzzz{{zzzzzz{{{{{zzz{|{{z{{||z{{{{z{{{{{{{{{{{z{{{{{zzz{{{z{zzzzz{|z|{zzz|{z{{{{|{z{{|{z{{|{z{{{||zz{||{{zz|{{{z{z{{zzz{{z|{zzz|{z{{{{{{z{z|{z{z|{z{{z|{{zz|{{{zz|{{{z{zyzz{{zzyyzz{{yzzz{{zyzyz{yzzz{z{zz{{zzzz{zzyzz{zzyyyzzz{{{zzzzz|{zz{{{zzz{{zzz{{z{z{{{{{zzz{{{zzzz{zzzzzzzz{{z{zzzz|{zz{{||zz{{{zz{{{{{{z{{{zzz{{{zzz{{zzzzzzz{{{{|{zz{|{z{{{{{{z{{|{z{{|{{{{{|{zz{{|{{zz|{z{z{zzzz{{z{zzzz|{zz{{{|zz{{{{z{{{zz{{{{|{zz{{|{zz{{{zzzz{z{zzz{{{{zzzz{{zz{{{|zz{{{zz{{{zz{{{{{{zz{{{{zz{{{zzzzzzz{{{zzzzz|{zz{{{zzz{{zzz{{z{z{{{z{zzz{z{{zzz{zzzzzzzz{{z{zzzz|zzz{{||zz{{{zz{{{z{{z{{zzzz{{z{zzz{zzzzzzzz{{z|{zzz|{z{{zzz{z{z|{z{z|{z{{z|{zzzz|{z{zz|{{z{zzz{z{{zzzz{{{zz{{{{zz{{zzz{{z{{{{{zz{z{{z{{zzzz{{zzzzzz{{z{zzzz|{zz{{{|zz{{{{z{{{zz{{{{|zzz{{|{zzz{{{zzz{z{{zzz{{zzzzzz{{zzz{{{zzzzzzzzzzzz{zz{{zzzz{z{zzzzzzzzzzzzzz{{z{|}||z{{|}y{z{z{|zz{z{|z}{z{|z{|z{|z{z{{|z{z{zz{{||{{z{|}||{{{|}z{{{|{|z{{|{|z}{|{|{{||{|{{{{{|{{{{{z{{|z}{z{|}||{{||}z{{||}||{||}|z}||}|{{||}|{{{{}|{{{{{z{|{z{{z{|}||{{{|}z{{||{|z{||{}{}{|{}{{|z{}{{{{{|{{{{{z{|}z{{z{|}|~z{{|}z{z{z{~~z{z{~z}{z{~{{|z{~{{z{{~{{z{z{}|}~}}|}|}~~|}}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}}~|}|}||z{{{|z{z{{||zzz{|}z{zzz{|zz{z{|z{{z{|{z{z{|{zz{{|{{zzzyzz{|z{zzz{{zzzzz}zzzzz{|zzzz{zzzzz{z{zzz{z{zzz{z{zzzzz{{{||{{z{||z{{z|}z{{{|{|z{{|{|z{{|{|{z{|{|{{{{{|{{{{{z{{{|z}{z{||{{{|z}z{{||}||{||}{z{||}{{{{|}{{{{{}{{{{{{z||{{z{|z||||{|||}||{||||z{|||}|{|||}{||z|}{|{|{|{|{|{z~|}~z{~z~|}~{~~|}z~{~|~~~{~|~~{}~|~~{~|{~~|~{~{~|~{~{yzzzzzzzyzz{zzyzz{zzyzzzzzzzzzzzzzzzzzzzzzzzzyzzzzzyzyz{{{|z{{z{{||zz{|}z{zzz{|zz{zz|z{{z{|{z{z{|{zy{{|{{zzz|}z}z}z{z{zz{{z{z||{z{{{}zz{z{zzz{{{{z{{{{{z{z{{{z{z{{{z{z{zz{z{zz{{z{z||{z{{{}z{{z{zzz{{{|z{{{{|z{z{{|z{z{{|z{z{zz{{{|z{{z{{||{{{{|}{{{{{|z{{{{|z{{{{|{{{{{|{{{{{|{{{{{z{|}|z{{z{|}||z{{|}z{z{{|zz{{{|z}{{{|z{|{{|{{z{{|{{z{z{{{{||{{{{{||{{{||}|{{||||{||{}{{||{}{{{|{}{{{{{|{{{{{{{{{~{}{{{{~~~{{~|}{{{~|}~{~|}~{{~|}~{{{|}~{{{{}~{{{{{z{{{|z}{z{{||z{{||}z{{||}||zzzzz{||}{{{{|}{{{{{}{{{{{{z{{{|z}{z{{||z{{||}z{{||}||{z{{z{||}{{{{|}{{{{{}{{{{{{z{|}|z}{z{|}||{{||}z{{||}||{|{|z}||}|{{||}|{{{{}|{{{{{z{{{|z}{z{{||z{{||}z{{||}||{||}{{||}}{{{|}}{{{{}|{{{{{z{{{~z}{z{{|~~{{||}z{{||}|~{||}z{||}~{{{|}~{{{{}~{{{{{{}|}~|}}{}|}~~|}}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}}~|}|}||z{{{||{{z{{||z{{{|}z{{{|{|z{{|{|z{zz{zz{|{|{{{{{|{{{{{z{|}||{{z{|}||{{{|}z{{{|{|z{{|{|z}{{|z{||{|{{{{{|{{{{{z{{{||{{z{{||z{{{|}z{{||{|z{||{}{{{|}{z{|{}{{{{{|{{{{{z{{{~|{{z{{|~~{{{|}z{{{|{|~{{|{|z{{|{z{{|{~{{{{{~{{{{{z{{{||}{z{{||{{{||}z{{||}||{||}}{{||}}{{|}}{{{{}|{{{{{{{|}~|}{{{|}~~|{||}|{|||}~~|||}~|}||}~|||}~|{|{}~|{|{||{z{|}|z{{z{|}||z{{|}z{z{z{|zz{z{|z}{z{|{{|{|{{z{{|{{z{zz{{{|z{{z{{||z{{{|}z{{||{|z{||{}{{{|{}{z{z}{z{{{|{{{{{z{{{~z{{z{{|~~z{{|}z{z{{{|~z{{{|z{{{{|{{{{{z{z{{~{{z{zz{{{|z}{z{{||z{{||}z{{||}||{||}|z{||}|{{{|}|{{{}|{{{{{z{{{||{{z{{||{{{{|}z{{||{|z{||{}{{{|{}{{{|{}{{{{|{{{{{{{|}~|}{{{|}~~|{||}|{|||}~~|||}~|}||}~|{||}~|{{}~|{|{{z{{z{{{|z{{z{{||z{{{|}z{{||{|z{||{}{{{|{}{z{z{}{{{{z{{{z{z{{{~z{{z{{|~~z{{|}z{z{{{|~z{{{|z{{{{|{{{{{|{{z{{z{z{zz{{{|z}{z{{||z{{||}z{{||}||{||}|z{||}|{{{|}|{{{{}|{{{{z{{{||{{z{{||z{{{|}z{{{|{|z{{|{|z{{|{|{z{|{|{{{{{|{{{{z{{{|z{{z{{||{{{{|}z{{||{|z{||{}{{{|{}{{{{{}{{{{{|{{{{{{|}~|}{{{|}~~|{||}|{|||}~~|||}~|}||}~|{||}~|{|{}~|{||z{{{yzzzyyyyzy|yyy}zyyyyy{zzyyyzzyzz{yyy|{zyy|zzyyyyzz{{z{zyzz}z{y}|{z{zy}{z{zzzz{z{{zzz}{z{z}{z{z{zzzzzzzzyzz~zzz~{{zzz{~zz{zy|{zz~{zzz~{{zz~{z{zzzzy{{|}|{|{|}~z{z~|{z{z}}}|{z}||{|~||{|~}{{|~||{z{{zz{{{{zz{{}z{z}|{z{z{~{z{zzz{{z{{zzz}}{{z}{{{z{zy{z{z{z{z{|zyz|{zzyyz}{zyzz{zz{|{y{{|}{yz|{{zzyzyyzzzyyyzy{yyy{{zyyyy}zzzyyzzyzz{yyy{}zyy{{zzyyyzz}{{z{z}z~z{y~}{z{zz~{z{zz|}{z~}zzz~}z{z~}z{z{zzy{|{{{{z{|}z{{}}}z{z{~{{}z{||{{|}z{{}}{{z}}|}z{zzy{zzz{zy{zz{z|{zz{zz}zzzzzz{zz{{zzz}}z{z}{zzz{zyz{zzyyyzzz|yy|{{yyyz}zz{yyz{zzz{yyy|{zzy|{z{yyyy{z{z{yz{z{|zz|{zzyyz}{zyzz{zz{|zy{{|{{yz|{{zzyzzz{{{z{zz{{~z{z||z{z{}{z|zz||{z~}z{z~}{{z~|{|z{zzzzzz|zzzzz~zzz}zzzz|{{{zz||zz{~{zz|~|{zz~{{zzzzyyyyyy}{|zzz{{z{zzzz{z{z||{z{z{}{zzzyz{z{{zzz{{z{z{{z{z{zzzz{{z{zzzz~z{z~|{z{z{}{zzz|z{z~{zzz~{z{z~{z{z{zzz{{{z{zzzz|z{z|}{z{z{~{z{zz{{z{|zzz|}z{z|{z{z{zz{|{~{~z{|{}{~{}~~{~z{}{{~{{|~{|~zz{}~{~z}~{~{~z{{{|{{{{{{|}{{z||{{{z|}|{{{|{{{|{{{{}{{{{}{{{{{{yz|{{{{zz|{~z{z~|{z{zz}{z{z{||z~zzz{~|{{z~|{{z{zyz|{{{{zz|{|z{z||{z{zz~{z{z{{|{z{zz{|}{{z||{{z{zyz}{{{{zz}{~z{z~}{z{zz~{z{z{|}{{}zz{~}{{z~}{{z{z{z{}|}||z{||}{|{}}}{|{|~||}{|{}}|||{|}}{|z}}|}{|zzz|{{{{zz|{}z{z}|{z{z{}{z{z{{|{{{|z{}|{{z}|{{z{zy{z{z{yz{z{|zzz|{zzzyz~{zzzy{zz{|zy{{}zyz|{{zzyzy{{{z{zz{{{}zzz}{zzzyz}{zzzy{{z{|{y{{|zzz}{{zzzzy{{{z{yz{z{~zzz~{zzzz{~{zzz{|{z{|zz{{~{zz~{{zzyz{|{|||{|{{|||}|{{}|{|{{|}||{||}|{|||{||}}|{}||{|{{z{|{{{{z{|{}z{z||{z{z{~{z{z{{|{{||z{{}|{{}|{{z{zyz{zzyzyz{z}yzz}{{yzyz}zz{yyz{zzz{yzy||zzy{zzyzyyzz{zzyyzz{}zyz|{{zyy{}{z{z{zzzz{{zzz}{{yy}zzzyyzz|{{{{zz|{~z{z~|{z{z{~{z{z{||{{{|zz{~|z{z~|{z{zz{{z{||{|{z{||}z{z}|{z{z|}||{z|||{|||z{|}}{{z}||{{zz{z{{{{z{z{}z{z||{z{z{}{z{zz{z{{|{z{{}|{{z}{{{zzzz|{{{{zz|{|z{z||{z{zz~{z{z{z|{{{|zz{||z{z||z{z{yzyyyzzyzzyzyzzy{zyzyzzzyzyzyzyyzzzyyz|zzyyz{zzyzyyz{z{zyzzz{zzzzy{zzyzz{{zz{zz{z{z{{z{z|{zzyzz{zzyzzz{zz{zzz{{zzzzz{zzzyzz{zzz{zzzz{zzyz{|zzzz{{zzzzzyzzyyyyyzzzyzzzy{yzyyz{{zyzzzzyzzzzyzy|{zzzyzzzzyyzyy{{{{zzz|{{{zz{y}|zzzy||z|{z||z{||{|{z|{{z{z|{|zzzzzz{zzzzz{{zzzz{{zzzzz{{zzz{z{zz{zzyz{|{zzz{z{zzzzyy{zzzzyy{zzzyzz{yzyzzz{zyzyzzzzzzzyzzzzzyyzzzzzyyyyzyyyzyyzyzyyzy{zyzyzyzyzyzyzyyzzzyyz{zzyyz{zzyyyyzz{z{zyzz{zzyzy{zzzzz{{zz{z{zz{z{{z{z{{zzyz{{zzyzzzz{zz{zzz{zzzzy{zzzyzz}zzz{zzzz{zzzz{{{zzz{{{{zzzzzz{|z{zz{z{|zz{{{zzzzyz}{z{zz|z{zz|y{z|}{{yz{}|zzzyzzzyyzyyz{zzyzz{yyyyzyzyyyyzzyyzzyyyzzzzyzzzz{zyyyz{zzzzyyz{zzzzz{zzyzzz{zzzyzzzzzzzzzzz{zyzzz{{zyyzzz{z{zzzz{{zzzz{zzzzz{{zz{z{|z{z{{z{z{|zzzz{|{zzzzz|{zz{zzz|{zzzz|zzzz{{{zzz{z{zz{{{zz{{|zzz{{{{|zzyyyyyyzzzz|zzz{{z{zzz{{{zzz{{zzzz{{{zyz{zzz{{zzz{{zzzz{{zzzzzzzz{{z{zzz{{{zzz{{zzzz{{{zyz{zzz{{zzz{{zzzz{{zzzzzzzz{{z{zzz{{{zzz{{zzzz{{{zzz{zzz{{zzz{|zzzz{{zzzzzzz{|{z{zzz{|{zz{{|zz{z{{|z{z{{{z{{{zz{{{zzz{{{zzzz{z{{{{{{{z{{{{{z||{{{{{{{{{{{|{{{|{z{{|{{{z{|{{{{{zyz{z{zzzz{{zzzzz{zzzzzz{zz{zzzyzzzy{z{{zzyz{{zzzzzzz{z{zzzz{{zzzzz{zzzzzz{zz{zzzzzzzz{z|{zzzz{{zzzzzz{{z{zzzz{{zzzz{{zzzzzz{zz{zzzz{zzz{z{{zzzzz{zzzzzz{{{{zzzz{{{zz{{{zz{z{{}z{{z{{{{z{z{z{{zzzz{{z{zz{{z{}{{{z{z{|{{z{{|{{{{{{}{{{{{{{{{{|{{||z{z{||z{z{yy{zzyzzyz{zzyz{z{zyzyzzzyzyzz{zyzzzyz|zyyyz{zzyzyyz{zzzzzyz{zzyz{z{zyzzzzzyzzzz{zzzzzyzz{zyzzz{zzzyzz{zzzzzzz{zzzz{z{zzzz{{{zzzzz{zzzzzyzzzzzyz{zzzzzyz{zzzzzyz{zzzz{z{zzzzz{|zzzzz{zzz{zzzz{zzzz{zzzzyz{y{|{{{{zz{|{|z{{{|{z{z{{|z{{{{}{{||{{{||{{{{|{{zzzzz{{z{{zzz{{zzz{{{zzzz{{{zz{{z{z{{{{z{{{{zz{z{zzzzyzzzyzzyyz{zzyyzz{yyyzzzzyyzyzzyzzzzzzzz{zyyz{zzyyzzzzzzzyzz{zzzzzz{zzzz{{{zzzzzzzzzzzyzzzzzyyzzzzyzyzzzzzzzyz{zzyzzz{zyzzz{{yzzzzzzzz{zzzz{zzyzzzzyzyzzz{z{{zzz{{zzzz{{zzzzzz{zz{{zzz{{z{z{{z{zzz{z{zzzzzzyz{{z{zzzz{{z{z{z|z{zzz{|zz{zz|z{z{{z{z|{zzzz|{z{zzz{{zz{zzz{{zzz{{{zzzzz{{zzz{z{zz{{zzz{{zzzy{zzzzzyyyzyzyyzzyzyzyzzyzzyyzyzyzzyzyyyzzzzzyzzzzyzzzzzzyyzz{zzzzzzz{z{zzzz{zzzzz{{zzzz{zzzz{{zzzz{{zzzz{{zzzzy{zzyzzy{zzzzzz{zyzzzy{y{yzzz{zzyz{z{zyzzzzy{zzzzzzyy{{zy{yy{{z{zzy{{yyzzz{{{yzz{zyzy{zz{zy{z{zz{{z{zzyzzz{{z{zzz{zzzzzz{zzzzz{z{zzz{{zzz{{{zzz{{|{zz{{{{zzzzzyzz{zyzyzz{zyzzzzzzzzz{{{yzzzzyzyzzzzzyzz|zzzzz|zzzzyz{{zyzyyz{zzzyz{zyzyyzz{zzzyzzzzzzzyzyzz{zyyzz{zzyyyz{yzyzyyyyzyzyz{yzzyyzy{yzzyzyyyzzzyzyzz{zyyzz{zzyyzz{{zzzyzz{z{zyz{{zzzzz{{zzzz{zzzz{{zzzz{{zzyz{{zzyzy{{{zyzzy{{zzzz{{yzzzy{z{yzzz{zzyz{z{zyzz{zy{zz{zzzyz{{{{y{z{{{zz{z{{{z{z{{{{{z{{{{z{{{{{{{{{|{z{{{{{{zzzyz{zzy{zy{{z{zz{{zzzzy{{{yzz{{zzy{{z{zy{z{zyz{z{{zzyyzzzzyzyyzzzzzyzzyyyyyzzyyyyyyyyyzzyyyyzzzzyzzzzzzyyyzz{zyzyyzz{zzyzzzyyyyzzzzzzyzyzzzzzzzyzz{zyzzz{zzyyz{z{zzzzz{z{z{{zz{z{zz{{{{z{z{{z{z{{{zzz{{zz{z{{{{zzy{{z{y{{y{{z{zz{{y{z{z{{{y{z{{z{y{{z{zy{z}{z{{z}{z{zyyyz{yyz{yz{{{{zzz{zz{zzzz{{zzz{zzzzzz{{{zzzzyzz{zzzzz{zzzzz{zzzzzzzzz{zz{zzzz{{zzz{zzyzzz{{{zzzzyzz{zzzzz{z{zzz{z{zzzzz{{{zz{zz{{{{zzz{zzzzzz{{{zzzzyzz{zz{zz{z{zz{{z{zzzzzzz{z{{zzz{{{zzz{{{zzz{{{{zz{zzz{{z{zz{{z{zzz{z{zzzzz{z}{z{{z{z}{zz{{{z{z{z{{{z{z{z{z{{z{zz{{{{z{{{{{z{zzzz{{z{zzzz{z{zzzz{zzzz{z{zzz{{zyzzzyzz{{{zzy{{{zzzzz{{{{z{zz{{{z{zz{z{zzzz{z{zzz{{zzzzz{zz{{{zz{{{{zzzzzzz{{z{zzzz{z{zzzz{zzzz{{{zzz{{zzzzzyzz{{{zzy{{{zzzzzzz{{z{zzzz{{{zz{{{zzzz{z{zzz{{zzz{zzzz{{{zzz{{{zzzzz{{{{{{{z{{{{{{{{{{{{{{{{{{{{{{{{{{{{z{{{{{z{{{{{{{z{z{z{{z{zz{z{{{zz{{{zzzz{{{zzz{{{zz{{{{z{{{zz{{{{zzzzy{{zzyzyy{{zzzzz{zzzzzy{z{yzyzzyzyzzz{zzz{zy{zz{zzyyyzz{zyzyyzz{zzzzzzzzzzzz{{yzzzzyzyzzzzzyz{zzzzz{zzyzyzzzzy{zyzzz{zyz{{zzyzy{zzyzy{zzzy{zzzzy{zzyz{zzzzzyy{z{{y{zy{z{{zzz{zzzzzz{{{yzz{{zzy{{z{zy{{zz{{{zzzzzzz{{{z{zzz{{z{zz{{{zz{z{z{z{z{{z{z{{{zzz{{{zz{{{zzzzzzzzz|zzzzzzz{z{zzz{{zzzz{{{zzzz{zzzz{{zzzz{{zzz{{zzzzyzz{zyzyyzz{zzzyzzzyzzzz{{yzzyzyzyzzzyzyzz{zzyz{zzyzyyzzzy{yyyzz{zyy{{zyyzy{zzyzy{zzzy{zzzzy{zzzyy{zzyyyyyz{{y{zyyz{zzyzzzzzyzz{{{yzz{{yzy{{zyzy{{{zyy{{zyzyz{z{zz{yz{z{{{zy{z{zzzz{{{zzz{{zzz{{{{zz{{{zz{{{{zyzyz{{{z{zyz{{zzzz{{zzz{z{z{z{z{{z{z{{zzzz{{{zyz{{{zzyzzzyzz{{y{zyzz{{zyz{zzzyzz{z{yzz{{yzy{{zzzy{{zzyy{{zzzzzzzzyzz{|{|z{{z|{|zz{z{|}z{z{z{|zz{z{||{{z{||{|z{||{z{z{|{{|z{|{|{}{z|{|{z{{{|}{{{{|}||{{|}||{{|}||{||}||{z{z|{{zzz{|{}z{{z|{|zz{}{|}{{}{|{|{{{|{}|{{z{}|{|z{||{z{z|{zzzz{|{|z{{z|{|~z{z{|}z{z{z{~~z{z{~|{{z{~|{|z{~|{z{{|}|{{z{|}}{{{z|}||z{}{|}{{}{|{|zz{|{}|}{{{}|{|{{||{z{{|}~|||{|}~|}{||}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{||}~|{|{{|{|}|z{zzz{|z{{z|}||z{z{|}z{z{z{|zz{z{|z}{z{|z{|z{|z{z{{|}zz{zzzz{z{{z|}z|z{z{|}y{z{z{|zz{z{|z}{z{|z{|z{|z{z{{|}|{{|z{{|{}{z|}||z{{{|}{{{{|}||{{|}|z}{|}|z{||}|z{z{{|}{{{zz{|}z{{z|}||z{}{|}{{}{|{|{{{|{}z}{z{}z{|z{|z{z{{|}~z{zz{|}z{{z|}|~z{z{|}z{z{z{~~z{z{~z}{z{~{{|z{~{{z{{|}~|}||}|}~}}||}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}|zzzzzyzzzzz{zyyzzzzyzzzzzzyzzzz{zzyzzzyzyzzzzyzzzz{zzzzz{|z{zzzz{|z{{{{|zz{z{|}z{z{z{|zz{z{{z{{z{|zzzz{|{{z{zz{|{{|zzz{|{}{z{|{z{{{z}{{{{|}||{{|}{z{{|}{z{z|}z{{z{z|{|zzzz{|{}z{|z|||z|}{|}||}||{|zz|||}|{{z|}|{|z{|||z{{|}~{{{z{|}~{{~z|}~z~}~|}{~}~|~~~z~|~~z}{{~~{~|{{~|~z~yyzz{yzzzzz{|}z|}z}{}zz{{{z{zzz{{{zzz{{|{zz{z{}{{zzzz{{z{{{z{z{{{zzz{{zzzzzzz{{{z{{zz{{{zz{{{|{zz{z{}{zz{z{{zz{{|z{z{{|{zz{{|{z{zz|{|{z{z{|{|{{{z|{|{z{{z|}{{{z{|{{{{{||{{{{||{|{{||{z{{|}|{{{z{|}|{{{z|}||z{{{|}{{{{{|{{{{{|z}{{{|z{|{{|z{z{zz{||||zzz|}|{{z|||{z{}||}|{}||||{||{}z{||{}zzz|{|z{zz{{{~|~|{{{~~{}{{|~~~{{}~|}{{}~|}~{~|}~z{~|}~{{z|}~{{{{zz{|z{|zzz{|z}{z{{|zz{{{|}z{{{|}||yzz{y{{|}{z{z|}zz{z{z|{|z{|z{|{|z}{z|{|zz{{{|}z{{{|}||{z{||{{|}||{||}||{z{{|}|z{|z{|}|z}{z|}||z{{{|}z{{{|}||{{{|z}{|}|z{||}|z{z{zz{|z{|zzz{}z}{z|{|zz{}{|}z{}{|}||{{|}z{{|}}z{z|}zz{z{zz{~{{|zzz{~{}{z{{~~z{{{|}{{{{|}|~{{|}z{{|}~z{z|}~z{z{{|}~|}||{|}~|}}||}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}|z|{||{|z{|{||{{z|{|zz{{{|}z{{{|{|z{{|{||{z{||{||{||{z{{|}||{|z{|}||{{z|}||z{{{|}z{{{|{|z{{|{|z}{{|z{||{|z{z{zz{||{|zzz{}|{{z|{|zz{}{|}z{}{|{|z{{|{}z{{|}zzz|{|z{zzzz{~|{|zzz{~|{{z{{~~z{{{|}{{{{|{|~{{|{|z{{|{zzz|{~z{zzzz{||{|zzz{}|}{z|{|{z{}{|}{{}{|}||{{|}}z{{|}}{z|}|z{z{{|}~|{||{|}~|}{||}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||}~|{|{|{{|}|z{zz{|}|z{{z|}||z{z{|}z{z{z{|zz{z{|z}{z{|z{|{|z{z{zz{|z{zzzz{}z{{z|{|zz{}{|}z{}{|{|zz{|{}z{{z{}zzzzzzzz{zz{~{{{zzz{~{{{z{{~~z{z{|}{{z{{{|~z{{{|z{{{{|zzz{{zzz{zz{|z{|zzz{|z}{z{{|zz{{{|}z{{{|}||{{|}|z{{|}|z{z|}|{z{zz{||{|zzz{}|{{z|{|{z{}{|}{{}{|{|{{{|{}z{{|{}zzz|{|zz{{|}~|{||{|}~|}{||}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{||}~|{{z{zyyzzyyyyyyyzzyyyyyy{zyyyzyzzyyyzzyzyyyyyyzzyyy{yzyyz{z{zzzyzy{z{zzyy{z{zzzyz{zzzyy{zzzzzy{zz{{yyz{{yzyyzzzzyzzyzyzzzyzzyz{zyzy|zzzyyzzzzzzyyyyz{zzzz{zzyzyyyyyyyyyyyyyyyyyyy~zzzy~zzzyyy{yyzzyyyyy~{yyy~zyyyyyyzzzzzzzzzzzzzz{zzzz{z{zy{{{z{zz{zz{zzzzzz|{yzz{{z{zzy{z{zzyzz{z{yzzz{z~zzzz~{zzzyzzzzzzyy{zz~{zyz~{zzyyzyzzzyzyzyzzzyzzyzzzyzy|zzzyyyzyzzzyyyyz{zzzz{zzyzzyzzzzzzzyzzzz{yzzz{z{yy{{{z{yz{yz{zyyzzzz{yyz{{z{yyyyzzyyyyyyzzyyyyyyzzyyy{zzzyyyzzyzyyyyyy{zyyyzzzyyzy{z{zzzyz{z{zzyy{z{zzzy{{zzzyy{zzzzzy{zz{{yyz{{yzyyzyzzzyzzyzzzzyzzyz~zyzy~zzzyyz{zzzzyyyyz~zzzz~{zyzyyzzz{zzzzzzzz{z{zzz{~z{zy~{{z{z{{{z{z{zzzz~{zzz~{z{zzy{z{zzzyzz{z{zzz{z{zzzz{{zzzyz{zzzzyy{zz{{zyz{{zzyyzyzzzyzzyzyzzzzzyz{zyzy{zzzyyyzzzzzzzyyz|zyzz{zzyzzyzzzzzzyzyzzzz{zzz{z{yy{{{z{yz{yz{zyyzzz{{yyz{{z{yzy{z{zzzyzy{z{zzy{z~zzzy~{zzzyy}zzzzzy{zz~{yyz~{yzyyzzzzzzzzzzzzzzz{zzz{z{zz{{{z{zz|zz{zzzzzz|{yzz{}z{zyzzzzzyzzyzzzzzzzzzzzzzy|zzzyyy{yzzzzyyyz{{zzz{zzzzyyyzzyyyyyyzzzyyyzyz~yyy~zyyyyy{yyyyyyyyy~{yyy~zyyyyzyzzzyzzyzyzzzyzzyz~zzy~{zzyyyzzzzzzzyyz~{yzz~zzyzzyzzzzzzyzyzzzz{yzzz~z{y~{{z{yz{yz{zyyzzz~}yyz~{z{yzy{z{zzzzzz{z{z{zz{z~z{zz{zz{zz{zzzzzy{zz~}zyz~|z{zyzyzzzyzzyzyzzzyzzyz~zzzy|zzyyzzzzzzzzyyz~{zzz~{zzzyyyyyy{z{zz{z{zzzzzz{z{zzzz{z{zzzz|{zzzyz{zzzzy{zz{{zzz{{zzzzz{z{zzzzzz{z{zzzz{z~{zzz~{z{zy{{zz{{z{zz~{zzz~{{zzzz{z{zzzzzz{z{zzzz{z{zzzz|}zzzzz{zzzzy{zz{|zzz{{zzzzz{{|{|zz{z{z|{|zz{z|{|zz|||{|z{|{{|{{{|{||zzz||{|zzz{|{{zz{zz{|{{{{z{||{{{z|{z{{z|{|{z{|zz{|{{zz|{{{{zyzzzzzzyzzzzzz{zzzz~z{zy~{{z{zy{zz{zzzzy~zyyz~{z{yzyzzzzzzyzzzzzz{zzzz{z{zy{{{z{zy{zz{zzzzz{{yyz{{z{yzz{zzzzzyzz{zzz{zz{z~z{zz~|{z{zz}zz{zzz{zz{yzz~{z{y{zz|{|{|zz{z|{|{{zz|{|{{zz|||z{z{|{{|z{z||{||zz||{{zzz{z{zzzzzz{z{z{zz{z{z{zz|{{z{zz{zz{zzz{zz{{zz{{z{zyzyzzzyzzyzyzzzyzzyz{zyzy{zzzyyyzzzzzyzyyz|zyzzzyyzyzzzzzyzzyzzzzzzzzyz{zzzy{zzzzyz{zzzzyzzyz|{yzzzyyzyzyzzzyzzyzzzzzyzzyz~zyzy~{zzyyz{zzzzzzzyz|zzzz~zyzz{z{{{z{zzzz{{{z{{z{{{||{zz|{{|{z|{{{{||{{z{|{z{z|{|zzz{z{zzzzzz{z{z{zz{z{z{zz{{{z{zz{zz{zzz{zz|{zzz{{z{yyyyyyyyyyyyzyyyyzzyyyyzyzyyyyzyyzyyyyyzzzyyzzzyyyy{zzyyyyy{zzzzyy{zzzzyyzyzzyyz{yyzzyzyzzzyyyzzzyyyyyyzyzyyyzyzzyyyzzyyyyyzyyzyzyzyyzyyzyzzzzyzzzzzyyyzzyyyyyzyyyyzyyzyyzyyzzyyzzyzzyyyzzzyyyzyyyyzzzyyyyyyyzzzzzyyzzyzyzyzzzzzyy{zzzzyz{zz{zzzyzzzzyzz{{yyyyy{zzyyyy{zzzzyy{zyzyyzzyyzyyzzyyzzyzyzzzyyyzzzzyyyzzzzyyyzzzyzyyzzzyyyyyzzyyyzzzzzyzzzyzzzyyyz{zzyzyyyyyyyyyyyyzyyyyzzyyyyzyzyyyyzyyzyyzyyzzzyyzzzyyyyy{zzyzyy{zzzzyy{zzzzyyzyzzyzz{yyzzyzyzzzzyzzzzzyyzzzyyyyyzzyyzzyzzzzzzzzzyzzzyzzyyzzzzyyzzyzyzz{zyzyyyyzzzyzzyyzzzyzyzzzzzyy}zzzzyz{zz{zzzyzzzzzzz|{zyzyy{zzyzyyz{zzyyy{zzzzyzzyzyzyz{yyzzyzyzzzyyzzz{zzyyyzyzyzyyyzyzzyyzzyyzyyzyyyzzyzyyzyyyyzzzyyzzzzyyyyzzzzyyyyzzzyzzzzzyzyyy{zyzyzzzzzyzzzyzzzyyyz{zzyzzz{zzyyyzz{zzzzz{zzzzzzzyzzzyz}yyzzzzyzzzzyyzz{zzzzyyzyzyzzyzzyzzzzyzzzzyy{zzzzyz|zz{zyzyzzzzyzz{}zzyyyyyyyyyyzzyyzyyyzzyyyyzyyyyyyyyyyzyyyyzzzyyzzzyyzyyzyzyzyyyzyzzyyyzzyyyyzyyyzzyzyyzzyyyzzzzyzzzzyyzzzzzzyyyzzzzyzzyzzzyzzyzzyzyzzzzzyzzzyzzzzzyz{zzyzyyzyzyzzyzzyzzyzyzzzyzzzyzyzzz{zz{zzzyzzzzyzzzzzzzyy{zzyy{yy{zzzz{y{zzz{zzzzz{zz{zzzzzzyzzz{yyzz|z{zyyyyyyyzzz{zz{{zzzyzz{{zzzyz{zyzzzzzzzzzzz{zyzzzzzz{zzzzzzzyzzz{{zzzyzz{{zzzyz{zyzzzzzzzzzzz{zyzzzzzz{zzzz{zzyzzz{{zzzyzz{{zzzzz{zyzzzzzzzzzzz{zzzzzzzz{zzzz{zzyzz{|{zzzzz{|{zzzz{|zzzzz{{zzzzzz|zzzzzzzzz{zzzz{zzzzz{{|z{{zz{{{{z{z{z{z{z||z{z{zz{{z{{zz{{|{z{{|{z{zyzzzzyzyyzzzzzyzzzzzyzyyzyzyzzy{zz{zzyyzzzyzz{zyyyyzzzzyzyyzzzzzzzzzzzzzyyzyzzzzy{zz{zzzyzzzzzz{zzyyyzzzzyzzyzzzzzzzzzzzzzyzzyzzzzy{zz{zzzyzzzyzzz{zzzyz{{zyzzyz{{zzyzzzzzyzzz{yzyzzz}zz{zzzyzzzzzz{zzzzzyz|{{z{{yz|{{zz{z|{{z{zz|z{z{zz|{z{z{zz{{{|{z||z{yyyzyyyyyyyzyyzyyyzzyyyyyzzyyyyzzyzyzyzyyzzyyzzzzyyyyzyzyzyyzzyzzyyyzzzyyyz{zzyzzyzyzzzyzyzzzyyzz{zyyyyzyzyzyyzzyzzyyyzzzyzzy{yzyzzz{yzzzzzyzzzzyzzzyyyzzzzzyzyzzzzzzzyzzzyzzzzzzzzzzz|zzzzzzyzzzzzzz{zyzzzz{{{zzzzz{{{zzzz{{{zzzzz|zzzzzz{zz{zz{zz{|{zzz|{zzyy{zzyzyyy{zzzyzy{zzyzzz{yzzzzz{zz{zyyyzzzzyzzzzyyzyzyyyyyzzzyyyyzyyyzyyyzyyzyzzyzyyzzzyyyyzzyyyyyzyyyyyzyyyyyyzzyzzyyyzzyzy{zzzyzz{yzyzyz{yyyzzz{yyzzzzy{y{zyyyyy{{zyyzy{{yzyzzz{yyyzzzy{yyyzzyyyyzzyyyyy{{yzyzzzyzyyzzzz{zyzz{zyzz{zzyzzz{{{zyz{zyyz{zz{zz{zzzy{z{{zzzzz{{zzz{z{zzzz{zz{zzz{zzz{zzz{{zzzz{zzzzz{{{zzyzyy{zzyyyy{zzyyzy{yzzyzz{{yyyzz{y{yyyzzyyyyzz{yyyy{{y{yz{zzyzyy{zz{zyz{{zyzyzzzzzzz{z{zzz{yyyz{{zyyz{{zzyyyzyzyyyyzzzyyzyzyyyzzyzzyyzzzzyzyyzzzyyyyzzyyyyzzzyyyzzzyyyyyzzyzzyzyzzyzy{zzzyzz{yzyzyz{yyyzzz{yyzzzzy{y{zzzyzyy{zz{zy{z{zzzz{{zyzzz{{{zyz{zyyz{zz{zz{z{{y{z{{zzyzzz{{zz{z{zzzz{zz{zzz{zzz{zzz{{zzzz{{zzzz{{{zzzzyz{zzyzyyz{zzzyz{zzzzzzzyyzzzz{{zyzzzyyzyzzyzzyz|zzyyy{zzyyyyy{zyyyz{yzyyzyzyyzyzzyzzyyyzyyyzzyyyyzzzzyyyy{zzyzyyy{zz{yz{{zyyyyzzzzzy{z{zzz{yyyz{{yyyz{{zzyyy{{zyyyyz{{zyzzy{zzzzz{{zzzzz{y{yzyz{yyyzzz{yyzz{{y{z{{z{{z{z{{{yz{{{zz{{{{{{z{{{{{{{{{{{{{{z{{{{{z{{{z{zy{zzzyyyy{zzz{zz{z{zzzz{yyzzz{{{zyz{{yyy{zzyyy{z{{yzyzzzyyyyyzzzyyyyzzyzyyyyyyyyy{yyyyyzzyyyyzy{yyyyyzy{yz{zzyyyyz{zyyyyz{yzyzyzyyzyz{yyzyyzzyyyzzy{yyzzzzy{yz{zzyzyyz{zz{yyz{{zyyyzzzzzz{z{zzz{zyyz{{z{yz{{zzy{yz{zzyzzyz{zzyzzz{z{zzzzzyzzz{{{zyzz{zyzz{{{zzy{{zz{{{zzz{zz{{z{z{{z{z{zz{z{zzz{z{{{z{z{{y{z{zz{zz{z}{z{yyyy{yzz{zz{{{{zy{zzzyyzy{zz{zyz{{zzzzzzzyzzz{zzzzzzyzz{zzzyy{zzzyzzz{zzzyyzz{zz{zyz{{zzzzzzzyzzz{zzzzzzyyz{zzzzy{zzzyzz{{zzzzyz{{zz{zz{{{zzzz{zzzzzz{z{zzzzyzz{zz{yy{z{{y{zz{z{z{zz{{z{{z{{{{z{z{z{{z{z{{{{{z{zzz{{z{zz{{z{zzzzz}{z{zzzz}{z{{z{}{zz{z{{z{z{z{{{z{z{z{z{{z{zz{{z{z{yz{zzyzyyz{zzzzzz{z{zzzyzzyzyzzy{zyzz{yyyzzyzzz{zzyyy{{zzyzyy{{zzzzz{{z{zzz{zzzzzz{y{zzzz{yyyzz{zzz{{{y{yz{zzyzzyz{zzzyzz{z{zzzyzzyzyzz{{zyzz{zyzzzyzzz{{zzyyz{zzzzyyz{zz{yz{{{{zyzz{zyzzz{z{zzz{{yzz{yyzz{{zzyyz{{{{z{{z{|{{{z{{{{{{z{z{{z{z{{{{{z{{{{z{{{zz{{{{{zzzzz{{zzzyzz{{zzzz{{{{zzz{{zzzzz{{{zzz{{zzz{{z{zz{zzy{y{zzzyyyy{zzyyzy{zyzyzz{zzyzzz{y{zyyzzyyyzzz{yyy{{y{yy{zzyzyyy{zzyyyz{yzzyzyzzyzyzz{{zyzzzyyzzzyyzzz{yyyyzzzzyyyyzzzz{yy{z{zyzzy{zyzzz{zzzyy{zyyy{zyyyy{zyyyyz{zzyzyyz{zz{yyz{{zyyz{zzzzzz{{{zzz{{zyz{{z{zz{{zy{z{{{zzzzz{|{zzzz{{z{zzzz{zzzzzzz{zzzz{zzzz{zzzzz{{zzzyyz{zzyzzyz{zzyyzz{z{zyzzzzyzyzz{{zyzz{zyzz{zyzzz{zyzzzyyy{{z{|zyzz{{|z{{z{z{|zz{z{|}y{z{{{|zz{z{|z{{z{|z{zzzzzz{{z{}zzzz{{}z{{z{|{|zz{}{|}z{z{|{|zz{z{}z{{z{|z{zz{yzz{{z{|zzzz{{|z{{z{z{|~z{z{|}{{z{{{~~z{z{~{{{z{~{{zz}|{z{{z}|z{z{{}|z{{{{|}||z{{{|}z{z{{{|zz{z{|z}{z{|z{|z{|zz{{z{}zzz{{{}z{{{{|{|{z{}{|}{{z{|{|{z{z{}|{{z{||{|{}~|{{{|}~|{||{}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{|z{zz{||{z{z{||{|{{{||{{{{|{|zz{{{|}z{z{|{|zz{|{||{{|{||{|z{|z{zz{zzyyz{{{|z{{{{|{|zz{{{|}z{z{{{|zz{z{||{{z{||{|z{|z{zz{z}zzz{{{}z{{{{|{|zz{}{|}z{z{|{|zz{z{}|{{z{||{|z{~z{zz{z{zzz{{{|z{{{{|{|~z{{{|}{{z{{{~~z{z{~|{{z{~|{|z}|z{z{{z}}{z{{}}z{{{{|}||z{}{|}{{z{|{|{z{z{}|}{z{||{||}~|{|{{|}~|||{}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|{|{|yzzzzyzzyzzzzzyz{zzyzzyzzzyyzzz{yyyzzzzzyzzzzyzzzzzzzzz{||{z{{z{||{|z{||{{zzz{|zz{zz|}z{z{|z|zz{|{|z{{|{|zzzz}zz{z{{z}}z{z{{}z{{{{|}||z{}{|}z{z{|{|zz{z{}z}{z{|z{|z}~z{z{{z}~z{z{{}z{{{{|}|~z{{{|}{{z{{{~~z{z{~{}{z{~{{||}~|}|}}|}~|}||}}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||zzzyzzzzzzzzzzzzz{z{zyzzzzyzzzz}{zzzz{|{zzz{{{yzz{z{zzzz{zz{zzzz{{zzzzz{z{zz{z{zzz{zz}{z{zz{|{{zz{{{zzz{z{zzz{||{z{{z{||{|z{{||{{zz{|zz{zz|}{{z{|{|{z{|{|{{{|{|{zzz{|z{z{{z{|z{|{{{|z}{{{{|{z{{{|}{{z{|}||z{|}|{{{|}|{{zz{|z{zz{z{}zzz{{{}z{|{{|||z|}{|}|{z||{|{z{z|}|{{z{||{|z}~z{{{~z}~{{z{~}~z{~{~|}~z~}~|}{{{~|~~~{{z~~{}{z{~{~|zyzz{zzzzzz{|}z|}z}{}z{z{zzzzz{z{zzzz{zzzzzzz{|zzzzzz}zzzzzzzzzz{{z{zz{zzzzz{|{{z{{z{|{zzz{{{z{{z{z{|zz{z{|}z{{{{|zz{z{|z{{z{|z{zz{|{{zz{z{|{zz{{{|z{{{{|{|zz{{z|}z{z{{|zz{z{||{{z{||{|z}z{{z{{z}z{{z{{}{z{{{{|}||z{{{z}{{z{{|{z{z{|{}{z{|{{|z{|||z|{z|}|||z||}|{|z||||zz|}||}||z||||z||{}z{||{|zzzz{~|~z~{z~~|~|z~~~z}~z~|~~~z~}~|}{~z~|}~z~|}~{{~|}~{{zz{|z{z{{z{|z{|z{{|z}{z{z{|zz{z{|}z{z{|}||{z{|z{{|}|z{zz{|z{z{{z{|z{|{{{|z}{{{|{|zz{{{|}z{z{|}||zz{||{{|}||{|z}|z{z{{z}|z{|{{}|z}{{{|}||z{{{|}{{z{|}||z{{|{}{|}|{{|z{|z{z{{z{}z{|z{{}z}{z{|{|zz{}{|}z{z{|}||z{|}z{{|}zz{zz{~{{z{{z{~{{|z{{~z}{z{z{~~z{z{|}z{z{|}|~z{|}z{{|}~z{z{}~|}|}}|}~|}||}}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||z{||{z{{z{||{|{{{||{{{{|{|zz{{{|}z{z{|{|zz{|{||{z{||{|z}||{z{{z}||{|{{}||{{{{|}||z{{{|}{{z{|{|{z{|{|{}{{|{{|z{||{z{{z{}|{|z{{}|{{z{|{|zz{}{|}z{z{|{|zz{|{}z{{|zzzzz{~|{z{{z{~|{|z{{~|{{z{z{~~z{z{|}z{z{|{|~z{|{|z{{|{zzzz{||{z{{z{}|{|z{{}|}{z{|{|zz{}{|}{{z{|}||z{|}}{{{|}|{z{}~|{|{{|}~|{||{}~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||{yyyyyyyyyzyyyyyyzyyyyzyyyyyyyyyyyzyyyyyyyyyyyyyyyzzyyyzyzyyyzyyzyzyyzyyzyzzzzzyzyzyzzzzyyzzzz{yyzzyyyyzzzyyzyyyyyzyzyyyyyzzzyyyzzzzyyzyzzzyzyyzzzyyyyyyyzyyzzyyyzzyyyyzyzyyyyyzzzzyyzyzzzzyyyzyzzyyyzzyzyyyyyyyyzz{yyzzyyyyyyzzyyyyzzzyyyzyzyyzyyyzzzzyyyzzy{yyyyyzyyzzzyyyyyyzyzyzzzyzyzyzyzzzyzyzzzzzyzzzzzzzzzzzzyzyzzzyzzyzzzzyzzyyyyzyzzyyyyzzzzyzzzzzyzzyzzzzzyyzzzy{yyzzyyyyzz{zyzzzzyyyyyzyyyyzyzzzzzyzyzzzzyzyzzyzyzzyzyyzyzyyyzz{yyzyyyyyyzzyyyyyyzzyyyzyyzyyyyyyyyzyyyyyyyyyyyyyyyzzyyyzzyzyyyzyzyzyyzzzzyzzzzzyzyzzzzzzyzzzzz{yyzzyyyyzzzzyzzyyyyyzyzyyyyzzzzyyzzzzzzzyzzzzzyyzzzyzyyyyyzyyzz{yyzzzyyyyzyzzyyyzzzyyyzzzzzzyyzzyzzzyyzzz{yyyyyzyyzzzzyyzyzzzyzyzzyzzzyyzzzzzyzzzzzzzzzzzz{zzzzzz{yzzzyyzyzz{yyzzzyyyyzyzzzyyzzzzzzzzzzzyzyzzzyzyyzzyyyyyzzyyyyzzzyyzzzyyyyzyzzzyyyzzzzyzyyzzzyyyyyzzyyyyyyyyyyzyyyyzzyzyzzzzyyyzyzzzzyyzzzzzzyzzzzzzyzyzzyzyzzyzyyzyzzyyzz{yyzzyzyyyzyzzyzyyzzzyzzzzzzzyzzzzzzyzzzzy{yyzzyzyyzz{zyzzzyzyyzyzzzyyyzzzyyzzzzzzzyzzzzzzyzzzz{yyyzzzyyzzzzzzyzzzyzyzzyzzzyzyzzzzzz{zzzyzz{zzz{zzzzzzzyzzzzzzyzzzzyzzzyyyyzzzzzyyyzzzzzzzzzzzzyzzzzzyyzzzyzyyzzyzyyzzzzyzzyyyyyzyzzyyyyzzzzyyzyzyzyyyzzzzyyyzzy{yyyyyyyyzzzyyzzzyyyyzyzzzyyyzzzzzyzyzzzyyyzzzzyyyzzy{yyyzyyyyzzzzyzzzzyyyzyzzzzyyzzzzzzzyzzzzzyzzzzyzyzzy{yyzyyzyyzz{zzz{zzzzyzzz{zzyzzzz{zzzzzz{zzzzzzzzzzzzz{zyzzzzyzzz{zzzzzzzzzz{zzzzzzzz{zzzzz{{{zzz{{{zzzz{{{z{zzzzyzzzzzzzyyzyyyyyzyzzyyyyzzyzyyzyzzzzyyyyzzyyyzzyzyyyyyyyyzz{zyzzzyzyyzyzzzyyyzzzzyyzzzzyzyyyzzzyyyzzyzyyyyzzyyzz{zyzzzyzyyzyzzzyyyzzzzzyzzzzzzzyzzzzzyyzzzzyyyzzzyyzz{zzzzzzzzyzzzzzzyz{zzzzzzz{zzzzzz{zzzzz{zz{zyzzzzyzzz{zyzzyzyyyzyzzyzyyzzzzzzz{zzyzzz{zzzyz{zzzzyyzzzzyyz{{zyyyyyyzzzzzyzzzzzyzzyzzzzzyyzzzzzzzyzzzzyzyzzzzyzyzyzzyzyzzyzzzzyzzzzzyzzyzzzzzyzzzzzzzzzzzzzyzzzzzzyzzzy{yyzzyzyz{{yyzz{zzyzzyzz{zzyzzzzzzzzzzzzzyzzzzzzyzyzzzyzzzzzyz{zzz{z{zzzzzz{{{zzzzz{{{zzzzz{{zzzzz{zzzzzzyzzzzzzzzzz{zyz{z{zyzzzz{z{zzzzz{z{{zzzz{zzzzz||zzzzzz{zzz{zzz{|zzyzzzyyyyzyzzzyyyzzzzzzzyzzzzzyyzyzzyyyzzy{yyzzyzyzz{yyzzzyyyyzyzzzyyyzzzzzzzzzzzzzyzzzyzyyzyyyzyyzzyyyzzyyyzzzyyyyzzzzzyyyzzzzzzzzzzzzzyzzzzzyyzzzyzyyzzyzyyzzzyzz{zyyyzyzz{zyyzzzz{zzyzzzzzzyzyz{yzzzzz{yyzzzzyyzzzzyzzzzzzzzzzzzzzz{zzzzz{z{zzz{{z{zz|z{z{|zzyz{zzzzz{|{yzyyyyzyzzyyyzzzzyyyzzyyyzyyzzyyyyyzzzyyyyy{yyyyzzzyyyyyzyzyzyzyyz{zyyyyz{{yyzyyz{{zyzyzzz|zyyy{yyyyzzz{yzyyzyzyzzzyyzzzzyyyzzzzyzyyzzzzyzyzzzzzyyy{yyyyzzyzy{zzyz{y{yzzzz{zzz{zz{z{{zyzz{yzzyzz{{{yzz{{zzz{z{{zz{zzzyzz{{zyz{{|yzzz{{{zz{zz{{{{yzz{z{|zyzz|zyzz{{z{yyyzyzyyyzzyzyzyyzzzyyyyzzzzyzyyzzzyyzyzzzzzyyy{yyyyzzzzy{zzyyyy{zzyzzy{zzzyzyz{z{zyzyzzyzyzz{{yyzy{yyzz{zyzyzzyyyyzyzyyyzzzzyyyzzyyyzyyzzyyyyyzzzzyyyy{yyyyzzzyyzzyyzyzyzzyyz{zzyyyz{{zyzyyz{{zyzyzzz|zyyy{yyyyzzz{y{zzzzz{y{zzzz{zzz{zz{z{{zyzz{zzzzzz{{{zzz{{zzz{z{{zz{zzyzyzz{{yz{{|yzzz{{{zz{zz{{{{yzz{z{|zyzz|zyzz{{z{yzzyzzyzzz{yzzzzz{zzyzzz{{zzzyzz{{zzzzz{z|zzyz{zzyzz{{{y{zzyyyyy{{zyyy|zy{yyyy{{zyyyyyyyyzy{y{yyy{zyyy{{zyzy{zzyyyyy{zzyzz{zzzyzyz{z{zyzyzyyzyzy{{yyzy{yyzz{zyzy{zzzzz{y{zzzzz{zz{zz{{{{zyzz{{zzzzz{{|zzz{{zzz{z{{{z{zzzzyzz{{zyz{{|zzz{{{zz{zz{{{{zzz{z{|zzzz|zzzz{|z{zzy{zzyzyzz{zzyzzz{zzyzzz{yzzyzzzzyzyzz{{zyzz{yyzzzzzzyzzyyzyzyzzzyyz{zzyyyyyzyzyyz{{zyzyzzz|zyyy{yyyyzzz{y{zzyzyzy{{zyyz{|zy{yyy{{zyyz{{zyzzz{z|zyy{{yyy{{zz{y{zzyzyzy{zzyzz{{zzzyzz{z{yyz{{zyzyzz{|zyzy{yyzz{zz{yzzyzzz{yzzzzyz{zzyzzz{zz{yzz{{zzzzz{z|zzyz|zzyz{{{{{{{z{{{{{{{{{z{{|{zz{{{{z{z{{{{|{{{{{{|{{{z||{{z{|{{zyzzzzzzzyzzzzyz{zzz{zz{{z{yzz{{zzzzz{z|zzy{|zzy{{zz{yzzyzyz{yzzyzyz{zzyzzz{zzzzyzyyzzyzz{zzyzyz{zzyzz{{zyzzyzyz{yzzyzyz{zzyzzz{zzzzyzyzzzyzz{zzyzyz{zzyzz{{zz{zzzyz{z{{zzyz{|zy{zz{z{{zyzyzzzyzz{z{yzy{{zzy{{{{zz{zzzzz{z{zzzz{{{zzzz{{z{z{zz{z{zzz{{{{zzzz{zzzz{|{zz{{z{z{{z{{z{z{{{{z{{{{{{{{z{{{z{z{{{{|z{z{|{{z{{{{{yyzz{yzz{zz{{{{yzzzyyyzyzzzyyzzzzz{yzzyz{zzyyzzzyzzz{zyyzy{yyy{zzzzyzzzyzyzyzzzyyzzzzz{zzzzz{zzzzzzzyzzz{zzzzz{zyy{zzzzyzzzzzz{yzzzzyz{zzz{zz{{z{zyzz{zzzzzy{z|zzz{zzy{z{{{z{zzzzzzz{zzzzzz{zz{zzzz{{zzzzzzzzzzz{{{zzz{zzz{z{zzy{{z{zz{y{{z{zz{|{z{{z{{{{{z{z{{z{z{z{{{z{z{zzz{{{{zy{zzyzyzy{{zyyzz|zyzyzzz{z{yyzyzyyzyz{z{zyzz{yyyzzyzy{zzzzz{y{{zzyz{|zyzzz{{{z{yzz{yzzzzy{z|zzzz{zzzz{{{y{zzyyyzy{{zyzzz|zzzzzzz{z{yzzzzzyyzz{{{yyzz{yyzzzyzy{zzzyzzy{{zzyzz|zz{zzz{{{{yzzz{zzyzy{z{yzz{{zzy{zzzz|{{{|zz{|{|z{{{|{{{z{{||{{{{|{{|{|z{{{||z{{|{z{{{z{zy{zzzyz{y{{zzyz{|zzzzz{{{z{yzz{{zzyzz{z{yzz{|yzyz{{{zyyyyzz{|{{y{{z|{y{z{z{|y{{z{z{|zz{z{|}z{z{{||zz{{{|z{{zzz{zz{|{{z{{{|{{{z{{{|z{{z{{{|~z{z{|}z{z{{|~~z{{{~z{{|{{{{|{|{{{{|||{{{{||}|y{{{||}||{{{||}z{{{{||z{{{{|z}{|{{{{|{|{{{{{||{z{{{|{|z{{{{|{|z{{{{|}z{{{{||z{{{{||{{|{{{{z{}{{{{{|}{{{{{|{}{{{{||{|z{{{{|}z{{{{||z{{{{|z{{~|{|||{~|{|{||~|{||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{{{z{|{{z{z{|{{z{{z|{{|z{z{|z}{z{z{|zz{z{|}z{z{|}||z{|}|z{{|{{z{zzzyyy{{z|{y{z{z{|y{{z{z{|zz{z{|}z{z{{||zz{{{|z{{~{{z{zz{z{z{{{|{{{z{{{|z{{z{{{|~z{z{|}z{z{{|~~z{{{~z{{|{{{{{|{|{{{|||{{{{||}|z{{{||}||{{{||}z{{{{||z{{{{|z}{|{{{{{|{}{{{{|}{{{{{|{}{{{{||{|z{{{{|}z{{{{||z{{{{||{{~|{|{{|{~|{{||~|{||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{{zyzzzzzyzy{zzzyz{zyzzzzz{zzyzzzz|zzzzzzzyzzyz{zzyyzzzzyz|z{z{zz{|{{z{{|z{|z{z{|z}{z{z{|zz{z{z}z{z{|}z|z{|}zz{{~{{{{{|{~{{{{{|z{{{{|{|z{{{{|{|~{{{{|}z{{{{|~~{{{{~|{{|{{{{{|{}{{{{||}{{{||}}{{{{||}||{{{||}z{{{{||z{{{{||}{~|{|{||{~|{|{||~|||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{|{z{{{{{|{{{{{{||{{{{zzzzy{{{||}z|{{{||}z{{{{||z{{{{|z}{z{{{{{|{{{{{{||{{{{{zz{z{{{||}||{{{||}z{{{{||z{{{{|z}{|{{{{{|{|{{{{|||{{|{|{|z}{{||}||{{{||}z{{{|}||{{|}|z}{|{{{{{|{}{{{{||}{{{{||}{{{{||}||{{{||}z{{{{||z{{{{|z}{~{{{{{|{~{{{{||~{{{{||}z{{{||}|~{{{||}z{{{{|~~{{{{~z}}~|{|}||}~|}|}}|~|}||}|}~}||}|}~~|}|}|}|}|}|}~~|}|}~|}|{zzzz{zz{{z{z{{{{z{zz{{z{z{zzzzzzz{z{z}z{z{z||zz{z{zzz{zzzz{zz{{z{z{{{{z{zz{{z{z{zzzzzzz{z{z}z{z{z||zz{z{zzz{|{{{{{z{|{{{{{{|{{{{{{z|z{{{{{|z{{{{|}{{{{{||{{{{{|z{{|{{z{zz{|{{z{{{|z{|z{{{|z}{z{{|zz{z{|}z{z{|}||z{|}|z{{|{{{{{|{}{{{{{|}{{{{{|{}{{{{||||{{{{|}|{{{{||z{{{{||{{~{{{{{|{~{{{{~|~{{{{~|}~{{{{~|}~{{{~|}z{{{{~~~{{{{~{}yyzz{zz{|}z{|}z|}z}z}z|{{zyzz{|{zz{{z|{z{z{z{|z{{zzz{|zzyz{|}zz{{||zz{{{|z{{|{{z{zz{|{{z{{z|zz{z{z{zz{{z{z{|zz{z{|}z{{{||zz{{{|z{{|{{{{{|{|{{{{{||{z{{{|{|z{{{{|{|z{{{z|}z{{{||z{{{{||{{z{{{{{|{z{{{{||z{{{{||}zz{{{||}||{{{|z}z{{{||z{{{{|z}z|{{{{{zz}{{{{z|}{{|{z|{}|{z{||{|z{{{{|}|{{{|||{{|{{z{{~|~{~{z~~|~{~~|~|~|{{|~~{}{{~|~~~{~{~|}z~{~|}~{~|}~z{{|{{z{zz{|{{z{{z|z{|z{z{|y}{z{z{|zz{z{|}z{z{|}||{{{|z{{|{{{{{|{|{{{{{||{{|{{|{|z}{{{|{|z{{{{|}z{{{|}||{{{||{{|{{{{{|{|{{{{|||{{|{||}|y}{{||}||{{{||}z{{{|}||{{{|z}z|{{{{{z{}{{{{{|}{{|{{|{}{}{{||{|z{{{{|}z{{{|}||{{|{z{z~{{z{zz{~{{z{{z~{{|z{z{~z}{z{z{~~z{z{|}z{z{|}|~z{|}z{{~|}|}||}~|}|}}|~|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}|yzyyyyyyyzzzyyyzzz{yyyyzzzzyzyz{zz{zyyyzzyyyyy{yyyyyzzyz{zzzzz{zz{zzzz{{z{zzzz{{z{zzzz{{y{{zzz{{yzzzz{yyzzzz{yzzzyzzz{zzzzzzyz|z{zyzzz|zyzzyz{|z{zzzzz{{zzzz{yyzzzzz{zzzyzzzzzzzzzzzzzz{zzzzzzzzz{yz{zz{zzzzzzyzzyy|yyzyz{zyz{{zzzzzz|{zzzz{z|{zzzz{zz{z{zz{z{|zzzz{zyzzzz{{{zzz{zyzz{zz{z{zz{z{zz{{z{zzzz{{z{z{zz{{y|{z{z{{z{zzz|zzzzz{{zyyy{{yzzyyyyzyzzzyyyzzz{yyyzzzyzzzyz{z{{zyyzzzyyyyz|yyyyz{zyz{{zzzzzz{{zzzz{z{{zzzz{z{{zzzz{z{{{zzz{yyzzzz{yyzzzz{yyzzyyyyyzzzyyyyzzz{yyyyzzzzyzyy{zz{zyyyzzyyyyy{yyyyyzzyzz{zzzzz{z{zzzz{{z{zzzz{{z{zzzz{{y{{zzz{{yzzzz{yyzzzz{yzzzzyzzz{zzzzzzz|z{zzzzz|zzzzyz{|z{zzzzz{{zzzz{yyzzzzz{z{{zzzzzzz|{zzz{z|{zzzz{zz{z{zz{z{|zzzz{zyzzzz|{{zzz{zyzz{zzzzz{zz{zzz{{z{zzzz{{z{z{zz{{z|{z{z{{z{zzz|zzzzz{{zyz{{zzzzyzzzzzzzzzzzzz{zyzzzzzzzzyz{z{{zzzzzzyzzzz|yzzzz{zzz{zzyzzzzz|zzzzzz|{zzzzzz|zzzyz{z{{zzzzyzyzzyz{{{zyzzzyz{{zzzzzzz{{zzzz{{{zzzz{z{{zzzz{z{{{zzz{yyzzzz{yyzzzz{yzz{zzzzz{z{{zzzz{{{zzzz{{z{zzzz{{z{{zzz{{yzzzz{yyzzzz{yz{{zzzzz{z|{zzzz{||zzzz{|z{z{zz{|{|zzzz{{{zzzz{{{zzz{z{zz{zzz{z{zz{z{zz{{z{zzz{{z{z{zz{{z|{z{z{{z{zzz|zzzzz{{zz{{z{{zzzzz{z{{zzzz{{{{zzz{{{{zzzz{{{{zzzz{{yzzzz|yyzzz{zyzzzzyzzzzzzzzzzyzzz{zyzzzzzy{yz{zz|zzzzzzyzzzz{yyzzz{zyz{zzyzzzzz|zzzzzzz|{zzzzz|zzzyz{z{{zzzzzzyzzzz{{{zzzzzyz{{zzzzzzz{{zzzz{{{{zzzz{{{zzzz{z{{{zzz{zyzzzz{yyzzzz{yz{{zzzzz{z|{zzzz{{|{zzzz{{{z{zz{{{|{zzz{{yzzzz{{{zzz{{zzz{zzz{z{zz{z{zz{|z{zzzz{|zz{zz{|z|{z{z{{{{zzz|zzzzz{{{{{z{zzzzzz{z|zzzzzz||{zzzzz||zzzz{|{{zzzzz{{zzzz|{{zzz{z{zz{zzzzz{zz{zzzz{|z{zzzz{|z{z{z{zz{zzzz{{{zzzz|yyzzz{z{zz{zzzzz{zz{zzzz{|z{zzzz{|z{z{z{zz|zzzz{{{zzzz|yyzzz{z{z{{zzzzz{z|{zzzz{||{zzzz{||{z{zzz{{zzzz{{{zzzz|{{zzz{z{z{{zzzzz{z{{zzzz{|{{zzzz{|{{z{zz{{{{zzz{{{zzzz|yzzzz{{{|{{{{{|{{|{{{|{|||{|{|z{||{|z{{{|||{{|{|{{|{|{|{z{|{{{{{zz{z{zzz{z{{z{zz||{{z{zz||{{z|{z||{|z{z|{{zz{z|zzzzz|{{z{{zzz{zzz{{z{zz{z{{zzzz{z{{z{zz{z{|{{z{yz{zzz|zzzzz{{zz{{zzz{zzz{{z{zz{z{{zzzz{z{{z{zz{z{|{zz{zzzzzz|zzzzz{{zz{{zzz{zzz{{z{zz{z{{zzzz{z{{z{zz{z{|{z{{zz{zzz|zzzzz{{zz{{zzz{zzz|{z{zz{z|{zzzz{z|{z{zz{z{|{z{zzz{zzz|{{zzz{{z|{|{{{|{{|||{|{|{{||{|{{{{||{{{{|{{|{{|{|{|{|z|{{{|z{{zyyy{{yz{{z{{{{{yzzzyyyyzyzzzyyyzzz{zyzyzzzzz{yz{yz|zyyyz{yyyyz{yyyyzzyzzzzyzzzzzzzzzzzzzz{zzzzzzzzz{yz{zz|zzzzz{yzzyz{yzzzzzzz{{zzzzz{z{{zzzz{{{{zzzz{{{{z{zz{{{|zzzz{{yzzzz{yyzzzzyz{zzzzzz{z|zzzzzz||{zzzzz||zz{zz{|{|zzzzz{{zzzz{{{zzzz{z{|z{zzzzz||z{zz{{||z{zz{{||z|{z{{{|{z{z{{zzz{z|{{zzz|zzyyyz{{z|{zyz{{|{y{{{{||y|z{{{|{{{z{{{||z{z{|}y{z{|{}z||z|||}|||||||}||||||}||||{||}|{{||||}|}|||||}{||||{}z||z{|{{||{|{||{|{|{{|{||y|{{|{|{{{|{|{|||{|{|}y{|{|{}{{|{{{{{{|{{{{{{|{{{{{{||z|z{{{|{{{{{{{||{{{{|}z{{{|{}z||{{}{{}|{z{}|{}{}{{|{}|{|{{}{}}{{}{}{|}}{}{|}|{}{|{}}||||||}||||{|}}|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~z{|{|{|{z{}z}{{}z}{{}{}{{{{}}z|z{}{}}{{}{}{||}{}{|}z{}{|{}zz|{z{zz{zyzyz{{|{y{{{{||y|z{{{|{{{z{{{||z{z{|}y{z{|{}z|||z|||}||||||}||||||}||||{||}|{{||||}|}|||||}{||||{}z||{z{|{{|||{||{|{|{{|{||z|{{|{|{{{|{|{|||{|{|}z{|{|{}{||{{{}{{}|{{}|{}{}{{|{}|{|{{}{}}{{}{}{|}}{}{|}|{}{|{}}|||||||}|||||}}|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~{|{|y{zzz{zzz{z{zzz{zzzzzz|{zzzzzz|{zz{zzzz|{zzz{zzzzzz{|z{{{zz}z{}{{}z}{}{}{zzz}}z|zz}z}}{z}z}z||}z}{|zzz}{|{}z|||z|||}|||||||}|||||}||||{||}|{{||||}|}|||||}{||||{}z||{{{}{{}|{}{}|{}}{{|{}|{|{{}{}}{{}{}{|}}{}{|}|{}{|{}}|||||||}||||||}}||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~|{|||{z{|{{||{|{||{|{|{zz|{y|{{|{|{{{|{|{|||{|{|}z{|{|{}z||{z{|{{||{|{||{|{|{{z|{z|{{|{|{{{|{|{|||{|{|}z{|{|{}z||{z{}{{}|{}{}|{}{}{{|}}z|{{}{}}{{}{}{||}{}{|}z{}{|{}z||{{{|{{||{|{||{|{|{{|{|{|{{|{||{{|{|{|~|{|{|}|{|{|{~~|||{|}|}}||}|}|}}|}|||}}||{|}}}}{|}|}}|}}|}||}||}||{}}|||||||}||||||}}|||||}}~||||}}~|}|||}}~~||||}}}||||}~~{}|{|z|||}|{|||||}||||||}|||{zzz|{{||||}{}|||||}{||||{}{|{|z|||}|{|||||}||||||}|||{{zz|{{||||}|}|||||}{||||{}{|||z|||}|||||||}||||||}||||{|{|{{||||}|}|||||}{||||{}{|||z|}|}}||}|}|}}|}|||}}}||{|}}}{|}|}}|}}|}||}{|}||{}{|||{|||}|||||||}||||||}~|||{||}|{||||}|~|||||}|||||{~~||}|}|}}||}|}|}}|}|}}}}~|}||}}}~}}|}}}~~|}|}}}}}|}|}~~}||{{{|{z||{|{||z|{|{{|z}|{{{{|z}|{|z|z|}|{|{|}|{|{{{}}||{{{|{{||{|{||{|{|{{|{}|{|{{|{}|{{{|{|}|{|{|}|{|{|{}}||{{{|{{||{|{||{|{|{{|{}|{|{{|z}|{{||{|}|{|{|}|{|{|{}}||{{{|{{||{|{||{|{|{{|{}|{|{{|{}|{{|{{|}|{|{|}|{|{|{}}||{{{}{{}|{}{}|{}{}{{|{}}{|{{}{}}{{}{}|}}{}{|}|{}{|{}}}}|||}|}}}|}|}}}}|}||}}~}||||}}~}||}|}}~}|}|}}}|}|||~~{z{|}zz{|}z{|}z|}z}|}z|{z{{z{z|{{yz{{|zz{{{{||z|z{{{|{{{{z{{||{yz{|}zz{|{}zz|{z{{{{z|{{{z{{|{z{{{{|{z|z{{{|{{{{{z{||{{z{|}z{{|{}z||{z{|{{||{|{||{|{|{{|{||z|{{|{|{{{|{|{|||{|z|}z{||{}z|||{|||}|||||||}||||||}}||{{||}}|{||||}|}||||{}||||{}}{{{{{}{{}{{}{}|{}{}{{|{}}{|{{}{}}{{}{}{||}{}{|}|{}{|}|||~{~}~~}|~}~}|~}~}~~|~~}~|{~}~~}{~}~}~~~}~}~|}|~}~|{~||{{{{{|{||{{{{||||{{{{||||{{{{|||||{{{|||}{{{{||z{{{{|}z{|{{{|{||||{|{|||||{|{{||||{{{{|||||{|{|||}|{|{||z{|{{|}~{}}{}|}~|}{}|}||~}{}|}}|~}{}{{}|~}{|}|}|~|}|}|}|~z}|}{|}{{||{{{{|{|{{{{{||{|{{{{||||{{{{|||||{{{|||}{{{{||z{{{{|}z{||||{||{||{{|{|||{|{||||{||{{|||||||{||||}{|{|||{|{|{|}z|~|}{|}}|~|}|}||}~|{|}}|}~|}{{}|}z||}|}|}~}|}|}||z}|}{|}z}|}|{||~}|}|}|}}~|}|}||}~|}|}||}~|}||}|}~|~}|}|}~~|}|}|~|{{{|}z{||{{{|{|||{|{|||||{|{{||||{{{{|||||{|{|||}|{|{||~{|{{|}z}||{{{{{|||{{{{||||{{{{||||{{{{|||||{{{|||}{{{{||z{{{{|}z{~|{{{|{|||z|z|||{|{|{{||z|z{{{||z||{|{||z}|{|{||z{|{{|}~{}|}{}|}~|}}|}||~}|}|}}|~}|}{{}|~}||}|}|~|}|}|}|~z}|}{|}{{|||{|{||{||{|{|||{|{||||{||{{|||||||{||||}{|{|||{|{|{|}z|~|}{}|}}|~|}}||}~|{|}}|}~|}{{}|}|||}|}|}~}|}|}||z}|}{|}z}|}|{|}|~}|}|}}}~|}|}||}~|}|}||}~|}||}|}~|~}|}|}~~|}|}|~|{{|}z{~|}{}|}}|~|}|}|}~|}|}}{}~|}{{}{}~||}|}{}~}|}|}{|{}|}{|}z{||{{{|{~|||{|{||||{|{{|{||{{{z|z|||{|{|z|}|z|z|z~{|{{|}z{~|{{{|{||~|{|{||||{|{{||||{{{{|||||{|{|||}|{|{||z{|{{|}~{}|}{}|}~|}|}|}||~}}|}}|~}|}{{}|~}||}|}|~|}|}|}|~{}|}{|}{|~|}{}|}}|~|}|}||}~||}}|}~|}{{}|}|||}|}|}~}|}|}||z}|}{|}z}|}|{|}|~}|}|}|{}~|}|||}~|}|}||}~|}||}|}~|~}|}|}~~|}|}|~|{|}z{||{{{{{|{||{{{{||||{{{{{||{{{{|||||{{{|||}{{{{||z{{{{|}z{~|}{}|}}|~|}|}||}~|}|}}}~|}{{}|}~||}|}|}~}|}|}||{}|}{|}z{||{{{|{~|||{|{||~||{|{{|||{{{{|||||{|{|||}|{|{||~{|{{|}z{~||{|||||~|||||||~|||||||||{{||||||||||||}||||||z|||{|}~|~|}{}|}~|~|}|}||~~|}|}}|~~}{{}|~}||}|}|~~}|}|}|~z}|}{|}{}|}|{|}|~}|}|}|}}~|}|}||}~|}}||}~|}||}|}~|~}|}|}~~|}|}|~||}{{|||{|{||{|||{|{|||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{{|||{|{||{|||{|{|||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{{~|}{}|}}|~|}|}||}~|}|}}|}~|}{{}}~||}|}|}~}|}|}||{}|}{|}{{|||{|||~||||||||~|||||||~|||{{|||||||||||}||||||~|||{|}z|~|}{}|}}|~|}|}||}~|}|}}|}~|}{{}|}||}|}|}~}|}|}||z}|}{|}~}}|}{}}}~}}|}}}}}~}}}}}}}~}}}{|}}~}|}}}}~|~}}}}}~~}}}}|~|}z|}|}{}|}~|}|}|}||~}|}|}}|~}|}{{}|~}|||{|z|}|}|}|~z}|}{|}z|}|}{}|}~|}|}|}||~}|}|}}|~}|}{{}|~}||}{|||}|}|}|~z}|}{|}z|}|}{}|}~|}|}|}||~}|}|}}|~}|}{{}|~}||}||||}|}|}|~z}|}{|}z|~|}{}|}~|~|}|}||~~|}|}}|~~|}{{}|~~||}|}}~}|}|}|~{}|}{|}z|}|}{}|}~|}|}|}||~}|}|}}|~}|}{{}|~}||}|}||}|}|}|~~}|}{|}z~~|}{}~}~~~|}~}~|~~~}~}}|~~~}~{}~~~~|}~}~~~~}~}~~~}~}~|~~}}~}|||}||}~}|}|}}|~}|}||}|~}|}{|}|~}||}|}|~~|}|}|||}|}|~~}~}|||}||}~}|}|}}|~}|}||}|~}|}{|}|~}||}|}|~~}}|}|||}|}|~~}~}|||}||}~}|}|}}|~}|}||}|~}|}{|}|~}||}|}|~~}||}|||{|}|~~}~}|||}||}~}|}|}}|~}|}||}|~}|}{|}|~}||}|}|~~}|}}|||}|}|~~}~}}|}}}}}~}}}}}|}~}}}}}|}~}}}{}}}~}|}}}}}~~}}}}||}}}{|~~~~|}{}~}~~~|}~}~|~~~}~}}|~~~}~{}~~~~|}~}~~~~~}~}~~}~}~|~~{{{|}z{{|}z{|}z|}{}z}||}|}}|}}}|}}}}|}}}}}~~|~|~}~~|~}~~~~}~}|~~}~}~~}~~}~}}~}~~}~~}~}~~}}~}~}~~~~}}}}}}|}}}}~~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~~~}}}}}}}}}}}~~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~~~}}}}}}}}}}}~~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~~~}}}}}}}}}}}~~}}}}}}~|}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~~~}}}}}||}|}|~~}}}}}}~|}}}}}}~|}}}}}}~|}}}}}}~|}}}}}}~}~~}~|~|~~~|~|~~~|~|}~~}~|~~|~~}~||~|~~}~~|~|~~}|~|~|~~|}}}}}}}}}}}}}}~}}}|}~}}}}|}}~}}}}|}}~}}|}}}}~}}}}}}}~|}}}}}}}}}}}}}}}}}}|}}|}}}|}}}}}}|}|}}}}||}}}}}|}}}}}}|}||||||||||||}}||||}}||||||}}||||||}}||||||}}||||||}}|}||||||||||||}}||||}}||||||}}||||||}}||||||}}||||||}}|}|~}}}}}~~}}}}}~}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}|~}|||}}||||}}}}~}}}}||}}}}|}}~}}}}}}}~}}}}}}}~}}}}}}}~|}}}}}}}}}}}}}}|}}}}|}|}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}||}}}}}}}}}}}}}}~}}}}||~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~|}}}}}}}}}}}}}}}}}}}||}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}||}|||}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}|~}}}}}~~}}}}}~}}}}}}}|}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}||}}}}}}}~}}}}}}~}}}}}}}}}}}|}~}}}}}}}~}}}}}}}~}}}}}}}~~}||||||||||||}}||||||}||||||||||||||~|||||||~|||||||~|}}}}}}}}}}}}}}|}}}}|}|}}}}||||}}}}}}|}}}}}}}|}}}}}}}||}}}}}}}}}}}}}}~}}}}|}~}}}}|}|~}}}}}}~}}}}}}}~}}}}}}}~|}}}}}}}}}}}}}}}}}}}|}}}}}}|||}||}}}}}}}}}}}}}}}}}}}}}|}}}|~}}}}}~~}}}}}~}}}}}}}|}}}}}}}|}}}}}}|}}}}}}}|}}}}}}}||}}}}}}}}}}}}}}~}}}}|}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~|}}}}}}}~}}}}}}}}}}}}}}}}}}|}}|}}}|||}}}}}}}}}}}}}}}}}~}||||||||||||}}||||||}|||||||}||||||||||||||~|||||||~|}}}}}}}}}}}}}}|}}}}|}|}}}}|}}|}}}|||||}}}}}}|}}}}}}}||}}}}}}}}}}}}}}~}}}}|}~}}}}|}}~}}}}|}|~}}}}}}~}}}}}}}~|}}}}|~}}}}}~~}}}}}~}}}}}}}|}}}}}}}|}}}}}}}|}}}}}}|}}}}}}}||}}}}}}}}}}}}}}~}}}}|}|}}}}|}}~}}}}}}}~}}}}}}~}}}}}}}~|}}}}}}}}}}}}}}}}}}}|}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}~}}}}}}}}}}}}}}}}}}|}}}}}}|}}}|}}||||}}}}}}}}}~}||||||||||||}}||||||}|||||||}|||||||}||||||||||||||~|}}}}}}}}}}}}}}|}}}}|}|}}}}|}}|}}}|}}}|}}||||||}}}}}}||}}}}}|~}}}}}~~}}}}}~|}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}}}}}}||}}}}}}}}}}}}}}~}}}}|}|}}}}|}}~}}}}}}}~}}}}}}}~}}}}}}~|}}}}}}}}}}}}}}}}}}}|}}}}}}|}}|}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}|}}}}}}}~}}}}}}}}}}}}}}}}}}|}}}}}}|}}}}}}|}}}}|}|||||}~}||||||||||||}}||||||}|||||||}|||||||}|||||||}|||||||}}|}||}|||}||||~~}}}}}}}}}}~}~}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~~~}}}}}}}}}}~}~}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~~~}}}}}}}|}}~}~}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~~~}}}}}}}|}}~}~}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~~~}}}}}}}|}}~}~}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~~~~}|}}~}|}}}~~}}}}~}}~~}}}}}}}~~}}}}}}}~~}}}}}}}~~}}}}}}}~}~~|}|}|}}|}|}~}}|}||}}~|}|}}|}}~|}||}|}}~|}}|}|}}~||}|}|}}~}}|||||||||||}}}|||||}}}||||||}}}||||||}}}||||||}}}||||||}}}}|||||||||||}}}|||||}}|||||||}}}||||||}}}||||||}}}||||||}}}}|||||||||||}}}|||||}}|||||||}}|||||||}}|||||||}}|||||||}}}}|||||||||||}}}|||||}}|||||||}}|||||||}}|||||||}}|||||||}}}}}}}}}~}}}}}}}~}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}|}|}||}|}|}}}}}|}||}~}}|}}|}}~}}||}|}}~}}}|}|}}~}|}|}|}}~~~}|||}}}||}}~}}}}}}}}}}}}}|}}}~}}}}|}}}~}}|}}}}}~}}}}}}}}~}}|||||||||||}}}||||||}}||||||}}}||||||}}}||||||}}}||||||}}}}|||||||||||}}}||||||}}||||||}}}||||||}}}||||||}}}||||||}}}}|||||||||||}}}||||||}}||||||}}}||||||}}}||||||}}}||||||}}}}|||||||||||}}}||||||}}||||||}}}||||||}}}||||||}}}||||||}}}}}}}}}~}}}}}}}~}}}}|}}~}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}|}|}||}|}|}}}}}|}||}}~}}|}}|}~}}||}|}}~}}}|}|}}~}|}|}|}}~}}|}|}|}}|}|}}}}}|}||}}}}}|}}|}}}}||}|}}}}}}|}|}}}}|}|}|}}}~~}|||}}}||}|~}}}}|}}}}}}}}}|}}}}}}}|}}}~}}|}|}}}~}}|}}}}}~}}|||||||||||}}}||||||}}}||||||}}||||||}}}||||||}}}||||||}}}}|||||||||||}}}||||||}}}||||||}}||||||}}}||||||}}}||||||}}}}|||||||||||}}}||||||}}}||||||}}||||||}}}||||||}}}||||||}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}~}}}}}}}~}}}}}}}}~}}}}}}}}~}}}|}}|}|}||}|}|}}}}}|}||}}~|}|}}||}~}}||}}}~}}}|}|}}~}|}|}|}}~}}|||||||||||}}}||||||}}}||||||}}}|||||}}}||||||}}}||||||}}}}|}|}|}}|}|}}}}}|}||}}}|}|}}|}}}}}||}|}}}}}|}|}}}}|}|}|}}}~~}|||}}}||}|~}}}}|}}}}}}}}||}}}}}}}}|}}}}}|}|}}}~}}|}|}}}~}}|||||||||||}}}||||||}}}||||||}}}||||||}}||||||}}}||||||}}}}|||||||||||}}}||||||}}}||||||}}}||||||}}||||||}}}||||||}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}~}}}}}}}}~}}}|}}}|}|}||}|}|}}}}}|}||}}~|}|}}||}~|}||}|}}~|}}||}}~||}|}|}}~}}|||||||||||}}}||||||}}}||||||}}}||||||}}}|||||}}}||||||}}}}|||||||||||}}}||||||}}|||||||}}}||||||}}}|||||}}}||||||}}}}|}|}|}}|}|}}}}}|}||}}}}}|}}|}}}|}||}|}}}}}}|}|}}}|}|}|}}}~~}|||}}}||}|~}}}}|}}}}}}}}||}}}}}}}}|}}}}}}|}|}}}}}|}|}}}~}}|||||||||||}}}||||||}}}||||||}}}||||||}}}||||||}}||||||}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}~}}}|||}}|}|}||}|}|}}}}}|}||}}~|}|}}||}~|}||}|}}~|}}|||}}~||}}|}}~}}|||||||||||}}}||||||}}}||||||}}}||||||}}}||||||}}}|||||}}}}|||||||||||}}}||||||}}|||||||}}}||||||}}}||||||}}}|||||}}}}|||||||||||}}}||||||}}}||||||}}|||||||}}}||||||}}}|||||}}}}|}|}|}}|}|}}}}}|}||}}}}}|}}|}}}}}||}|}}}|}}|}|}}}}|}|}|}}~~}|||}}}||}|~}}}}|}}}}}}}}||}}}}}}}}|}}}}}}|}|}}}}}}|}|}}}~}}~}~}}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~||~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~||}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~||}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}||}}}}~}}||}~||}}|}}~}|}||}}~}}|}}}}~}}}}}}}}~~|}}}}}}||}}}}~|}||}~}|}}|}}~}|}|}|}~}}||}}}~}}|}}}}}~~||||||}|||||}~||||}~}|||||}~}|||||}~}|||||}~}||||||}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}~~}}}}}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}~|}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}|{}}}|~|}}||}~|}}}}}~}|}}}}}~}}}}}}}~}}}}}}}}~~}}}}}}}||}}}}~|}}||}~|}}}}}~}|}}}}}~}}}}}}}~}}}}}}}}~~}}}}}}}||}}}}~|}}||}~||}}}}~}|}}}}}~}}}}}}}~}}}}}}}}~~}~~~~~~~~~~~~~~~~|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}~}}}}}}}||}}}}~|}}|}}~}|}}}}~}|}}}}}~}}}}}}}~}}}}}}}}~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}|{}}}|~|}}|}}~}|}}}}}~|}}}}}~}}}}}}}~}}}}}}}}~~|}}}}}}||}}}}~|}}||}~}|}}||}~|}}}}}~}}}}}}}~}}}}}}}}~}}~~~~~}~~~~~~~~~~|~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}~~}}}}}~}}}}}}}}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}}~|~}}}}}}}}}}~|}}}}}|}}}|}}}|}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}||}}}}~|}}|}}~}|}}}}}}}|}}}}~}}}}}}}~}}}}}}}}~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}|{}}}|~|}}||}~}|}}}}}~}|}||||~}}}}}}~}}}}}}}}~~}~~~~~}~~~~~~~~~~|~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~}}}}}}~~}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}~}}}}}}}}~|}}}}}}}}}}}}||}}}}}|}}||}}}|}}|}}}}|}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}~|}}}}~|}}}|}~}|}}}}}}}|}}}}}~}}}}}}~}}}}}}}}~~}}}}}}}||}}}}~|}}|}}~}|}}}}}~}|}}}}}}}}}}}}~}}}}}}}}~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}|{}}}|~|}}||}~}|}}}}}~}|}|}}}~}}|||||~}}}}}}}~~}~~~~~}~~~~~~~~~~|~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}||}}}}}|}}||}}}|}}|}}}}|}|}}}}}}}}}}}}}}}}}}}}~|}}}}}}||}}}}~|}}||}~}|}}|}}}}|}}}}}~}}}}}}}~}}}}}}}~~}}}}}}}~|}}}}~|}}}|}~}|}}}}}~}|}}}}}}}}}}}}}~}}}}}}}~~}}}}}}}||}}}}~|}}|}}~}|}}}}}~}|}}}}}~}}}}}}}}}}}}}}}~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}~~~}}~}~~}~}}~~~}}}}}~}}}}}}}~}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}~~~~~}~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}~~~~~}~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}~~~~}~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}~~~~~}~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~~~~}~~~~~}~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}~~~~}~~~~~~~~~}~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}~~}~}~}}}~~~}}}}}~}}}}}}~}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~~~~~}~~~~}~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}~~~}}~}~~}~}}}~~~}}}}}~}}}}}}}~}}}}}}}}}}}}}}}}|}}|}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}~~}~}~}}}~~~}}}}}~}}}}}}}~}}}}}}}}}}}}}}}~~~}}~~~~~}~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}~~~~~}~~~~}~~~~~}~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}~~~~~}~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~~}~~~~~~~~~~~~~}}}}}}}}~~~}}~}~~}~|}}~~~}}}}}~}}|}}}}~}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}~~}~}~}}|~~~}}}}}~}}}}|}}~}}}}}}}}}}}}}}}~~~}}~~~~~}~~~~~~~~~~~}~~~~~~}~~~~~~}~~~~~~~}~~~~~~~~~~~~}}}~~~~~}~~~~}~~~~~~~~~~~~~}~~~~~~}~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~}~}}~}~~~~~~~~}||~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~||~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}|~}}}{|}}|~}}|}~}||}~}}|}|}~}|}|}}~}}}||}}}}}}}|}}}}}}|~}}}||}}}~}}||~}||}~}}|}|}~}}||}}~}}}}|}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}|~}}}|~}|}~}}}}~}}}}}}~}}}}}}~}}}}}}}}}}}}}}}}}}}}~}}}|~}}}|~}}|~}||}~}}}}|}~}}}}}}~}}}}}}}}}}}}}}}}}}}}~}}}|~}}}|~|}|~}||}~}}}}|}~}}}}}}~}}}}}}}}}}}}}}}~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~}}}}~~}}}}}~}}~}}}~}}}}}}~}}}}}}~}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~}}}{|}}}|~|}|}~}}|~}}}}|}~}}}}}}~}}}}}}}}}}}}}}}~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}|}}}}~}}}}~}}}}~}}}}}~}}}}}}~}}}}}}}}}}}}}}}~~}}}}}}}}}}}~~}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~}}}{|}}}|~|}|}~}||}~}}}}|~||||}}~}}}}}}}}}}}}}}}~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~}}}}|}}}}~}}}}~}}}}~}}}}}}~}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}|~}}}|}}}|}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}~}}}}~~}}}~}~}}}}}}}~}}}}}}~}}}}}~}}}}}}}}}}}}}}}~~~~}}~~~~~}~~~~~~~~~~~|~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~}}}}~~}}}~}~}}~}}}}~}}}}|}~}}}}}~}}}}}}}}}}}}}}}~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~}}}}|}}}}~}}}}~}}}}~}}}}}}~}}}}}}~}}}}}}}}}}}}}}}}}}}~}}}|~}}}|~}}|}~}|}}}}}}}}}~}}}}}}~}}}}}}}}}}}}}}}}}}|}}}}||}}}|}}}|}}}||}}}}|}|}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}~~}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}~~~~~~}~~~~~~~~~~~|~~~~~}~~~~~~~}~~~~~~~~~~~~~~~~}}}}}}}}}}~}}}}~}}}}~}}}}~}}}}|}~}}}}}}~}}}}}}}}}}}}}}}}}}}~}}}}|}}}}~}}}}~}}}}~}}}}}}~}}}}}}~}}}}}}}}}}}}}}}}}}}~}}}|~}}}|~}}|}~}|}}~}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}|~}}}||}}}|~}}|}~}||}}}}|}|}~}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}|~}}}|}}}|}}}||}}}}|}|}}}}}|}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}~~}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}~~~~~}~~~~~~~~~~~|~~~~~}~~~~~~~}~~~~~~~}~~~~~~~~}}}}}~}}}}~}}}}~}}}}~}}}}~}}}}|}~}}}}}}~}}}}}}}}}}}}}}{{|}{{||}}~}}}}~~}}{}}~}}}~}~}}}~}}}~}}~}}}}}}~}}}}}}~}}}}}}}}}}}}}}}}}}}~~}}{}}~}}}~}~}}}~}}}~}}~}}}}}}~}}}}}}~}}}}}}}}}}}}}}}}}}}~~}}}}}~}}}~}~}}}~}}}~}}~}}}}}}~}}}}}}~}}}}}}}}}}}}}}}}}}}~~}}}}|~}}|~}~}|}~}}}~|}~}}}}}}~}}}}}}~}}}}}}}}}}}}}}}}}}}~~}}}}}~}}}~}~}}~~}}}~}~~}}}}}~~}}}}}}~}}}}}}}}}}}}}}}{{{{|{}{{{{{}{{}}|{{{}}|||{{}}||{{{}}||{{{}}||{{{{}||{{{{{{{{|}|}{{{{{}{{}}|{{{}}|||{{}}||{|{}}||{{{}}||{{{{}||{{{{{{{{|}}}{{{{|}{{}}|{|{}}||||{}}||{|{}}||{{{}}||{{{{}||{{{{{|{||~~}||{||~|||}~|||~}|~~||~}|~|||~}|~|||~}|~||||}|~|||||}}}}~~~}}}}}~~}}}~~}}~~}}~~}~~}}~}~~~}}~}}}~}}~}}}}}}~}}}}}|{||}}}{|{||}|{|}}|{{}}|||||}}|||{|}}|||{|}}|||{|{}|||{|{||{||}}}{|{||}|{|}}|{{}}|||||}}|||{|}}|||{|}}|||{|{}|||{|{||{||}}}{|{||}|{|}}|{|}}|||||}}|||||}}|||{|}}|||{|{}|||{|{||{|}~~}}|{||~|}|}}~}|}}|}~|}~}|}|}}~}|}|}|~}|}|}|}}|}|}|}||{}|~}}||{}}~||}~}~|}|~}}~}|~}}}}||~}}}}|}~}}}}|||}}}}|||||}}}}}}}}}}}}~~}}}~}}}}}~}}}}}~}}}}}}~}}}}}}~}}}}}}}}}}}}}}}}}}}~~}}}}}|}}}}~}~}}}~}}}}}~}}}}}}~}}}}}}~}}}}}}}}}}}}}}}{{{|}}}{{{{|}{{{}}|{{{}}|||{}}||{|{}}||{{{}}||{{{{}||{{{{{{{{|}}}{{{{|}{{{}}|{{{}}|||{}}||{|{}}||{{{}}||{{{{}||{{{{{{{{}~~}}{{{|~{}{}}~}{}}}|}~{}}|}{}}~}|}{}{~}|}{}{}}|}{}{}{}{}|~}}|}{}}}}|}~}~|}|~}}|~}|~}|}||~}}|}|}~}}|}|}|}}|}|}|}}}}}}}}}}}||~}}|}}|}|}~}|}||}~}}}}}~}}}}}}~}}}}}}}}}}}}}}}|}|}}}}}}}}}}}~~}}}~}}}}}~}}}}}}~}}}}}~}}}}}}~}}}}}}}}}}}}}}}}}}}~}}}}}}|~}}}~}~}}}~}}}|}}~}}}}}~}}}}}}~}}}}}}}}}}}}}}}{{{|}|}{{{{|}{{{}}|{{{}}|||{{}}||{|}}||{{{}}||{{{{}||{{{{{{{{}~~}}{{{|~{}{}}~}{}}}|}~{}}}|}{}}}|}{}{~}|}{}{}}|}{}{}{}{}|~}}|}{}}}}|}~}~|}|~}}|~}|~}}|}||~}|}|}~}}|}|}|}}|}|}|}}}}}}}}}}}{||}}{}}|}{}}}|}|{}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}|{||}}}{|{||~|{|}}|{||~}|||||~}|||||~}||{|~}|||{|{}|||{|{||}||}}}}}}}}}}}~~}}}~}}}}}~}}|}}}~}}}}}}~}}}}}~}}}}}}}}}}}}}}}}}}}~}}}}}}||}}}~}~}}}~}}}|}}~}}}}|}~}}}}}~}}}}}}}}}}}}}}}{{{}~~}}{{{|~{}{}}~}{}}}|}~{}}}|}{}}}}|}{}{}|}{}{}}|}{}{}{}{}|~}}|}{}}}}|}~}~|}|~}}|~}|~}}|}||~}}|}|}~}|}|}|}}|}|}|}}}}}}}}}}}{|}}}{}}|}{}}}|}|{}}}|}}}}}}|}}}}}}}}}}}}}}}}}}}|{||}}}{|{||}|{|}}|{||}}|{|||}}|{|||}}|{|{|}}||{|{}|{|{|{||{||}}}{|{||~|{|}}|{|{~}||||{~}||||{~}|||{|~}||{|{}|||{|{||}||{}}}}}}}}}}}~~}}}~}}}}}~}}|}}}~}}}}}}~}}}}|}~}}}}}}}}}}}}}}}}}}~}}}}}}|}}}}~}~}}}~}}}|}}~}}}}|}~}}}}}|~}}}}}}}}}}}}}}}{}|~}}|}{}}}}|}~}~|}|~}}|~}|~}}|}||~}}|}|}~}}|}|}|}|}|}|}}}}}}}}}}}{|}}}{}}|}{}}}|}|{}}}|}}}}}}|}}}}}}|}}}}}}}}}}}}|{||}}}{|{||}|{|}}|{||}}|||||}}|||||}||||{|}}|||{|{}||{|{|{{||}}}{{{|||{{{}}|{{{}}|||{{}}||||{}}||{{|}}||{{{{}||{{{{|{||}|}{|{||~|{|}}|{|{~|||||{~}||||{~}|||{|~}||{{|{}||||{||}||{|}}}}}}}}}}}~~}}}~}}}}}~}}|}}}~}}}}}}~}}}}|}~}}}}}}}}}}}}}}}}}}~}}}}}}|}}}}~}~}}}~}}}|}}~}}}}|}~}}}}}|~}}}}}}{}}}}}}}{{|{|{|{||{|{}}||||}~~||||}|||~}~|||~}}}||~}}|||~}}|||~}}||||~}}|||||||||}~~||||}|||~}~|||~}}}||~}}|||~}}|||~}}||||~}}|||||||||}~~||||}|||~}~|||~}}}||~}}|||~}}|||~}}||||~}}|||||||||}~~||||}|||~}~|||~}}}||~}}|||~}}|||~}}||||~}}|||||}|}|}~~|}|}}}|}~}~|}|~}}}}|~}}}||~}}}|}~}}}|}|~}}}|}|}{{{|{|||{{{{{|{|}}|{||||{{||||{|||||{|{|||{|{||||{|{|{{{{|{|||{{{|{{{|}}|{||||{{||||{|||||{|{|||{|{||||{|{|{{{{|{|||{{{|{{||}}|{||||{{||||{|||||{|{|||{|{||||{|{|{|||}|~~}|||}}|}|}~}|}~}}||}~}}|}}~}}|}|~}}|}|}~}}|}|}|}~|~}|~~|~|~}|~|~~}|~}~~}|~}~~}~}}~~}~|~~~}~|~|~~}~|~|~|{||{||||{|||||||}}{||||{||||||||||||||||||||||||||||||{||{||||{|||||||}}|||||{||||||||||||||||||||||||||||||{||{||||{|||||||}}|||||{||||||||||||||||||||||||||||||{||}~~||{||}||||}~|||}}}||~}}|||~}}|||~}}||||~}}||||||||}{}}||||}||||}}}||}}}{|}}}}|}}}}}|||}}}||||}}}||||||}|||}|}}||||}||||}}}||}}}}|}}}}|}}}}}|||}}}||||}}}|||||{{{|{|||{{{||{|{|}}|{||||{||||{|||||{|{|||{|{||||{|{|{{{{|{|||{{{||{{{|}}|{||||{{|||{|||||{|{|||{|{||||{|{|{||||}~~||||||||||}~||||}|}||}||||~}||||~}|||||~}|||||||{|}{}|||{|}||||}}}||}}}}{|}}}|}}}}}|||}}}||||}}}||||||||{{}}||||||||||}}|||}||{||}}|{|}}||||}}|||||}}||||||}}}|{|{|}}||{||||||}}}|||}}|{||}}|||}}||||}}|||||}}||||||{{{|{||{{{{|{{|{|}}{{||||{{||||{||||{|{|||{|{||||{|{|{{{{|}~~|{{{||{|{|}~|{||}|}{||}||||}|||{~}|||{|~}|||{|{|{|}{||||{|}{|||}}}||}}|}{|}||}|}}}}|||}}}||||}}}||||||{||{}|||{|||||||}}||||}|{|||||||||}||||}||||||}||||||{|||{}}|{||||{|{|}}|{|}||{{|}}|{||}}|||}}|{|{|}}|{|{|{|}|||{|||}|||{||||||}}}|||}}|{||}}||||}}|||}}|||||}}||||||{{{|}~~|{{{||{|{|}~|{||}|}{||}|||||}|||{}|||{|~}|||{|{|{|}{||||{|}{|||}}}||}}|}{|}}|}|}}||}|||}}||||}}}||||||{|{{||{|{||||{||}|{|{|||{|{||||{{||||{||||{|{||{|{|{||{|{{}|||{|||||||}}||||}|{|||||||||}{||||}|||||}||||||{|{|{}}|{|{||{|{|}}|{|}||{{|}}|{||}}|{|{}}|{{|}}|{|{|{|}||||{|{|}}{|{||||{|}}}{|{}}{{|{}}{|{{}}{|{|}}{|{|}}{|{|{|{{{|}~~|{{{||{|{|}~|{||}|}{||}|||||}|||{|}|||{|}|||{|{|{|}{||||{|}{|||}}}||}}|}{|}}|}|}}}|}|||||}||||}}||||||{||{||||{|||||||}}||{|||{||||||||||||||||||||||||||||{{|{{||{{{|||{{{|}}{{{||{{{{||{{{{||{{{|||{{{{{||{{{{{|{|{{}|||{||{||||}}||||}|{|||||||||}{||||}|{||||}|||||{|{{{}}|{|{||{|{|}}|{|}||{{|}}|{{|}}|{|{}}|{|{|}}|{||{|}|||||{|||}}||{||||||}}}|||}}|{||}}||||}}||||}}|||||}}|||||{|{|}||{|}|{|}||}|}|}|||}|~~|{|}|||}||~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}||||}|~~}{|}|||}||~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}||||}|~~}||}|||}||~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}||||}|~~}||}|||}||~~}|}|~}||}|~}|}}|~}|}||~}|}|}~}|}|}|}|}||~~}}|}||}}}}~~}}}}~}|}}}~}}}}}~}}}}}~}}}}}~}}}}}}}{}~|~~~}{}~~}~}~~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}{{{{|}{{{{{{||{{||}{{{{|||{{{||{{{{||{{{{||{{{{||{{{{{{{{{|}{{{{{|||{{||}{{{||||{{|||{{{|||{{{|||{{{{||{{{{{{{{{|}{{{{{|||{{||}{{{{|||{{|||{{{|||{{{|||{{{{||{{{{{}|}||}||}|}|~~}|}|}|}|~}||}|~}|}||~}|}|}~}|}|}|}|}|}|}}{}~|~~~}{}~~~}~}~~~}~~~~|}~~~~}~~~~~}~}~~~}~}~~~}~}~}}|{|{|}|{|{|||||{|||}{{|||||{||||{{||||{|||||{|{|||{|{||{|{|}|{|{|||||{|||}{{|||||{||||{{||||{|||||{|{|||{|{||{|{|}|{|{|||||{|||}{||||||{||||{{||||{|||||{|{|||{|{||||{|}|||||||~|||||}||||||||~|||{|~|||||~|||||||||||||}|}||}~|}|}|||}|}}~}|}|}||}|}~|}||}~|}|}}~|}|}|~|}|}|}}|}}|~|}}|}}~~}}}~|~}}}~}|}}~}}}|}~}}}}}~}}}}}}}}}}}}}|}{{{{|}{{{{{|||{{{||}{{{||||{{||{{{|||{{{|||{{{{||{{{{{{{{{|}{{{{{|||{{{||}{{{||||{{||{{{|||{{{|||{{{{||{{{{{{|{{|}{|{|{||~{|{||}|{|||||{|||{{|~||{|{~||{|{|||{|{|{|{|||}~||{|||||||||}|||||||||||||||~|||||~|||||~||||||}|}||}{|}|}|~|}|}~~}|}|~}||}|~~}||~~|}|}~~|}|}|~|}|}|}|||}|~|}|||}~~|}|~|~}|}~|}||}~|}}}~|}|}|~|}|}|}|}|}|}||}|{{{{|}{{{{{|||{{{||}{{{||||{{|||{{{||{{{|||{{{{||{{{{{{|{{|}{|{|{||~{|{||}|{|||||{||||{{|||{|{~||{|{|||{|{|{{{{||}~{{{{|||{{{||}|{{|||||||||{||||{|{|~|{{{|~|||{{{}{}||}{{}{}|~|}{}~|}{}|~}||}|~}|}||~}}{}~}|}{}{}|}{}{}}|}{|}{|}|}|||}|}}~}|}|}|||}|}~|}{|}~||}}~|}|}|~|}|}|}|||}|~|}|||}~~|}|~|~}|}~|}||}~|}|}}~|}||~|}|}|||}|}|}||}||{|{{|}{|{|{||~{|{||}|{|||||{||||{{||||{|{||{|{|||{|{|{{{{||}~|{{{|||{|{||}{{|||||{{|||{|||||{|{||{|{|~|{{{|{}{}||}{{}{}|~|}{}~|}{}|~}{|}|~}{}||~}{}{}~}}{}{}|}{}{}|{|{|}{{|{|||||{|||}{|{|||||{||||{{||{|{||||{|{|||{|{|}|}{|}{|}|}|||}|}}~}|}|}|||}|}~|}{|}~|{|}}~|}}|~|}|}|}|||}|~|}|||}~~|}|~|~}|}~|}||}~|}|}}~|}|}|~|}|}}|}|}|}||}|||{{{||}~|{{{|||{|{||}|{|||||{||||{|{|||{|{|||{|{||{|{|{}{}||}{{}{}|~|}{}~|}{}|~}||}|~}|}||~}|}{}~}|}{}{}}{}{}{{{{|}{{{{{|||{{{||}{{{||{|{{||{{{{||{{{{||{{{{{|{{{{{|{|{|}{{|{|||||{|||}{|{|||||{||||{{||{|{|||||{|{||||{|}|}{|}{|}|}|||}|}}~}|}|}|||}|}~|}{|}~|{|}}~|}|}|~|}||}|||}|~|}|||}~~|}|~|~}|}~|}||}~|}|}}~|}|}|~|}|}|}|}|}|||}||||~|}|}~}}}|}~}~~}~}~|}~~}~}}~}~~}~~}~}~~}}~}~}~~~}~}~}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}|}}|}}||}}|||}||||~~|||}|}}}|}|}~}|}||}~|}|}||}~|}||}|}~|}}|}|}~||}|}|}~}}}}}}}|}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}|}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}~~}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~~~|}|||}}}||||~}}|||||}}||}}|~}}|||}|~}}|||}|~}||||}|~|}|}||||}}||||}}|||||}}||||}}}}||||}}}}||||}}}}||||}}}|}||||||}|||||}}|||||}|||||}}}|||||}}}|||||}}}|||||}}}|}||||||}|||||}}|||||||||||}}}|||||}}}|||||}}}|||||}}}|}||||||}|||||}}|||||||||||}}}|||||}}}|||||}}}|||||}}}}}~~}}}}}}}}}}}}~~}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}|}}}}}}~}}}}}||}}}}}}}|}}}}}}|~}}}}}}|~}}}}}}|~}}}}}}}|}}}}}}|}}}}}|}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}|}}}}}|}}}}}}||}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}|}}}}}|}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}|}~~}}}}}}}}}}}}~~}}}}}}~}}}}}}}~}}}}}}~}}}}}}}~}}}}}}}~}}|}|}||}}|}|}}}}|}||}}}}|}||}}}}||}}}}}}|}}}}}|}|}}}}}}}}}}}}}}}}}}}|}}}}}}|}}}}}}}|}}}}}}|}}}}}}}|}}}}}}}|~~|}||||}}||||~}|||||||}|||}}||}||||}|}||||}|~}||||}|~|}|}||||}}|||||}|||||}}}|||||}}}||||||||||||}}}|||||}}|}|}||||}}|||||}|||||}|}|||||}|}|||||}||||||}|}|||||}|}|}|~~}}}}}}}}}}}}~~}}}}}}~}}}}}|}~}}}}|}}~}}}}}}~}}}}}}}~}}}}}}}|}}}}}}}}}}}}|}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}|}|}||||}}|||||}|||||}}}|||||}}}|||||}}}||||}}}||||}}}}}}}}}}}}}}}}}}|}}}}}}|}}}}}}}|}}}}}}}|}}}}}}|}}}}}}}|~~|}||||}}||||~}|||||||}|||}}||}||||}||}||||}|}||||}|~|}|}||||}}|||||}|||||}}}|||||}}}|||||}}}||||||||||||}}}|}|}~~}}}}}}}}}}}}~~}}}}}}~}}}}}|}~}}}}|}}~}}}|}}}~}}}}}}~}}|}|}||}}|}|}}}}|}||}}}}|}||}}}}||}|}}}}}|||}}}|}}|}}}}}}}}}|}}}}}}|}}}}}|}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}}}}|}|}||||}}|||||}|||||}}}|||||}}}|||||}}}|||||}}}||||}}}}}}}}}}}}}}}}}|}}}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}}}}}}|~~|}||||}}||||~}|||||||}|||}}||}||||}||}||||}||}||||}||||}}}}||}}}}}}}}|}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}{||||}}|||||}||||||}|||||||}|||||||}|||||||}|||||||}||{||}}|{|||}||||||}|||||||}|||||||}|||||||}|||||||}|||||}}|||||}||||||}|||||||}|||||||}|||||||}|||||||}|||||}}|||{|}||||||}|||||||}|||||||}|||{|||}|||||||}}||}||}|||||||||||||||}||||||||||||||||||||||||||||||||||||||||||||{||||||}|||||||||||}|||||||}|||||||}|||{|||}|||||||}{||||||||||||{|||||||||||{||||||{||||||{{|||||{|||||{{{{{{||{{{{{{{{{|||||{{{{||||{{{|||||{{{||||{{{{|||}}}|}|}}}|}|}}}|}|}}}}|}}|}}}}||}|}}}}}|}|}}}|}|}|}}|}|||}|}}||}|}|}|}||}|}|}||}}|}||}|}}|}}|}|}}||}|}|}}|||||||}|||||||||||||||||||||||||||||||||||||||||||||||||||}|||||||||||||||||||||||||||||||||||||||||||||||||||}||||||||||||}||||||}|||||||}|||||||}|||||||}|||||||}|||||||||||||{|{||||||||||||||||||||||||||||}}|||||}|||||}||||}|}||||||}|||||||}|||||||}|||||||}||||||}|}}||}|}|}|}||}||}|}||}|}||}|}}|}}|}|}}||}|}|}}}|||||}}|||||||||||||||||||||||||||}|||||||}|||||||}{||||||}|||||{||||||||||||{||||||||||||||||||||||||||||||||}||||||||||||||||||{||{||||||||||||||||||||||{||||||}|||||{||||||}|||||{|}||||||}|||||||}|||||||}}}|||||}|||||}||||}|}|||||||}||||||}|||||||}|||||||}|||||||}|}}||}|}|}|}||}||}|}|||}|}||}}}|}}|}|}}||}|}|}}|||||||}||||||||||||||||||||||||||||||||||||||||||||}|||||}}|||||||||||||||||||||||||||||||||||}|||||||}{||||||}|||||{||||||||||||{||||||{|||||||||||||||||||||||||}||||||||||||||||||||||||||||||||||||||||||||}}|||||}|||||}||||}|}|||||||}|||||||}||||||}|||||||}||||{|||}|}}||}|}|}|}||}||}|}|||}|}||}|}}|}}||}}||}|}|}}|||||||}||||||||||||||||||{||||||||||||||||||||||||||||||||}||||||||||||||||||||||||||||||||||||||||||||}|||||}}||||||||||||||||||||||||||||||||{||||||||||}{||||||}|||||{||||||||||||{||||||{||||||{{||||||||||}}|||||}|||||}||||}|}|||||||}|||||||}|||||||}||||||}|||||{|||}|}}||}|}|}|}||}||}|}|||}|}||}|}}|}}|||}}||}}|}}{||||||}|||||||||||||||||||||||||{|||||||||||||||||||||||||}||||||||||||||||||{||||||||||||||||||||||||||||||||}||||||||||||||||||||||||||||||||||||||||||||}|||||}}||||||||||||||||||||||||||||||||{||||||{{|||zz|||{zz{}{}{{{{|{{{||{{{||{{|{||||{z||||{z{||||{{{zzzz{{{zz{{z}z{{{|{{{||{{{||{{{{||{|{z{|{|{z{||{|{z{z{{|||{{{{}|}{{{|~{{{||{{{|||{|{||||{{||||{{{||||{{{{||||}||||{|~|||{}|||}||||}|||||}|||||}||||||}||||||||{||}{||~}}}||~}}|~|}||~|}||~||}||~||}||~||{}||~||{||z{}z{}{{}|{{zz{|{{{z{z}zz{|{{{||{{{||{{z{||{{{{||{{{{{||{{{{{{{{z|{|z{{z}{}{{{|{{{||{{{||{{|{||{{{{|||{{{{|||{{{{{{{z|||{{{z}{}{{{|{{{||{{{||{{|{|||{{{|||{{{{|||{{{{{}|}|}}|}|}}}}}|}}|}|}}|}|}}|}||}}|}|}}}|}|}|}}|}|}|}||||||||||}{}||||}{{{|{|||||||||||||||||||||||||||||||||||||||}{}||||}|{||{|||||||||||||||||||||||||||||||||||||||}{}||||}||||{|||||||||||||||||||||||||||||||||}}||||}|~||||~|||}|||}}||||}}||||}}|||||}}|||||||}|}}}}|}|}}}~}|}}}|}}}}}}}}|}|}}}|}|}}}|}|}|}}|}|}|}{{{|||{{{{}|}{{{{}{{{||{{||{{|{|||{{{|||{{{{|||{{{{{{{{|||{{{{}|}{{{{}{{{||{{||{{|{|||{{{|||{{{{|||{{{{{|{||}}{|{|}|}|{|{}{|{||||{|{||{}|||{|}|||{|{}|||{|{|{{{||||{|{}}~||{|~||||||||||{|||||{|{|||||{||||||||{|||||}}}||||}}}|||}~|||}}}||}}}}|}}}|||}}}||||}}}||||||||||}|||}}}~||}|}|}|}||}|}||||}|||||}||||||}|||||||{zz|{|z{z{}{}{z{{|z{{||{{{||{z|{|{{zz||||{{z||||{{z{|z||}}z|{|}|}|{|{}{|{||||{||{||{|||z|}|||{|z}|||{|z|{z{|||{{|{}}}{|{|||{{||||||||{||||{|{|||||{||||||{{{|||||||||}}{~||}|~|}||||}|||||||||||||||||||||||||||||||||}}}||||}|}|||}}|||}}}||}}||}|}}|||}}|||||}}|||||||{||||{||}}}}||}|~|}||||}||||||||||||||||||{||||||{||z||}}z|z|}|}|z|{}z|{||||{||{||{||||z||||{|z}|||{|z|{z{||||{|{}}}{|{|||{||||{{|||{|||||{|{||{|{||||{|{|{|||||||||}}{}||}|}|}|||{}|||{|||||||||||||||||||||||{{{|||{{{{}|~{{{{~{{{|||{{|||{|{|||{{{|||{{{|||{{{{{||{||||}}}||||}|}|||}}|||}}}||}}||}|}}||||}}||||}}|||||||{||||{||}}}}||}|||}||||}||||||||||||{||||||||||||{||z||}}z|z|}|}|z|{}z|{||||{||{||{||||z|||||{|z|||{|z|{z{||||{|{}}}{|{|||{||||{||||{|{|||{|{|||{|{|||{|{|{|||||||||}}{}||}|}|}|||{}|||{|||||||||||||||||||||||{{{|||{{{{}|}{{{{}{{{||{{{|||{|{|||{{{|||{{{{|||{{{{{z{|||{{z{}{~{{{{~{{{|||{{|||{|{||||{{||||{{{||||{{{||{{{|||}}}||||}|}|||}}|||}}}||}}||}|}}||||}}|||||}}||||||{||||{||}}}}||}|||}||||}||||||||||||{||||||z||||||{{{{{{{{{{|}}{{{{{{{{{}|{{{{}|{{{{}|{{{{}|{{{{}|{{{{{{{{{{{{{{{}}{{{{{{{{{}|{{{{}|{{{{}|{{{{}|{{{{}|{{{{{{{{{{{{{{|}}{{{{{{{{{}|{{{{}|{{{{}|{{{{}|{{{{}|{{{{{|{|{{{|{|{}}|{||{{|{|}|{|{|}||{{|}||{||}||{|{}||{|{|}{}|{|}{}|}}}|}}}|}|}}||}|}}|}||}}|}|}}}|}|}|}|}|}|}{{{|{{{||{{|||{{{{{{{{{{{{|{zz{{{{{|||{{{|||{{{|||{{{|||{{{{||{{{{{{{{{{{{{{{||{{{{{{{{|||{{{|||{{{|||{{{|||{{{{||{{{{{{|{{{{|{|{|||{|{{|{||}|{{||}|{{||}|{|{|}|{|{{}|{|{|{|||||{|||||}}|||{||||}|||||}||{||}|||||}|||||}|||||||{||{{{|{|||{|{|}{{{{{{{||||||||||||{|||||{|{|||{|{||{||{{{|{|||{|{|}{{{{}|{|||}|||||}||{||}||{|{}||{|{||{||{{{|{|||{|{|}{{|{{{{||||||||||||{|||||{|{|||{|{||{|||{{|{|||}|{|}{{|||{{||||||||||||{|||||{|{|||{|{||{||{{||{||}}|||}||||||{|||}|||||}|||||}|||||}|||||||||}||}|||}|}}|||}}|||}}|||}}|}||}}|||}}}|||||}||||||{{{{{{{{{{||{{{{{{{{{{}|{{{}|{{{{}|{{{{}|{{{{}|{{{{{{{{{{{{{{{||{{{{{{{{{{|{{{{{{{{{{|{{{{{|{{{{{|{{{{{{{{{{{{{{{{||}{{{{{{{{{|{{{{||{{{{||{{{{||{{{{||{{{{{{{{{{{{{{{|}}{{{{{{{{{}|{{{{|{{{{}|{|{{}|{|{{}|{|{{{|{|{{{{|{|||||{|||{|{|||{|{|}|{{|}||{||}||{|{}||{|{||||{|||{{|{||}||{|}{{|||}|||||}||||}||{||}||{|{}||{|{|{{{{{{{{{{||{{{{{{{{{{|{{{{{|{{{{{{{z{{|{{{{{|{{{{{{{{{{{{{{{{||}{{{{{{{{{|{{{{{||{{{{|{{{{||{{{{||{{{{{{|{{{{|{|{|}}{|{{{|{|{||{||{||{{|||{|{|}|{|{|}|{|{|{|{|{{{{|{|||||{||{{|{|}|{|{||||{{|}|{||}||{|{}||{|{||{{|{{{|{{||||{|}|{|||||{|||||{|||||{{{|||{{{|||{|{{{|{{{{||{{{{{|}|{{{}{{{|{}|{{|{}|{{|{}||{{}||{{{}||{{{{{{{{{{{{{{||}{{{{{{{{{|{{{{{||{{{{||{{{{|{{{{{|{{{{{{{{{{{{{{{|}}{{{{{{{{{||{{{{||{{{{||{|{{|{|{{}|{|{{{|{|{{{{|{|||||{||{{|{||{{|{||{|{{||{|{||||{|{|{|{|{|{{{|{{{{{{||{{{{}{{{|{}|{{|{||{||{}|{{{{}|{{{}|{{{{{|{{{{{{|{{||||{|{|{|{|||{|{||{{{{||||{{{||||{|||{|{|{|{|{{{||{{{{{|}|{{{}{{{|{}|{{|{}|{{|{}||{{{}||{{}||{{{{{{{{{{{{{{|}}{{{{{{{{{||{{{{||{{{{||{|{{||{|{{|{|{{{|{|{{{{|{|||||{||{{|{||{{|{||{|{{||{|{|||{|{|{||{|{|{{{|{{{{{{||{{{{}{{{|{||{{|{||{||{||{{{{||{{{{||{{{{{{{{{{{{{{||{{{{{{{{{{}|{{{{||{{{{}{{{{{}|{{{{}|{{{{|{{{{{{|{{||||{|{|{|{|||{|{||{{{{||||{{{|||{|{|||{{|{|{|{{{{||{{{{{|}|{{{}{{{|{}|{{|{}|{{|{}||{{{}||{{{}||{{{{{|{}{{{{{|}{{{{{|{{{{{|{{{{{||{|{{|||{{{|||{{{|||{{{{{{{{|{{{{{{}{{{{{|{{{{{{{{{{{{{{{{{{||{{{{||{{{{||{{{{{{|{}{|{{{|}|{|{{|||{|{|{{{|{||{||{||||{{||||{|||||{|{|{|{}}||{|{}||||}|}|||}}|{||}}||||}}||||}}|||||}|||||||{||}|}|{||}||}||||}|}|}}{|}|}}||}|}}|}||}}|}|}|}|}|}|~{~|{~}~{~|}|~}~~~~}~}~~}|~}~~}~|}~~}~}~~~}~}~}~}~}~}~{{{|}{{{|}{{{|{|}|}|}{{{{{|{{{{{{|{z{{||{{{{}{{{{{}{{{{{}|{{{{}|{{{{}|{{{{{{{{|{}{{{{{|}{{{{||{{{{}{{{{{}|{|{{}|{{{{}|{{{{}|{{{{{{{{|{}|{{{{|}{{{{||{{{{}{{{{{}|{|{{}|{{{{}|{{{{}|{{{{{||{||}}}||{|}||}||}}|}|}}||}|}}||}|}}|}||}}|}|}}}|}|}||||||~~}|||}}}|}|}~}|}}~}||}}~}||}}~}|}|}~}|}|}~}|}|}||{||{}|||{||}{|||}|}{{{{{{||}|||{|}|||||}||||||||||||||{||{}|||{||}{|||}|}|{{{{{||}|||{|}|||||}||||||||||||||{||{}|||{||}{|||}|}||{|{{||}|||||}|||||}||||||||||||||{||{}|}|{||}{|}|}|}}|}}}{|}}}}||}}}}|}|}}}|}|}|}|}|}||{|||~~||{||}||||}|~|||}||||}~||||}~||||}~|||||~||||||}|}|}~~|}|}}}}}|}}~~|}|}~}}|}~|}||}~|}|}}~|}|}|~|}|}|}}{{{|{}{|{{{|}|{|{{|{|{|{|{{{{{{{||{||{|{{||{|{|||{|{|{{{{|{}{|{{{|}|{|{{|{|{|{|{{{{{{{||{||{|{{||{|{|||{|{|{{{{|{}{}{{{|}|{}{{||}{}{}}{{}}}||}{}}|}{{}}|}{}|}|}{}{|{{|{~~||{{|}||||{|~||||||{||||{|||~|||{{~|||||~|||||||{||{}}}|{||}||}|}|}}|}}}}{|}}}||}}}}|}|}}}|}|}}}|}|}|||||}~~||||}}}|||}~~|||}~|}||}~|||}~||||}~|||||~||||||}|{{{|{}{{{{{|}{{{{{|{{{{{|{{{{{||{|{{|{z{{||{{{{||{{{{{{{{|{}{}{{{|}{{}{{||}{}{}}{{}{}}||}}}|}{{}}|}{}|}|}{}{|{{|{~~||{{|}||||{|~||||||{|||||{||||||{{~|||||~|||||||{||{}{||{||}{|||}|}|||}||{||}|||||}||||}|||||||||||||{{{|{}}}{{{|}|{}{||}}{}|}}{{}|}|||}|}}}{|}}|}{}}}|}{}{||||}~~||||}}}|||}~~|||}~|}||}~|{||}~|||}~|||||~|||||||||{{{|{}{}{{{|}{{}{{||}{}{}}{{}{}}||}{}}|}{}}|}{}|}|}{}{|{{|{~~||{{|}||||{|~||||||{|||||{|||||||{{|||||~|||||||{||{}{||{||}{|||}|}|||}|{{||}|||||}|||||}||||||||||||{{{|{}||{{{|}|{|{||||{||||{{||||{|||||{|{||||{|||{|{|{{{{|{}}}{{{|}|{}{{|}}{}{}}{{}{}|||}{}}{}{{}}|{}}}|}{}{||||}~~||||}}}|||}~~|||}~|}||}~|{||}~||||}~||||~|||||||||||{{|{~~||{{|}||||{|~||||||{|||||{|||||||{{|||||||||||||{||{}{||{||}{|||}|}|||}|{{||}|||||}|||||}||||||||||||{{{|{}||{{{|}|{|{||||{|||{{{||||{|||||{|{|||{|{||||{|{{{{|{}{{{{{|}{{{{{||{{{{||{{{{||{|{{||{{{{||{{{{||{{{{{{{|{}}}{{{|}|{}{{|}}{}{}}{{}{}|||}{}}{}{{}}|{{}}}|}}{||||}~~||||}}}|||}~~|||}~|}||}~|{||}~||||}~|||{|~|||||||||{}}~}}}}~~}}}}}|}}}}}~~}}}}}}|~}}}}}}}~}}}}}}}~}}}}}}}~}||}|||~|}|||||}||||~~}}|||}|~}}||||}~}}||||}~}}||||}~}||||||||}|||||}|||||}}||||}}}}||||}}}}||||}}}}||||}}|}|}|}|||}}|||||}|||||}}}|||}|}}}|||||}}}|||||}}}|||||}}|||||||}}|||||}|||||}}||||}||}|||||||}|||||||}|||||||}|||||||}}|||||}|||||}}||||}||}|||||||}|||||||}|||||||}||~}|~}~}|~}~|}~}~}~~~}~}~}}~~}~}|~}~~}~~}~}~~|}~}~}~|}}|}}}}}|}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}|}}}}}}}}}}}}}{}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}||}}|}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}|||}|}}}}}}}}}}}}}{}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}|||||||}}}}}}}}}}}}}{}}}}}}}}}}}}}}}}}}}}}}}}}}}|||}||||}}|||||}||||}||||||||}|||||}|}|||||}|}|||||}|}|||}||||}}|||||}||||}}|||||||}||||}||}|||||}|}|||||}|}|||||||||||||||}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||{|||||||||||||||||||||||||||}}~||||~~~|||||}~|||~}|~|||{~}|~|||}~}|~|||}~}|||||}~}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}|}}}}}}}}}}}}|}}}}}|}|}}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}}|}}}}}}}}}}}}|}}}}}||||}}}}|}}}}}}}|}}}}}}}|}}}}}}}|}}|}}}}}}}}}}}}|}}}}}|||||}}}|}}}}}}}|}}}}}}}|}}}}}}}|}}|}}}}}}}}}}}}|}}}}}||||||}}|}}}}}}}|}}}}}}}|}}}}}}}|}}}|~}}}}~~}}}}}|}}}}}~~}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}~}}|~}}||~~}}||||}||||~}}||||||}|||}}|~}||||}|~}||||}|~}}}|}||||}}|||||}||||||}||||||}|||||}}}|||||}}}|||||}|}}||}||||}}|||||}||||||}||||||||||||||}|||||||}|||||||}}||}||||}}|||||}||||||}||||||||||||||}|||||||}|||||||}}||}||||}}|||||}||||||}||||||||||||||}|||||||}|||||||}}}}}~}}}}~~}}}}}|}}}}}~~}}}}}}|~}}}}}}~}}}}}}}~}}}}}}}~}}||}||||}}|||||}||||||}}|||}|}}}||||}}}||||}}}}||||}|}}}~}}}}~~}}}}}|}}}}}~}}}}}}||}}}}}}}|}}}}}}|~}}}}}}|~}}}|}||||}}|||||}|||||}|}|||||}|}||||}}}||||}}}}||||}}}|}|}||||}}|||||}|||||}|}|||||}|}||||||||||||}|}|||||}||}|}||||}}|||||}|||||}|}|||||}|}||||||||||||}|}|||||}|}|}}}~}}}}~~}}}}}|}}}}}~~}}}}}}|~}}}}}|}~}}}}}}~}}}}}}}~}|||}||||}}|||||}|||||}|||||||}|||||||}|||||}}||||||}||}||}||||}}|||||}||||||}}|||}||}}||||||}}|||||}}||||||}||~}}||~~}}||||}||||~}||||||{|||||}}|||||||}||||||}|~|}}||||||}||||||}|||||}|||||||}||||||}}||||||}}|||||}|}||||||||}||||||}|||||}||||||||||||||||||||||||||||||||}|}|}}~}}}}~~}}}}}|}}}}}~~}}}}}}|~}}}}}|}~}}}}|}}~}}}}}}~}|}|}||||}}|||||}|||||}|}|||||}|}|||||}|}||||}}|}|||}}||||}||||}}|||||}|||||}||||||||||||||||||||||||||||||||}||}||||}}|||||}||||||}}|||}||}}||||||}}||||||}}|||||}||~}}||~~}}||||}||||~}||||||{|||||}}|||||||}|||||||}||}}||||||}||||||}|||||}|||||||}||||||}}||||||}}||||||}||~|||}~|||}|}}|}|}~|}|}||}~|}|}||}~|}||}|}~||}|}|}~|||||||}||||}|}}|}|}~|}|}||}~|}|}||}~|}||}|}~||}|}|}~|||||||||||||}|||||||||||||}||||||}}||||||}}||||||}}||{|||||||||||||||||||||||{}||||||}}||||||}}||||||}}|||}|||||||||||||||||||||||}||||||}}||||||}}||||||}}||||||||||||||||||||||||||{}||||||}}||||||}}||||||}}||||||}|||}|}}}}|}|}}|}|}||~}|}||}}~}|}}|}}~}{|}|}}~|||||||{|||{|}}|{||||{|||||~|||||||~||{|{||~|{{||||~|||}|||||||||}}||||||||||||~|||||||~|||||||~|||||||~|||||||||||||}}|{||||{|||||~|||||||~||||{||~|||||||~|||||||||||||}}||||||||||||~|||||||~||||{||~|||||||~|||}|||||||||||||||||||||||}|||||{}}||||||}}||||||}}|||||||||||||||||||||{||||{||||||{||||||{||||||||||||||||||||||||||||||{||{|||{||||||{||||||{{|||||{|||||{{|{{{{{{{{{{||{{{{{{{{{{{||{{{{{|||{{{{{|||{{{{{|||||~||||}}||||}}}|||||}|||||||}|||}|||}|||}|||||||}||||~||||||||||}}||||||||||||||||||||||||{||||||||||||||~||||||||||}}|||||||||||}|||||{}}||||{|}}||||||}}|||~|{{{||{{{|}}|{|{||{||||||||{{{|||||{{|||||{|{||||||~|{{{||{{{|}}|{|{||{|{||||||{{{|||||{{|||||{|{||||||~||||~|||||}}||||~||||||~||||||}~||||||}~||||||}~||||~||||~|||||}}||||||||||||||||||}~||||||}~||||||}~|||}||||||||||}|||||||||||||||||||}|||||||}|||||||}||||}|||||||||||||||||||||||{|||||||||||||||||||||||||||}||||||||||||||||||||||||}|{|||}}||||||}}||||||}}|||}|||||||||||||||||||||||{||{{|||||||||||||||||||||||~||||~|||||||||||~|||||||~|||||}~||||||}~||||||}~|||||~||||||||||}||||||||||||{|||||||~||||||}~||||||}~|||~||||~|||||}}||||||||||||||||||{||||||||~|||||||~|||}||||||||||}||||||||||||||||||||}||||||}|||||||}||||||||||||||||||||||||||||{||||||{|||||||||||||||||||||||||||||||||||||||||||||}|||||{}}|{|||}}||||||}}|||~||||~|||||||||||~|||||||~|||||{}~|||||}~||||||}~||||||~||||||||||}||||||||||||{||||||||~|||||}~||||||}~|||}|||||||||||||||||||||||||||||||||||||||||||||||||||~||||~|||||}}|||||||||||{||||||{||||||{|||||||||~|||}||||||||||}||||||||||||||||||||}|||||||}||||||}||||||||||||||||||||||||||||{||||||{||||||{{||||||||||||~||||~|||||||||||~||||||{~|||||{}~||||{|}~|||||}~|||||||~||||||||||}||||||||||||{||||||||~||||{|}~|||||}~|||}||||||||||||||||||||||||||||||{||||||||||||||||||||}|||||||||||||||||||||||{|||||||||||||||||||||||||||~||||~|||||}}|||||||||||{||||||{||||||{|||||||{|||||}||||||||||}||||||||||||||||||||}|||||||}|||||||}|z{{{z{z{{{|z{z{z}{z{z{|z{z{|{{z|}{{{z|}|{zz|}{{z{zzz{{zzz{z{|zzz{z}{zzz{|z{z{|{{z{}{{zz{}|{zz{}{{zzz{{{|z{{{{||{{{{{~{{{{{|{{{||{{{|}{{{{|}|{{{|}{{{{{{{|}|{{{||~{{{|z~{{{|~~{{|~}|{|~}{{||~}|{{{~}{{{{{{{{{~}}{{{~~|}{||~}|}{~~{}|~}|}|~}||{|~}|}{|~}|}|}{zz{|{zzz{{~{zz{z|{{zz{}z{{~{{{z~|{z{z~|{|zz~|{|{zzzz{|{{{z{{~{{{{{}{{{{{}{{{~{{{{~|{{{{~|{|zz~|{|{{zzz{|{zzzz{~{zz{z|z{zz{}zz{~{{zz~|{z{z~|{|zz~|{|{zz{{{||z|{{|~{|{{|~|{|{{}{|{~|||{~||{{{~|||{{~|||{|{{{|~~||{~|~{~|~|}~|||~~|||~||{|~}|~||~}|~{{~}{~{|{zzz{{zzzzz{{zzzz|zzzz{zzzz{{zzz{{zzzz{{{{zz{{z{zzzzz{{{zzzz{{|zz{z|{zzz{|z{z|{z{z|{{z{z|{{{zz|{{{zzzzz{{{z{zz{{|z{zz}{z{z{|z{z{{z{z||z{{z||{{zz||{{z{z|{{|~||{{{||}{{{|||{{{{~{{||{|{||{{{|||{{{{{|{{{{{{{{|~||{{{||}{{{||}{{{{~{{||{|{|||{{||||{{{{||{{{{{{{|~||{{{||}{{{|||{{{{~{{||{|{||{{{|||{{{{{|{{{{{{{{|~||{{{||}{{{||~{{{|~{{||||{||}{{|||}|{{{|}{{{{{|{|~||~|{|~~|~|~|}~|~|~|~|~~|~|~~|~||~~|~|~~~|~|~|{{{{|z{{{{{|{{{{{}{{{{||z{{{z{{||{{{{||{{{{||{{{{{{{{{|z{{{{{|{{{{{}{{{{||{{{{z{{||{{{{||{{{{||{{{{{{{{{|{{{{{||{{{{{~{{{{||{{{|{{{|}{{{{|}|{{{|}{{{{{{{{~}{{{{{~~{{{|{~{{{{|~{{{}{{{~}{{{{~}{|{{~}{|{{{||||~}|||||~~|||||~||||~~|||~}||~}||||~}||||~}|||||{z{|{|z{z{{|{z{z{|{{z{{}{{||{z{{{{z{||{{{{z|{{{{z{{{{|||{{{{||{{{z{~{{{{{}{{|||{{|}{{{||}|{{{|}{{{{{{z{~{|{{z{~~{{{|{}{{{{{~{{||{{{|{{{{|~{{|{{~{{|{{{{{|~||z{{||~{z{~{~{{{{{~{{||{|{|~|{||~||{{{~|{{{z{|||{{~||{|{|~~|{||}}{|{|~~|{|~|}{|~}}{|~}}{|{~}}{|{|{{||||{{{|||{{{~|~{{{||}{{||||{||||{|||||{{||{|{{{z{{{|z{z{{||{{zzz~{{{z{|{{z||{{z|}{{{|}|{z{|}{{{{zzz{~{z{zz{~~z{z|{}{z{z{~z{z|{{{z|{{{{z{{|z{~{{|{{z{z|{{{{{z|{|{{{~{|{{{{{|{{{|{|{{|{|z|{||{{z|{{{{{{{{|~||{{{||~{{{||~{{{||~{{|||{{|~|{{||~|{{{~|{{{{{{{{|{{~||{|{{~~|{|{|}{|{|~~|{|~||{|~}||{|~}||{~}|||{{{{|~||{{{||}{{{~||{{{||~{{||{|{||{|{{||{||{|{{|{{{zz{~{z{zz{~~z{z|{}{z{z{~z{z|{{{z|{{{{z|{{|z{{{|{{z{z|{{{z{z|{|{z{~{|{{z{{|{{{|{|{{|{|z|{|{|{{z|{{{z{{{|{||{{{|||{{{||}{{{|||{{|||z{|||{{||||{{{{||{{{{{{{~||z{{{|~{z{{{~{{{{{~{{||{{{|~{{{{|~|{{{{~|{{z{{{{{|{{~||{|{{~~|{|{|}{|{|~~|{|~||{|~}|{{|~}|{|{~}|{||{{||{|{{{|||{{{~|}{{{|||{{||{|{||{|{{||{||{z|{{|{{{{{|{{{z{{{{z{{{|{{{{{{{{{{{|{{{{{|{{{{{|{{z{{|{{{{z{{{{{{{{{{{{{{{{|{{{{{{{{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{|{|{{{{||{{{{|{{{{{|{{{{||{{{{||{{{{||{{{{||{{{{{{{{{{{{{{{{z{{{|||{{{{|{{{{||{{{{|}{{{{|}{{{{|}{{{{{{{{{{{|{{{|{{|{{{||{|{{|{|{||{{{{|}}{{{{}}|{{{}}|{|{{{{{{|{{{{{|{{{{|||{{{{{{{{{{||{{{{|}{{{{|}|{{{|}{{{{{{{{{{{{{{{{{{{{{|{{{{{{{{{{|{{{{{}|z{{{}|{{{{}|{{{{{{{{|{{{{{{{{{{{||{{{{{{{{{{|{{{{{}|{{{{}|{{{{}|{{{{{{{{{{{{{{{{{{{{||{{{{{{{{{{|{{{{{}|z{{{}|{{{{}|{{{{{{{||{|{{{||{{{{||{{|{|{{|{||{{{{|}|{{{|}||{{|}||{{{{{|||||}{{|{{}{|{}}{}{|}{}{}}||}{}}|{|{}}|}{{|}|}{}{zz{z{zzzzz{{zzz{{{zzz{zzz{{z{{zz{{{{{{{z{{zzzz{{zzzzz{{{{{{zz{{{{zz{{|zzz{{{z{{z{{{{{{{{{{{{{{zz{z{{{zzzz{{{|{{{z{{{{z{{||{{{{{{{{{{{{{{{{{{{{{{{{{z{{{{{z{z|{{{{|{{{{{{|{{{{{||{z{z{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{{|{{{{{{|{{{{{||{{{z{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{{|{{{{{{|{{{{{||{{{{{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{|{{|{{|{|{|{{|{{|||{|{{{|{||{{|{||{|{{||{|{|||{|{|{|{{|}||{|{{|||{||||{|||{||||{|||||}|{{||}|{|{|}|{|{|{{{{|{|{{{{||{{{|||{{{{|{{{z{{{{{|{{{{{|{{{{{|{{{{{{{{{{|{|{{{{||{{{|||{{{{|{{{{{{{{{|{{{{{|{{{{{|{{{{{{{{{{|{|{{{{||{{{|||{{{{|{{{{|{{{{||{{{{||{{{{||{{{{{{{{||{|{{{{||{{{|||{{{{|{{{{{{{{{|{|{{{|{|{{{|{|{{{{|{{{|{|||{{||||||||||||||||||{{|||||{{||||||{|||||||||{|{|||{|{||||{||||{|{||||{||||{||}|{|||}|{|{|}|{|{|{{{{|{{{{{{{{{{{{||{{{{{{{{{{{{{{z{{z{{{{{{{{{{{{{{{{{{{|{{{{{{{{{{{{||{{{{{{{{{{|{{{{|{{{{{|{{{{{|{{{{{{{{||{{{{{{|{{{{{||{{{{{{{{{{{{{{{{|z{{{{|{{{{{|{{{{{{{{|{{{{{{||{{{{||{{{{{|{{{{|{{{{{{{{{{}{{{{{}{{{{{{{{{|{|{{{{||{{{{||{{{{|{{{{|{{{{{||{{{||{{{{||{{{{{{{{{{{|{|{{{{||{{{|{|{{{{|{{{{|{{{{{|{{{{|{{{{{|{{{{{{z{{{{{{{z{{{{{{z{|{{{{{{{{{{{|{{{{{|{{{{|{{z{z|{{{{zz{{{|{z{z{{|{{{{{||{{{{{{{{{{{{{{{{{|z{{{|{z{z{|{{{z{{{{|{|{{{{|{{{{{||{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|{|{{{{||{{{{||{{{{|{{{{|{{{{{|{{{{{|}{{{|}{{{{{{{{{|{{{{{{|{{{{|||{{{{{{{{{{{{{{{{|{z{{{|{{{{|{{{{{{{{{{{{|{{{{{{{{{{{|{|{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{z{{{|{zzz{{|{{z{{||{{{{{{{{{z{{{{{{{|z{{{{|{z{{|{{zz{{{{|{{{{{{|{{{{{||{{{{{{{{{{{{{{{{{{z{{{{{{{{{{{{{{{{{{|{|{{{{||{{{{|{{{{{|{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{|{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{}{{{{{}{{{{z{{{|{{{z{{|{{{{{||{{{{{{{{{{{{{{{{|{z{{{|{{z{{|{{{z{{{|{{{{|{{z{{{{{{z{|{|{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{z{{{||{{{{|}||{{{|}|{{{|{||{{|{|{}{|{|{{||{|{{{{{|{{{{{{{{|{{{{{|}||{{{|}{{{{{{|{{{{{|{}{{{|{{|{{|{{{{{|{{{{{{{{|z}{{{|}||{{{|}{{{{|}||{{|}|{}{|}|{{||}|{{{{}|{{{{{{{|||{{{{|}||{{{|}|{{{|{||{{|{}|}{|{}{{||{}{|{{{|{|{{{{{|}|{{{{|}|~{{{|}|{{{|{~~{{|{~|}{|{~|{||{~||{{{~||{{{|||}~}}|}|}~~|}||}|}|}|}~~|}|}~|}}|}~|}||}~|}|}}~|}|}||{{{{|{{{{{||{{{{|}{{{{{{|{{{{{|{{{{{|{{{{{|||{{{|||{{{{{{{|{{{{|||{{{||}|{|{{{|||{{{|{{{{{|{{{{{|||{{{|||{{{{{{{|{{{{{{|{{{{{}{{{{{{|{{{{{{{{{{{{{{{{{{||{{{{||{{{{{{{|{}|{{|||{|{{}{|{||}||{||}|{{{|}|{{{|}|||{{}|||{|{{{|{||{|{{|||{|{|}||{||||{{|||}|{|||}|||{|}||{|{|||{|{{{|}~{{~{{|}~|~{|}{~|~|~~~|~|~~}}~|~~}~|{~~}~{~{~}~|~{zz{z|zzzzz{{|{zzz{zzzz{z|{z{{{|zzzz{|{{{z{|{{zz{|{{zzz{{{{|{{{{{{||{{{|}z{{z{{|{{{{{|z{{{{|{{{{{|{{z{{|{{{z{{{{{|{{{{{{||{{{|}{{{{{{|{{{{{|{{{{{|{{{{{|{{z{{|{{{{{}|}{{{{{{{{{{{|||{{{|}|{{{{|{{{{{||{{{{|{{{{{|{{{{{|{{{{{|{{{|{{{|{{|||{{||}|{{|{|{|{|{||{{|{||{{|{||{|{{||{|{|{{{{|{{{{{{|||{{{|}|{{{{|{{{{{||{{{{|{{{{{|{{{{{|{{{{{{{|}|{{{{{|}||{{{|}|{{{{|{{{{{||}{{{|{{|{{|||{{{|||{{{{{{{||{{{{{|||{{{|}|{{||||{||{}|{||{}|{{|{}||{{{|||{{{|||{~}}||||~~~||||}|||||}~|||}~|{||}~||{|}~||||}~|||||{{|{|{}{{{||||{{{|}|{{{|}||z{{||{{|}|{{||}|{{{{}|{{{{{{{{{|{}{{{{||{{{{|}{{{{|}||{{{|{{{|}|{{{|}|{{{{}|{{{{{{{|}|{}{{{|}||{{{|}{{{{|}||{{{|{}{|}|{{||}|||{{}|||{{{{{|{||}{{{||||{{{|}|{{{|}||{{|}|{{|}}|{||}}||{{}|||{{{{{|{~|}{{{||~~{{{|}|{|{|}|~|{|}|{{|}~{{||}~|{{{}~|{{{{|||}~|}}|||}~~|}||}|}|}|}~~|}|}~}}|}~|}||}~|}|}}~|}|}||{{{{||{{{{{||{{{{|}{{{{|{|{{{|{|{{{{{{z{|{|{{{{{|{{{{{{{|}||{{{{|}||{{{|}{{{{|{|{{{|{|{}{{|{{||{|||{{{|||{{{{{{{||{{{{{||{{{{|}{{{{|{|{{{|{}{{{|}|z{|{}||{{{|||{{{{{{{~|{{{{{|~~{{{|}|{{{|{|~{{|{|{{{|{{{{|{~{{{{{~{{{{{{{{{||}{{{{|||{{{|}|{{{|}||{{|}}{{{|}}{{|}}||{{}|||{{{|||}~|}||||}~~||||}|||||}~~|||}~|}||}~|||}~||||}~||||||{{{|}|{{{{{|}||{{{|}{{{{{{|{{{{{|{}{{{|{{|{|||{{{|||{{{{{{{|{{{{{{||{{{{|}{{{{|{|{{{|{}{{{|{}|z{{}||{{{|||{{{{{{{~|{{{{{|~~{{{|}|{{{|{|~{{|{|{{{|{|{{{|{{{{{{~{{{{{{{|{|{}{{{||||{{{|}|{{{|}||{{|}||{{|}|{{||}|{{{}|{{{{{{{{{||{{{{{|||{{{|}{{{{|{|{{{|{}{{{|{}{{{|{}|{{{|||{{{|||}~|}||||}~~||||}|||||}~~|||}~|}||}~|{||}~|||}~|||||{{{{{{{|{{{{{{||{{{{|}{{{{|{|{{{|{}{{{|{}|z{{{}||{{{||{z{{{{{~|{{{{{|~~{{{|}|{{{|{|~{{|{|{{{|{|{{{|{|{{{{{{{{{{{{{{|{}{{{{||{{{{|}|{{{|}||{{|}|{{{|}|{{{|}|{{{{}|{{{{{{{{||{{{{{||{{{{|}{{{{|{|{{{|{|{{{|{|{{{|{|{{{{{|{{{{{{{{|{{{{{{|||{{{|}{{{{|{|{{{|{}{{{|{}{{{{{}|{{{{|||{{|||}~|}||||}~~||||}|||||}~~|||}~|}||}~|{||}~||||}~|||||{{{|}}}~}}}}|~}}}}~~}}}}|}}}}}}~~}}}}}}}~}}}}}}}~}}}}}}}~}}||||}||}}|}||||}||||}}|}|||}|||}|}|}|||{}|}}||||||}}||}}{}}}|{}}}}}~}}}}}|}}}}}}~~}}}}}}}~}}}}}}}~}}}}}}}~}}|||}}|||}|}|||}}{||{}}|||||}||{||}}|||||}}}||||||}}|||}|}|}}}}}}}}}}}}}}}|}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}||||||||}|}|||}}||||}}|||||}||||||}|||||}|}|||||||}|||}}}}~}}}}~}}}}~~}}}}|}}}}}}~~}}}}}}|~}}}}}}}~}}}}}}}~}}}}{~}|||{}|||~||||||}}||||~~|}|||}|~|}||||}~|}||||}~|}|||}}||||}||||}||||{}||||||}|||||}}||||||}}||||||}}|||}}}|}||}}|}|||}|||||}||||||}}}|||}|}}}|||||}}}|||||}}}||||||||||||||}|||||}}|||||}|||||}||||||||||||||||||||||||||||||||||||||||}||||||}|||||}||||||||||||||||||||{{}~||~{}~||~}~|~}~{}|~}~}~~~}~}~}}~~}~{|~}~~{{~}~}~{{}}}|}}}}}|}}}}}}}}}|}}}}}}}}}}}}}|{}}}}}}}|}}}}}}}|}}}|||||}|||||}|||}||||}}|||||}||||||||||||}||||||||||||||||||}|||||}||||||||}}|||||}||||||{|||||}||||||||||||||||||}|||||}|||||||||}|||||}||||||{{{|||}|||||||||||||}|}|}}|}|||||||||||||}~}~|||}}~~||}~~}~}|}}}|}~}~}}|}~||~}}|}||}~}}||}|}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}~}}}}~~}}}}}}}}}}}~~}}}}}}~}}}}}}}~}}}}}}}~}}||}~}}|}}~}}||~~}||||}}||||~}}||||||}|||}}|~}||||}|~}|||||}||}|}}||||}|||||}||}|||}}||}|||}|||||}}}|||||}}}||||}}}|}|}}}|||}}||||}||||||}}||||}}||||}}}}}||||}}}}|||||}||}||}||||}|||||}||||||}}|||||||||||||}}||||||}}|||||}||}||}||||}|||||}||||||}}|||||||||||||}}||||||}}|}}}}}~}}}}}~}}}}~~}}}}|}}}}}}~~}}}}}}|~}}}}}}~}}}}}}}~}}}|}|}||}}}}||||}||||}}}|}||||}}|}|}|}}}||||}}}||||}}}}}}}~}}}}}~}}}}~~}}}}|}}}}}}~}}}}}}||}}}}}}}|}}}}}}|~}}}|}|}|||}}}||||}|||||}}|}|||}|}|}|||}|}||||}}}||||}}|}}}}}}}}|}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}|}||}}}}}}}}}|}|}|||}|}||||}|||||}}|||||}|}|||||}|}||||||||||||}|}}|}}}}~}}}}}~}}}}~~}}}}|}}}}}}~~}}}}}}|~}}}}}|}~}}}}}}~}}||}|}|||}}}||||}|||||}}|}|||}|||}|||}|||||||}|||||}}||}|||}||}||}||||}||||}}}||||||}}|||}||}}||||||}}|||||}}||}~}}||}~}}||~~}||||}}||||~}||||||{|||||}}|||||||}||||||||||||}||{||}|||||}}|}{||}|||}|||}||{|||}}||||||}|||||}|}|||}|}|||}}||||}}|||||}|||||}}|||||}|}|||||||}||{|{{|{{||||{{{|{{||||{{|{|{{|{|||~|{|{|{}~|{{{{||~{{|{{{|{|{{{|{|{{{|{{|}||{}|{|{||}|||~|||{|{}~|{{{{|}~{{{{|{|{{{|{|{{{|{{{{||{{z{z{zz{z{||{{{{|{}}{{{{{{}}{{{{|{|{{{|{|{{{|{{{{||{{{{{|{{{{{|||{{{|{|||{{{{{{||{|||}||||}||||||||||||||||||||||||||||||||||||||||||||{}}||||}||{{{|{{{|||{{{|{{|{|{||{||{||{||||{{{{|||||{|}||{|}||{}{|{}{}||{}{{{{}{}{|}|||{{|{}}||{{}|}}|||{{}|{|{{{||{}{|{}|}||{}|}|{}|}||}~|}|{|{}~|{{{}|}~{{{{|{{|{{{||{{{|{{{|||{{{{{|{{{{{|||{{{|{}}|{{{{{}}|{|||}|||||}||||||||||||||||||||||{|||||||}}||||||}}|||{}}||{||}||{{|{{{|||{{{|{{|{|{||{||{||{}}||{{{{}}||{{|{{|{{||{|{{|{{{|||{{{{{{{{{{{{||{{{|{}}|{{{{{}}{{|||}|||||}||||||||||{|||||||||||{||||||||||||||||||||{}}||{||}||{{{|{{|||{{{|{{|{|{|||||{||{||||{{{{||||{{|{{|{{||{|{{{|{{{||{{{{{{{{{{{{||{{{|{|||{{{{{||{{{{|{{{{{{|{{{{{{{{{|{{{{{{{{z{{{{|{{{{{{||{{{{{{||{{|||||{|{{{|{{{{|}}}|||||}}|||}|}||}}||}}||||}}|}}||||||}}||||||}}|||||}|||||}|||{}||{|}}||||{||||||}~|||||||~||{|{||~|||||}|||||}||||}|||{}}|{|{{{{{|{|}|||{|||||||{||{|||||||}|||||}||||}|||{}}|{|{{{{|{{|}|||{|||||||{||{|||||||}|||||}|||{}||{{}}|{|{{{{{{||}|||{|||||||{|{{||||||}}|||||}|||}{||}|}}||}|}||}|}|{||}|}||}}|}||}|}}||}||}}||||}}|||||}|||}}||}||{|||}||||||}||}~||||||}~||||}}|||||}||||{||||}|||}||{|||}|||||||||}|||||||||||||}}|||||}||||{||||||||||||||||||{~||||||~|||||||~||||}}|||||}||||{|||||||||||{||||||{|{{|||||||||||||||||}}|||||}||||{|||||||||||{||||||{|{{{|||||||||||||||||}|||||}||||||||||||||||||||||||||||||}}|||||||}||||||}}|||||}|||||||||}|||}||||||}||{|||||||~||||||}~|||{}}||{||}||{{{|{{{}}|{{{|{{|{|{|||||{||{|||{{{{|}|||{|}||{||}||{|{|{|{}||{}{|{{|{}{|||{|{||{}||{{|{||||{{|{{|{{||{|{{{|{{||||{{|||{{||||{~|||||{|~|{{{||~{{{{|{{|{{||{|{{{|{{{|||{{{|{{{{|{{{|{|{||{||{{{{{||{{|{}}||{||}||{{{|{{||||{{|||{||||||||||||{}}||{{||}||||{{{}|{|{{||{|{{{|{{|}||{}|||{||}||{||||||{|~||{{{}~{{|||}|||||}||||{|||||||||||{|||||||||||||||||||||||||{{}{{|{{{|{|{{{|{{{}}|{{{{{{{{{{|{||{{{|{|||{{{{{|{{|{|}||{||}||{|{|{|{}||{}{{{{|{}{|||{|{{|{}|{|{{|{|||{{|{{|{{{|{|{{{|{{||||{{|{|{{|{||{~|{|{|{|~|{{{{||~{z{|{zzzzz{|{zzz{}{zzzz{}z{zz{{{z{|{zz{|{{zzz|{{zzzzz{{yzzzz{zzzzzz}zzzzzz{zzzzz{zzzz{zzz|{zzzz|{zzzz{zz{{{z{zyz{{z{y}z{z{{z}{z{{zzz{{|{z{{}{z{z{}{z{z{zzz{zzzzz{{{{zzz~z{zzz{~zz{zz|zzz~{{zz~|{{{z~|z{zzzy{{{|}zz{|{|}{z{z~|{z{z}}{|{z}||{|~||{|~}{{{z~||{z{{z{|{{z{z{|{{z{{}z{z{{{~{z{{z{z{{|{z{{}}{{z{}{z{z{zz{|{zzzz{|{{zz{|z{zzzz}zz{zzzzzzz{zzz|}zzzz|{z{zzzz{|{zzzz{|{zzz{|{zzzz{}z{zz{{{z{|{zz{|}{zzz|{{zzzzzz{{zzzz{{zzzzz{zzzzzz}zzzz{zzzz{{zzz{}zzzz{{zzzz{zz}{{{z{z}{{z{z~z{z{{z~{z{{z|z{{~}{{{~}z{{{~}{{z{z{z{|{{zz{z{|}z{{}{}z{z{~{{}z{|{{{|}z{{}}{{zz}}|}z{zzzz{zzzzz{{zzzz{zzzzzz|zzyzzzzzz{zzzz{{{zzz{z{zzzzz{|{zzzzz{|{{z{|z{zzzz}zz{zzzzzzz{zzz|{zzzz|{{{zzzz{|{zzzzz{|{zz{|zzzzz{}zzzz{{zz{|zzz{|{{zzz|{{zzz{z|{{{{z{z|{{|z{|z|z{{{}{z|{z|z{{~}{{{~}{{{{~|{|z{zzzzzzzzz{}{{{|{{{z{{{|{{z{{{z{z{{{}z{z{{z{{|{{{{|{{{{{|{z{z{{{{|{{{z{{{|{{z{{{z{z{{{}{{z{{z{{|{{{{|{{{{{|{z{z{{{{|{{{{{{{|{{{{{~{{{{{{}{{{{|{{{~{{{{~|{{{{~|{{{{{{{|{|{z{{{|{{{|{|{|z|{{~|z|{{z|{||{|{|}{{{{||{{z{~{{|{~{|~{{|{~|~|}|~|~{|}~|~|||~||~{~|}~|~{{}~|~|~{zz|{{zz{z{|{{z{{|z{z{zz}{z{z{zzzzzz{{||{{zz||z{z{{zz|{{zz{z{|{{z{{~{{z{z{}{{{z{|{{~{{{{~|{{{z~|{{z{{z{|{{zz{z{|{{z{{|z{z{zz~{z{z{zz{{{z{{|}{{zz||z{z{{z{}{{{{{z{}{{{{|~{{{{{{~{{{{{|{{{}{{{~}{{{{~}{{{{{|z{}|}{{|z{||}{|{}|}{|{|~}|}{|{|}|||}|}}{|z{}}|}{|zz{{{zzzzz{{{zzzz~zzzzz{}zzzz{|{z{~{{{~|zz{z~|{zzzzz{|{zzzzz{|{{zz{|z{zzz{~{z{z{{z{{|{zz{}z{zz|{{{zzzz{|{zzzzz{|{zz{{}zzz{{{}zzzz{{zz{|{zz{|{zzz}{{zzzzz{|{zzzzz{|{zzz{~{zzz{{~z{zz{|{z{||{z{~{{{z~|{zzz{|{{|||{{|{{|||{|{{}|{|{{|}{|{||}|{|||{{|}}|{{}||{|{{z{|{{{z{z{|{{z{{|z{z{{{~{z{{{{z{{||z{{}|{{{}|{{z{zz{|{zzzzz{|z{zz{|z{zzzz~zz{zzzzzzz{zzz|}z{z{{z{zzzzz{{zzzzz{{{{zzz}z{zz{{}zz{zzzzzz{{zzz||zzzz{zzzzzz{|{zzzzz{|z{zz{|z{zzz{}zz{zzzzzz{{zzz}{{zzz}zzzz{zz|{{{z{z{|{{z{{~z{z{{{~{z{{{|z{{||{{{~|z{{{~|{z{{{{{z{||{zz{z{||{z{{}|{z{z|}{|{z|||{|||z{|}}{{zz}||{{{z{|{{{z{z{|{{z{{|z{z{{{}{z{{{{z{{|{z{{}|{{z{}{{{z{z}{{{{{{{}{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{|{{{{{{{{{{{{{zzzz{z{{zzzz{{zzzz{z|{zzzz{zzzzz{{{zzz|{{{zz{{{z{{{{|z{{{{{{{{{{{{z{{{{{|}{{{{|{{{{|{{{{{|}{{{{|}{{{{{z{{z{z{z{}{{{z{{{z{z{{{{zz{{{{zz{{|{{z{{}{{{{{}{{z{{{{|z{z{{{z{{|z{{z{|z{{||{{|{{|z{{||{zz{{|{{{{{|{|z{{{{z{{{zz{z|{{z|z{{{z|z{{{|zz|{{|zz{||{{z{{|{{zz{|{|z{{{{{{zz{{z{z{zz{{zzzz{{|{{{zz{zz{z{{z{zz{|z{{z{|{{z{z{{}{{{z{{}{{{z{{z{{{{{|{{{{{{{{{{{{{{{{{|{{{{{|{{z{{{{{zzzz{{{zzzz{{zzzz{z|{zzzz{zzzzz{z{zzz|{{{zz|{{z{{{{{|{{{{{{{{{{{{z{{{{{|}{{{{|{{{{|{{{{{|}{{{{|}{{{{{{{|{z{z{{|{{|z{|{{|z{{{|{{|{{|z{{||{{{{{}}{{{{}}|z{{{{{}{z{z{{{}{{z{{{{{{{{{|z{{{{{zz{{{{{z{{|}{{{{|}|z{{z{{{zzz{z{{zzzzz{zz{{z{{z{zz{zzzzz|z{zzz{{zzzz{|{z{{{{{{zzz{{{{z{zz{{zzz{{{{{{zz{zz{z{|z{zz{{z{{z{{|{z{{{{}{{{{{{{}{{{{{{{{{{{|{{{{{{{{{{{|{{{{{|{z{{{||{{{{||}|{{{{||}||}{{z{}{{{{}}{}{|}{}{}}||{{}}|{|{|}|}{{zzzz{{zz{{{{{||{{{}|{{{{{{}{{{{{{{{{{{{}}zzzz{{{{|{{{{{|{{{{{|{{{{{{{{}|{{{{{{}{{{{{{{{{{{{}}{zzz{{{{|{{{{{|{{{{{|{{{{{{{{}|{{{{{{}{{{{{{{{{{{{}}{{{{{{{{|{{{{{|}{{{{|}{{{{{{{}|{{{{{{}{{{{{{{{{{{{}}{{{{{{{{||{{{{||{{{{||{{{{{{|}|}||{{}}||{|}}}|}|}|}}}|}|{{}||{||}||}|{{||}|{|{{{{|{{{{{{{{{|{{{{{z{{{{|{{{{{|zzzz{z{{{|{{{{{|{{{{{{{{|{{{{{{{{{|{{{{{z{{{{|{{{{{|zzz{{{{{{|}{{{{|}{{{{{{{|{{{{{{{{{|{{{{{z{{{{|{{{{{|{{{{|z{{{||{{{{||{{{{{{|}{{{{{{|}{|{{{|{{{{{{|{{{{{|z{{{{{{{{|{|{{{|{|{{{{{{}}{{{{{{}{|{{{{{{{{{{}}{{{{|{{{{|{{{{||{{{{||{{{{{{{{|}{{{{{{{||{{{{{{{{{{}}{{{{|{{{{|{{{{|}{{{{|}{{{{{{{{{{{{{{{{{{{{{{{{{{{{|{{{{{{{{{{{{{{{z}{{{{{}{{{{z{z{{{zzz{z{{{{zz{z{{{{{|{z{{z{{{{{{{zz{z|z{{z{|{{zz{{|}{{{{{{|}{{{{{|{{{{{{|{{{{{{z{{{{{{{{{{|z{{{{|{{{{{{}{{{z{{{}{{z{{{{{z{{{}}z{{{{{{{{{{{{{{{{{{{{}{{{{{{{|{{{z{{{|{|{z{{{{{{{{|{{{{{|z{{{|{z{{{||{{{||{{{{{{{{{|{{zz{{{|{|{z{{{{{{{{{|{{{{|{{{{||z{{{||{{z||{{z{zzz{zzzzzzz{zz{zz{zz{z{z|{zz{z{{z{z{{zzzz{|{{zz|z{zz{{{}{z{z{{{}{zzz{{{{z{{{|{{{z{{zz{{{{{{z{{{|z{{z|{z{z{{{{{{zz{{|{{zzz{{zz{{{}}z{{{{{{{{{{{{{{{{{z{{{{zzz{{z}{{{z{{{}{|{z{{{z{z{{|{{{{{|zz{{|{{z{{|{{{{{|}{z{{{{|{{{{{{{|{{z{{{z{z{{{|{z{{{{z{{{{{{{{{{|{z{{{|{z{{z{z{z}{{{{z{z}{{z{z{{{z{{{{|z{{{{{{{{{{zz{{{|{z{{{|{z{{{||{|{{{{||{{{{{|{{{{{|}{{{{|{|{{{|{||{{|{||{||{||{{{{{z{zzz{{{|z{{z{{|{z{z{|}z{z{z{|zz{z{||{{z{||{|z{||{{{{{{|z{{{{{}{{{{{{|{{{{{|}{{{{|{|{{{|{}|{{{{}|{|{{||{{{{{{{{zz{{{|z{{z{{|~z{{{|}z{{{z{~~z{z{~|{{z{~|{|z{~||{{{{}|{{{{{}}{{{{{}||{{{{|}{{{{|{|z{{|{}|}{{{}|{|{{|||{{||}~|||||}~|}|||}~~|||||}|||||}~~|||}~|}||}~||||}~||||{|{{}|{{{{{{|{{{z{}||{{z{|}z{{{z{|{{{{{|z}{{{|z{|{{|{{{{{{}||{|{{{||{{{{}||{{{{|}{{{{|{|{{{|{|{}{|{|{{||{|{{{{{{}{{{zz{{{z{{z{}{|z{z{|}z{z{z{|zz{z{|z}{z{|{{|z{|{{{{{{}{|{{{{{}{{{{{}||{{{{|}{{{{|{|{{{|{}{}{{{}{{|{{|{{{{{{}~{{{z{{}{{{z{}|~z{z{|}z{z{{{~~z{{{~{}{{{~{{|{{~||{{}|}~|}||}|}~}}|}}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||}~|}|}|{z{z{zzz{z{{zzzzz{zzzz{z{zz{zz{{{zzz{{z{zz{|{zzz{|{{z{{{{|{{{{{{{|{{{{{|{{{z{|}z{{{z{|{{{{{zz{{{{|z{{{{|{{z{{{{||{|{{{{||{{{{|{{{{{|}{{{{|{|{{{|{|{{{|{|{z{|{|{{{{|{{||{{{|{{}{{|{|||{|{||}||{||||{{|||}|{{{|}|||{{|||{|~{}~{{{{~{}~{{~{~}~{~{~|}{~{~|~~~{~|~~{}{{~~}~|{{~}~{~zzzz{zzzz{z{|}z|}{}{}{{{{{{{{{{{{{{{{{{|{{{{{{}{z{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|{{{{{{}{{{{{{{{{{{|{{{{{|{{{{{|{{{{{{{|{{{{{{{|{{{{{{|{{{{{|}{{{{{|{{{{{}|{{{{}|{|{{}|{{{{{}|{{{{{{}|{{{{{}||{{{{|}{{{{{|{{{{{|{}{{{|{{|{{|{|{{{{{||||{{{|}|{{{|||{{|{||}||{||||{||{}|{||{}|{{|{||{{{{{{~}~|{{{~~}}{{~~~~{~{~|}{~{~|}~{~|}~{{~|}~{{{|}~{|{{{{{|{{|{{{{|{}{{{{|{{{{{|}{{{{|}||z{{{z{{|}{{{{|}{{{{{{{{|{{|{{{{|{}{{{{|{{{{{|}{{{{|}||{{{||{{|}||{||}||{{{{{}|{{|{{{}|{}{{{}||{{{{|}{{{{|}||{{{|z}{|}|{{||}|{|{{{{{|{{|{{{{}{}{{{{|{{{{{|}{{{{|}||{{|}{{{|}}|{{|}||{{{{{{~|{|{{{{~|}{{{{~~{{{{|}{{{{|}|~{{|}{{{|}~{{{|}~{{{{}|}~|}||}|}~|}}|}}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||}~|}|}|{{{||{|{{{{||{{{{{|{{{{{|}{{{{|{|{{{|{||{{{||{||{||{{{{{}||{|{{{}||{{{{}||{{{{|}z{{{|{|{{{|{|z}{{|z{||{|{|{{{{{||{|{{{{}|{{{{{|{{{{{|}{{{{|{|{{{|{}{{{|}|z{|{||{{{{{{~|{|{{{{~|{{{{{~~{{{{|}{{{{|{|~{{|{|z{{|{{{{|{~{{{{{{{||{|{{{{}|}{{{{|{{{{{|}{{{{|}||{{|}}{{{|}}{{|}|{|{{||}~||||||}~|}|||}~~|||||}|||||}~~|||}~|}||}~|||}~|||||{{{}|{{{{{{}|{{{{{}||{{{{|}z{{{{{|{{{{{|z}{{{|{{|{|{|{{{{{|{{{{{{{}{{{{{{|{{{{{|}z{{{|{|{{{|{}{{{{{}|z{{{|{{{{{{~{{{{{{{~{{{{{{~~{{{{|}{{{{{{|~{{{{|z{{{{|{{{{{{{{{{{{|{{|{{{{|{}{{{{|{{{{{|}{{{{|}||{{|}|{{{|}|{{{|}|{{{{{{||{|{{{{}|{{{{{|{{{{{|}{{{{|{|{{{|{}{{{|{}{{{|{|{{{||}~||||||}~|}|||}~~|||||}|||||}~~|||}~|}||}~|{||}~|||{{{{{||||}}||||}}||}|}|||~~}|||||}|||||~~}||||}}~}||||}}~}||{{|{||{|{{||{{{||{{|||||}|{}|{{|{{|{||{|||}|{{{|||}{{{{z{{}|z{z{}|{{z}|{{||}|{{{|}|{{{zz|{{{z{}||{z{z||||{z{{z{{}|{{{{}|{{z}|{{||}|{{{|}|{{{{{|{{{{{}|}{{{z|||}{{{{|{|}|{{|}||{{{||{||}||{}{{}|{|{|{|{|{|{}}}{|{||}}|{|{|||||}||||}||}{}|||||}|||||}|||||||}||||||}}||||||}}||{|||||}}|||}}||}|}|||~~}|||||}|||||~~}||||}}~}||||}}~}||{{||{}|{|{}|{{{}|{{||}||}||}|{{|{{|{||{|}|}|{{{|||}{{{zz{{{}|{{{}|{{z}|{{||}|{{{|}|{{{z{|{{{z{}||{{{z||||{{{z|{|}}|{{|}|{{{||{||}||{}{{}|{|{|{|{|{|{}}}{|{||}}}{|{|||||}|||||}|}{}|||||}|||||}|||||||}||||||}}||||||}}|||||||||||||||||||{|||||{|||}|{|||||{|||||||||||||||||||}|}||}||}||}|}}}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}||}|~}|}z|{|}}|{{|}}|{{{|{||}||{}{{||{|{|{|{|{|{|}}{|{||}}|{|z|||||}|||||}||}{}||||}{||||}{|||||{}|||||{}}||||||}}|||||||||||||||||||||||||{|||}|{|||||{||||||||||||||||||{z{{{|{{{{{|{{{z|{{{||{{{{||{{{{z{{{z{z{|{{{{{z{||{{{{{{||{}|{||{}|~{{}|~{~}|~}~{}|~{~{~~~|~{|}|~~{{{|~}~{{{{||||}|{|||}|}{{}|}||}|}}}|}|}|}|||}|}|{}}}}|{||}}}{|{|||||}|||||}||}{}|||||}||||}{||||||}||||||}}||||||}}|||||||||||||||||||||||||||||}|{|||||{||||||}|||||{|}|||{z{{{|{{{{{|{{{z|{{{{||{{{|}{{{{z{|{{{z{||{{{{z{||{{{{zz{{{|{{{{{|{{{z|{{{{{|{{{|}{{{{{{|{{{{{||}{{{z{{|}{{z}|}|}|||{{||{{{||{{{{~|~}||||~}|~||}}~|~}~~~|~}~|}|~}~}~}}~}~||~}}~|||}~}|~}}}|}}}}}|}}}}}|}}}}}}}}}}}|}}}}}}}|}}}}}}}}}}}}}}}}}}}}}|}}}}}|}}}}}{}}}}}}}}}}}{}}}}}}}||}}}}}}}}}}}}}}}}}}}}|}}}}}|}}}}}{}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}|}}}}}|}}}}}{}}}}}}}}}}}{}}}}}}|{|{|}}}}}}}}}}}}}}}}}}|}}}}}|}}}}}{}}}}}}}}}}}{}}}}}}|{|{|{}}}}}}}}}}}}}}}}}}|}}}}}|}}}}}|}}}}~~}}}}}|}}}}}}~~}}}}}}~}}}}}}}~}}}|||||}|||||}||}|}|||~~}|||||}|||||~|}||||||}||||}|~}|||||{|}|||{|}||}{}|||||}||}||}|||||||}||||||}|||||}}}|||||{|}|||{|}||}{}|||||}|||||}|||||||}||||}{}{|||||}}|||||{|}|||{|}||}{}|||||}|||||}|||||||}||||||}{{||||}}|||||{|}|||{|}||}{}|||||}|||||}|||||||}|||||{{{{{||||}|||}||||}}||||}}||}|}|||~~}|||||}|||||~~}||||}|~}||||}~}|||||||}|||||}||}|}|||||}||}||}|||||||}||||}|}}|||||}}|||||||}|||||}||||}|||~~}|||||}|||||~||||||||||||||}|||||||||}|||||}||||}|||||}||}||}||||||||||||||}|||||{}}|||||||}|||||}||||}|||||}|||||}||||||||||||}||||||||{|{||||||}|||||}||||}|||||}|||||}||||||||||||||}|||||||}{{zzz{{{{zzz{{{{{{zz{{{{{{{{{{{{{z{{{z{{z{z{|||{zz{{{||zzzzz{{{{{|{{{z|{|{{{{{|{{{{|{{{||{{{{|{|{{|{{|{~|{{{{{{~|{{zyz{z{{yzy{z{{zzzy{{zzz{{zzzzz{zzzzy{zzzzz{{zzzz{z{|zyz{z{{z|{z{{{z|{{{z{{{{{{{{{{{{z{{{{zz{{{z{{{||z{z{{|||z{zzzz{{{zzz{{{{{{z{{{{{{{{z{z{z{{zz{z{zz{z{{{|{zz{{{||zzzzz{{{{{zz{{{|{{{{{|z{{{|{{z}z|{{{{{{{z{z||||{z{{{{||{z{z|{}z|z|{}z|{{|z}|{{{{|{{{|||{{{|z{|{|z||{||z|z{{{||z{{z{{{z|{{{{z|{{{z{|{{{{|{{{{{|{{{{zz{{{z{|{~|z{z{{{~|z{|{{{{{{{|{{{|{|{{{{{|{{{{|{{{||{{{{|{|{{|{{|{~|{{{{{{~{{{zzzz{z{{zzzz{{{{z{{{{{{{{z{z{z{{{zzz{{zzz{{{|zzz{{{||zz{z{{{z|{z{{{|{{{z{{{{{{{{{{{{z{{{{zz{z{z{{{||z{z{{|||z{zzz{{{|{{zz{{|{{{{{|{{{{|z{z}z|{{{{{{{z{z||||{z{{{{||{z{z|{}z|{z|{}z|{|z}|{{{{|{{{|||{{{|z{|{|z||{||z|z{{{||z{{{|{}||{||{}||{|{}|{{{{|{{{{|||{{|{{{|{{{||{||{{{{||||{{{|{}||{||{}||{{{}|{{{z|{{{{|{|{{{{{{|{{{|||||{{{{}|||{{{{{{{{|{{{{|{|{{{{|{{{{|{{{||{{{{|{|{{|{{||~|{{{{{}~|{{{z{{{{|{{{{{{||{{{{|{{{{|{{{}z|{{{{{{{{{{||||{{{{{|||{{{z|{}{|{z|{}{|{{|z}|{{{|{{{|||{{{|{{|{|{||{||{|z{{{||z{{{|{}||{||{}||{{|{}|{{{|{{{{|||{{|{{{|{{{||{||{{{{||||{{z{{{{{{{{{|{{{{{z|{{{{{{{z{{|{{z{z{{z{z{{{||{{z{{{||{{{{|{}|||||{}|||{|{}||{{{|{{{}||{{{{{{|{{{|}~||{{|{|~||{{z|{}z|{z|{}z|{||z}|{|{{||{|||{{{|z||{|z|||~|z|z{||~|z{{{|{}||{||{}||{{|{}|{{{{|{{{|||{{|{{{|{{{||~||{{{{|~||{{z{{{{|{{{{|{|{{{z||{{{{{{{{{|{{z{z{{{{z{||~|{{z{{{~|{{zzzz{{|{zzz{{|{{{z{|{{{{{{{{{{{{{z{{{{z{z||~|{zz{{|~|zz||||{{|{{{|z{zz}|}|}}|||}|}}}||||}}|}|}}|}|}}}|}|}|||}|}|}}||}|||}}||}{{||}||||||}|||||{}|||{}|||{|}}||{|{|||{||}~|||{|||~||{{{||}||||||}|||||{}||||}||||{}}|{|{|{|||||}||||{||||||{{{||}||||||}|||||{}|||{}|||{|}}|{{|{{|{|||}||||{||||||{{{||}||||||}|||||{}|||{}|||{|}}|{{|{{|{|{|}||||{||||||{{{||}{|{{||}{|{{||}|{{|{|{{||}}{{|||{||||||||||{{{|||{{}{||}}}|{||}}}||{|}}||{|||||||}}|{|||{|||||||||||{||~||{{{|{}|||||{}|||{|{}||{|{||{|||||{||{{|||{||||||{|{||||{{{|{}{|{{|{}{|{{|{}|{{{{|{{{|||{{{|{{|{|{||{~||{{{|~|{{{{|{}{|{{|{}{|{{|{}|{{{{|{{{||{{{{|{{|{|{|||{|{{{{|||{{{{|{}{|{{|{}{|{{|{}|{{{{|{{{||{{{{|{{|{|{||{{|{z{{|||{{{z|{}{|{z|{}{|{||{}|{|{{|{|{|||{|{|{||{|{||{||{|z|{||z{{||{|{}{||{|{}{||||{}|||{||||{|||||{|{||{|{||{||{|{|{~|{|{{|{}||{||{}||{{|{}|{{{{|{{{{}}|{{|{{{|{{{|||||{{{{|||{{{|{}||{||{}||{{|{}|{{{{|{{{{|||{{{{{{|{{{|||||{{{{|{|{{z{{{z|{z{{|z|{{{z||{{{{|{{{{{|{{{{{{{{{{{|{~|z{z{{{~|{zz{{{{{{z{{|{{{{{z|{{{{{{{{{{{|{{{{{{{{{{{{|||{{z{{{||zz{{{{{{{{{{{|z{{|{~|{|{{{{{|{{{{z{{{{|}~{{z{|{|~{{zzzzzyzzzzyyzzzyz{{zyz{|{zyzz|{zzz{zzy}|zzzyz{|{zzzz{yyyzz{yyyyz{{yz{{z{z{{zzzzyzzzyzzzzyyz}zyyy{{{z{yyzz{{{{{{{|y{{z|{{{|{z{{{|z{z{{z{zz{z{{}{{{z{{{{{{zzzz{z{{{{z{{{zzy{{{{{z{z{zyzzz{{zzz{z{|}{{z{{{{|{zzzzzzz{{zzz{{zz{{{|{{{{|{zy{z|{zz{{zz{}}{{z{{{|}{z{z{{|{{{{|{{|z|{|{||{|{{|{y|{{z{z{{z{{~|{{z{|{||{{zzz{z{{{{z{{{{z{{{~{{{{|{{{z{|{{{z{{z|}~{{z{{{|~{zzyzzzzzz{{{zz{{zz{{z{{{zz{{zyzzzzzzzzzy{}{{{z{{{{{{zzz{{|{{{{{|{{z|{{{|{z{{{|z{z{{z{zz{z{{}{{{z{{{{{{zzz{z{z{{{z{z{z{{{{|{{{{|{zy{z|{zz{{z{{}}{{z{{{|}{zz{z|zz{{{|z{{{z{{{|{{{{{{{{z{{{{{{z{z{||{{{{{{{}{zzz{{|{{{{{|{{{|{{{|z{{{||zz{z|{{z{{z{{~|{{z{{{}{{z{zzz{z{{{{{z{{{zz{{|{{{{|{zz{z|{{z{{{z{}}{{z{{{|}{zz{{|{z{{{|{{{{{{{{|{{{{{{{{z{z{{{{z{{{||{{{{{{{}{z{z{{|{{{{{|{{{z|{{||{{z{|z{{z{z{{z{z{{|{{{z{{{{{{{{z{{{{{{{{{{{}z{{}{|{}{{}{{}{{z{z{{z{|~~{{z{}{}~{{zz{{|{{{{{|{{}z|{}{~{}{|}z{}{|{{z{{z{|~~{{z{}{}~{zz{z|z{{{{|z{{{{z{|{~{{{{{{{z{z{{{{z{z|~~{{{{{{{~{z{z{{|{{{{{|{{{z|{{z~|{{{|z{{z{z{{z{z{|~~{{z{{{{~{{zzz{z{{{{{z{{{zz{{{~{{{{{z{z{{{{z{z{z|~~{{z{{{{~{z{{{{{z{{zz{|{}||{{|}||{{}||{}|||{}|}|||||}|||}|}{~}|}{{}|}}|||{|||{|{|||{||||||{||||{|||||{|{{||{||~}{|{|||}}{|{{{{|||{{{||||{|||}~|||}{|}{|}{||}}|{|}~|{{||}|~{{{{{{|{|{{{|{||{|||{||||{{|{{|{{{{{{{{|}}{{{||{|}{{{{{{|{|{{{|{||{|||{||||{{|{{|{{{{{{{{|}}{{{||{|}{{{{~|~{{{~|~{{|{~{|{||{|{~~{{|{~{{{{~{~}}{~{{|{~}{{}{{{|||||{||||{||||{~|||{|}|||{|{|||{{{|}|{{||||~|{{{{||{{{{||{{{{|{{{||{{{||{{{{|{{{{{{{{~}{{{{{|}{{{{{|{{{{{|{{{{{{{{{~|{{{|{{{{{|{{{{{{{|}~{{{{{|~{{{{{|{{{{{|{{{{{{{{{||{{{|{{z{{|{{{{{{{{}{{{{{{|}{{{z{z{z{{{z{z{|z{{|{||{|{||{{|{|{{{{{z{{}}{{z|{|}{{z{z|{{{{z|{{{{{{{|||{{|||{|{|||{{||{{z|}|{z{z||}{z{|{{{|{{{{{|{{{{{{{|{~|{|{{|{{|{{{{{{{{{||}{{{{{{~{{{z{{|{{{{{|{{{z|{{{||{{{{|{{{{{{{{{{z{{}|{{z{{{{{{zz{{|{{{{{|{{{z|{{z|{{{z{|{{{z{{{{z{z{{~|{{z{{{{{zzzz{z{{{{{z{{{zz{{{~{{{{{{{{z{{{{{zz{z|}~{{z{{{{~{zzz{{z|z{{z|z{z||}{y|||{|yy|{{{yz|{zz}~||z||{}{{zzzz{zy{zzzz{zz{}|zzz}|zz{y|{z{yy{{zzz}|z{y}{|{zzzzzzzzzzzz~|{z~z{|z~z{z{zyz{|zzz{{zz~}}zz~z{||zyyyyyyyyyyyzzyyzzzzyzzzzzyyzzyzyyzyyyz{zyyzzzzzyzzzz{zzzzyz|~zz|{z~z|{z{zzz{zz{{{zzzz}}~zz||{z~zzzzz{zzz{{y{z{z{|}zzz|z{|z{zz{{zzy{zz|}zzz{|{}zzz{zz{{z{{z|{|{{z}||y{}|{|zy|{z{|zz{z||~}z{{}{||zz{zz{{z{{{z{{zz{}}zz{}|{|{y|{{{yz{{zz|~|z{{}{}{zzzzyzyyzzyz~|yz~z{|z~z{z{yyz{|zzz{{zy~|}zz~z{||zzzzzzzzzzzz{{{y{{{{yz{zzzzyzzzzzzzzyz|}|zz{{{{{zzzzzz{zzzzz|~zz|{z~z|{z{zzz{zz{{{zzzz}|~zz||{z~zz{zz{{zz{{{{{{z{}}{zz}|{|z{|{{{zzz{zz|~|z{{}{}{zzzzzzzzzzzzz~{z{{{~z{{{z{~y{z|zzzy{zz~}~zz~{{|~z{zzzz{z|zz{z~{z~{{{z~{|{{z~{{z{zz|zzz~}~|z~|{{~{zzzz{{yzz{{z~|z~|}|z~|{{|yz|{|{zz{{zy~~}zz~|{}|zz{zzz{zz{z{z|~{|}|~z|}|{|zz|{z{{{z{zz}~~z{|}{|~zzzzz{z|zz{z|~~{{{{~z{{{{{~z{z|z|zz{z|~}~zz~{{|~zzzzz{zzzzzz{{{{z{{{~{z{{zzzz{zzzzzyzz|||zz{{{{{z{yzz{zz|yzz{~~{z~{{~~{|{zzzz{zz{z|zzz~~~|y~|{{~{z{z{z{zz{z{z~~zz~}}z~}|{}{~}{{{{z{{zz~~~z{~}{}~zzzz{{{zz{{{z~~{z~}}~z}{{}~{}{|{{z{{zz~~~zz~}{}~zzyzz{z|zz{z|~~{{~{{~~{{{zzzz{zz|z{zz|~~~zy~{{|~zzzzz{{zzz{{z~~{z~|}~z{|{|z{|{{{{{{{zz~~~zz~|{}~z|{{{{|zzz|{|{|{||{|{|~~||~}}~|~}|}|~~||{}}|{||~}~|{~}}}~|{{{}|}|||{}|~~{{~}}~{~}|{}~~}|}}|||{|~~~||~}|}~{{{{}{|||}{||~~{{~}}~{~}||}~~}{}|||}{|~~~||~}|}~{{{|{|{||{|{|~~||~}}~|~}}||~~|}{{|}}||~}~|{~}}}~{{{{{{{||{{{|~~{{~}}~{~}|||~~||{{|||{|~}~|{~}|}~{{{z{{{z|{z{{|{{z|}|{~|}|{|{{|{||{{|{z}~||{|}{|{{z~z~{{zz~z|{~~{z~}~~~~}|{~~~|{~~z{{~{z}~{~~}{~~z|{{{~{~{{{{~{~~{{~~}~~~~{{|~~~{~~{{{~{{~}{~~~{}~{zzz{{{|z{{{|{|{{{|}|~{|{{|z{|{|{|{{|z||~}z{|{}|zzzzz{{|zz{{||~{{|{{~~|{{{{z{{{|{|{{{z|}|~z||{|~zz{zzz{zz{zzz~~zz~}|~z~}|{|~~|{|{z{{{zz|}~z{}{|~z{zzy{zz|zzy{~|{z~{{|~~{|{{|{{||z{||{zz}|}|z~|||{{}zzzz{{|zz{{||~{{|{{~~|{{|{{|{{z{||{zz|}|}zz|||~zzzzz{{zzz{{z~~{z~|}~z~|z{|~~|z{{z{z{zz~}|zz~|{}zzzzz{{zzz{{z{{{z{|}{z{|z{|z{|z{{z{z{zz|~|zz{|{}{zyzzyyyyzzzzzyzz|zzyyz{zzzyy{zzzyyzyyz}{zzy|zzzyzzzzzz{zzz{{{{zz|{{{y|}z{{yz{zzz{yyzz{|}{zz|{{{{yyyyyyzyyyyy{zyy{z{zyzzzzyyyzyyyzyyzyyy}yyy{zz{yyyyyzzzzzyyzzyzzyzz{{zzz{{|zzyz{zz{zzzzzz|}yyz{|{zyy{z{zzzz{z{z|z{z~{|zz~|{{|y{z{z{{yz{{{~}|zz~|{|zzzzzzz{zzz{{{{zz{{{{y|}z{{yz{zzz{yyzz{|~{zz|{{{{yzyzzzyyzzzz{yzz}{{yy{{|z{yz{zz{yyyzzz}}zyy}|{{zyzzzzyyzzzzzzzzz{zzyy{}zzyyz{zyzyyyzyz{}zzy{{zzzzzzzzzz{zz{{{{yz|{{{y|{z{{yzzzzz{yyzz{|}{zz|{{{{yyyz{z{zzzzz{{zzz{~{zzz~{|zzy{{{{{z{zzz{~}|zz~|{zzy{z{z{zzz{z{|z{z|{|zz{}{{|y{{{z{{yy{{{|~{yz||{|zyzzzzyzzyzzzzzzz}zyzz{{zzyyzz{zyz{zzyz|{zzz}zzzzyzyzzzyzyzzzzzzz}{zyy{{|zzyz{zz{yzzzzz}}zzy}|{zzyyzzzzzzyzzzzz{zz{{{zz{}|zzzz|zz{zzzzzz|~zyz{}{{yz{zzzzz{z{z{{{{{z{{{z||z{{zz{zzz{zy{z{}}{zz}{{{{y{zzzyyzy{zzz{z{z~zyz~}zzzyzzzyzzzz{yz~~|yy~{z{zyzz{zyzzyzz{z{zzz~zzz~{zzzyz{{zzz{zzyz~~|zz~{z{zyzz{zzyzyzz{z}zzz~{}y~}|z}yz}zz{zzzzzz~~|zy~}{}zy{z{z{zzz{z{{}z{z~{}zz}{{}z{}{z{{zz{{{~~|yz~}{}zzzzzzzz{zzz{{{{zz~{{{z|z{{y{{{zz{{zzz{~~|zz~{{{{zzyzyz{{|z{z{{{z{z{z{{|{{{}{|{z|}{{|z{|zz{{z{{{}}|zz}|{|{|{{{|{z{|{{{||{{{~}|{z~}{}|z}|{|}}|{{|~}||z~|}|{z{{}{{z{z{{}{|{{{}{|{z|}{{|{{}{{{{z{{{}~|zz}}{|{z|{}|}{{{|{}|}{|{}|}{{|}}||{||{|}|||}|}~{z{}}|}{{{|{|{{|{{|{|||{|}|||{|}{||{||||{||{{|}}}{{}||||y{zzzzzzz{zzzzz{z~{zzz~||{zyz{{z{{{z{z~}|zz~|{zzy{z{zzzzz{z{z{z{z}{{zz{}|{{yz{{z{{{z{z}~zzz}|{{zz{z|z{z{z{z|z{{{z~{{{z~}|{{{z}{z{{{z{{z}|zz~|{|{}z~{~{~zz{~{~{|{~{}{|zz|~~{|z{~{{~{{z~~{}}zz}~{|zz{z{z{z{z{z{{|{{z}{|{z|||{|y{|{z{{{z{{{|~{z}|{|{yzzzzyzyyzzzzzzzz{zzyz{}zzzyz{zzzzyzzyz|~zy{{zzyy{zzzzzzy{zzz{z{z}z{zz{}zz{zz{zzzzzz{zz|}zzz{z{zz{zz{yzzz{zz{zz{z~zzzz~|zzzz|{{|zz|z{y|}{|zz~{zz{|{{{z{zz{{{{{{{{{{}|{{z|{||{z|{{{{||{{z{|}{{z}||{y{z{z{zzz{z{{|z{z}{|zz{||{|z{|{z{{zz{{{}}{yz}|{|zzzzzzz{zzzzzzzz{zzzz{z{zz|z{z{yz{zz{{zzzzz{{zzz{{z{zzzyzzzyyyyzzzzzzyzzzzzzyzy{zzzyyzzyyzzzzzzz{zzyz{zzyzzz{{{zzzzzz{z{{zzzz{zzzzzz|zzzzyz{zzz{zzzz{|zzz{{{zzzzyyyyyyzzyyyyyyzzzyyyzzzzyzyzzyyzzyyzzyzyyyzzzyyzzzyyzyzzzyyzzyzy{zzzzzzzzzzzzz~zzzzyz{zzz{zzyzz~{{yz~zzzzyyyzzzzzzz{zzzzzzzz{zzzz{z{zy{z{z{yz{zz{zzzzzz|{zzz{{z{zzzz{{{zzzzz{z{zzzzz{zzzzz|~zzzzzzzzzz{zzzz{~{{z{~zzzzzyzz{zzyzzzz{zzzyzzzzzzyz{{zzzyzzzzzzzzzzzz|zzyz{zzzzzzzzzzzz{zzzzzzz{zzzz{z{zz|z{z{yz{zz{{zzzzz{{zzz{{z{zzyzz{zzyzzzzzyzzzzzzzzzyzy{zzzzyz{yzzzzzzzz{zzyz{{zzzzzz{z{zzzzz{z{{zzzz{zzzzzy|zzzzyz{zzz{yzzz{|zzz{{zzzzzyzz{zzyzzyz{zzzzzzzzzzzzz~zzzzzz{zzz{zzzzz~z{yz~{zzzzyzzzz{zzz{zzzz{zz{zzz{{z{zz~z{z{z{{zz{z{zzzz~{{zz~{z{zzz{{{{zzzzz{{{{zzz{{zzzzz|{zzzzyz{zzz{zzzz{|{zz{{{zzzzz{z{zzzzzz{{{zzzz{{zzzzz{{zzzzzz{zzzzzzzzzz{zzz{{zzzzyzz{zzyzzzzz{zzzzzzzzzyz{{zzzyzzzzzzzzzzzz|zzyz{zzzzzzzz{zzz{zzzzzzzz{zzz{z{zz|z{z{yz{zz{{zzzzz{{zzz{{z{zzzz{{{zzzzzz{{{{zzz{zzzzzz~zzzzzz}zzz{zzzz{~z{z{~{zzzzzz{z{zzz{zz{{{zzz{z{{{z{zz{z{z{zz|zz{{zzzzz|{zzz{}z{zzyzz{zzyzzyzzzyzzzzzzzzyzz~zzzzzzzyzzzzzzzz~{{yz~zzzzzz{z{zzzzzz{{{zzzzz{{zzzz{~zzzzzz{zzzzzzzzz~{{zz~{zzzzyzz{zzyzzzzz{zzzzzzzzzzz{~zzzzzzzzzzzzzzzz~{{yz~{zzzzz{z{zzz{zz{{{zzz{z{{z{z{{~z{z{zz{zz{{zzzzz~}{zz~{{{zzzz{{{zz{zzz{{{{z{zz{zzz{z|zzz{{z{zzz{zzzz{~}{z{~|{{zzzzzzyzzz{{{{{{{{zz{{{{{{{{z{{{{z{z{{||z{zz{z{z{zzzz{{|{{z{{{{{{{{{{{{zz{{{{{{{{{{{{{z{{{{||z{{z{{{{{{{zz{{|{{z{{{{{{{{{{{{zz{{{{{{{{{{{{{{z{{{|~{z{z{{{{{{{{z{{~{{z{~{{{{{{{|{{{{{{{{|{{{{{{{|{{{{{||{{{{{{|{{{z{{{{||{{{{{{{{{{|{||{{|{{|{|||||{|{||||{||{|||||||{|||{||||{{|||||{zzzz{zzz{zzzz{zzz{zzzz{z{z{{{{z{z{{z{{z{zz{{zzzz{{z{zzzzz{zzz{zzzz{zzz{zzzz{z{z{~z{z{zz{zz{zzzzz~z{zz~{{{zzz{z{zzz{zz{{{zzz{z{{z{z{z{{z{z{zz{zz{zzzzz{{zzz{{z{zz{{{{{{{{z{{{{{{z{{{{{{{{{|~{{{{{{}{{{{{{{{{{{{{~{z{z{z{z|{|z{{z{z|{|{{{zz|{|{{z||{|z{{{||{|{{zz|{||{{||{{zzyzz{zzyzzzzzzzzzzzzzzzzzzz~zzzyzzzzzzzzzzzz~z{z~zzyzzz{z{zzzzzz{{{zzzzz{{zzzzz{{zzzzzzzzzzzzzzzz|{zz{{zzzzz{z{zzzzzz{{{zzzzz{{zzzzz{|zzzz{z{zzzzzzzzz|{zzz{zzzz{zz{zzzzz{zz{zzzzzzzzzzzz{~{zzz{{|z{z{{zzz{|{{zz~zzz{{zz{{{zzz{zz{{{zz|{z{{{{|{z{|{{|{z|{z{{||{zz{|{zzz|{|zzzz{z{zz{zzz{z{{z{zz{z{z{z||z{z{{z{zz{{zzzz{|{zz{{{z{{{z{yz{z{{z{z{{zzz|{{{z{{z{{{z|{{z{{{zy{z|{zzzz|{{{{{yzzyyz{yzzzzzy{zzzzzz{zyzzzz{zzyyzzzyyzzzz{zyzzz{z{zzzyyyzzzzzyy{zzzzzz{zz{yzz{zzz{yzz{zyyyzz{{zyyz{{zz{zzzzzz{zz{z{zz{{{{z{z{zzzz{z{{{zzz{zzzz{{{{zz{{{{z{{{{{zzz{{{zz{{z{zzzz{z{{zzz{z{z{zzz{{zzz{{{{zz{{|{z{zzy{yzzzzz{zzzzz{z{zzzz{z{{yzz{z{{{yzz{zyzzzz{{yyzz{{z{{z{{zzz{z{{z{zz{{{zzzz{zz{zzz{z{z{z{zzzz{{{zzz{{{{z{{{{z{yz{{{z{z{{zzz|{{{z{{z{{{z|{{z{{{zy{z|{zzzz|{{{{{yzzzyyz{zzzzzz{zzzzzy{zyzzzz{zzyzzzzyyzzz{{zyzz{{z{{zz{zzzz{z{z{{z{{{{z{z{{zzz{z{{{zzz{zzzz{{{{zz{{{{z{{{{{zzz{{{{z{{{{zzz{{{{{z{{{{{z{z{{{{{{z{{{{zz{{|{{{{zzz{zzzzzzz{zz{zz{zzz{zz{zzz{z{{{zzz{zzzzzz{zzzzz|{{z{z{{zzzz{z{{zzz{{z{zzz{zzzzzz{z{zzzz{zzzz{{zzzz{{{z{{z{{zzzz{z{{z{z{{{zzzz{zz{zzz{z{z{z{zzzz{{zzzz{{{{z{{{{z{yz{{{{z{z{{zz|{{{z{{z{{{z|{{z{{{zy{z|{zzzz|{{{{{{{{z{z{{{{{z{{{{{z{{{{{{{{{{{{{z{{{{{{{{{{{{{{{|}{{z{zz{zzzz{zz{z{{z{{{z{z{{yzz{z{{{zzz{{zzz{z{{zz{z{}z{{zzzzyyz{zzzzzzz{zzzzzzzyzzzz{{zyzz{zyyzzz{{zyzzzzz{{z{{zzzz{z{{zzzz{{z{zzzzzzzzz{zzzzz{{zzzz{{{zzz{zzz{{z{{zzzz{z{{z{zz{{{zzz{zz{zzz{z{z{z{zzzz{{{{zz{{{{z{{|{z{zz{{|{z{z{{{{z|{{{{{z{{{{|{{z{{{{z{z|{{zzz|{{{{{zz{z{zz{zz{z{{z{{{{z{z{z{z{z{{{z{z{{z{z{{{|zz{{}{{{zzzz{zzz{z{{{{|{{{|{{{{{{{|z{{{{|{{{{{{{{{{{{{{{zzzzz{{{|{{{{{|{{{{{{{|{{{{{{{|{{{{{|{{{{{{{{{{{{{{{{z{z{{{{|{{{{{|{{{{{{||{{{{{{||z{{{{|{{{{{{{{{{{{{|{{{{zz{{{|{{{{{|{{{{{{{||{{{{{||{{{{{|{{{{|{{{{|{{{{{{{{{{{{{||{{{{||{{{{|}||{{{{|}||||{{}||{|{{|{{{|{|||{{{|{{{||{||{||{|{{{z{{{zz{{z{{{{{{{{z|{{{{z{z{{{{{{{z{{{zzzz{zzz{|{{{{{z{{{zz{{z{{{{{{{{z|{{{{z{z{{{{{{{z{{{zzzz{{zz{|{{{{{{{{{zz{{{{{{{{{{{z|{{{{{{z{{{{{{{z{{{zz{{|z{z{||{{{{z{{{zz{{z{{{{{{{{{|{{{{{{{{{{{{{{{{{{zz{{{{zz{|{|{{{{{}{{{{{{|}{{{{{|{|{{{{{{{|{{{{{{{{{{{{{{|{{{{||{{{{{z{|{{zz{z{|{{{z{{||{{z{{{{{{z{{{{{{{{z{{{|{{z{||{z{{z{{zzzz{z{{zz{z{{zzz{z{zz{z{z{{{z{z{{yzzzz{{zzz{{z{{z{{zzzz{z{{zzzz{{zzz{z{{z{z{z{{{z{zz{zzzzz{zzzz|{{{{z{{zzzz{z{{z{zz{{{zz{z{{z{z{z{{{z{z{{zzz{zzzzz{{|z{{{{{zzz{{{{{z{{{{{{{z{{{{{{z{{{{{z{z{{{zz{{{{{z{{{{{{{{{{{{{{{|{{{{{{|{|{{{{{{{{{{{|{{{{{{z{{{|{{{{{||{{{{{{{{{zzz{{{{{z{z{{{|{{z{{{{{{z{{|{{{{{zz{{||z{zz||{{{|||{{{{{||{|{{{|z}{{{{{||{{{{|}{{{{|}||{{|}|{{{|}|{{{{{{zz{{{{|zzz{{{|z{{{{{{|{z{{{|}zzz{{{|zz{z{|{{{z{|{{{{{{zz{{{{|zzz{{{|z{{{{{{|~z{{{|}{zz{{{~~z{z{~{{{z{~{{{|{|{z{{|{|{{{{{||{{{{{|}||z{{{|}z{z{{{|zz{{{|{}{{{|{{||{||z{{|{}zz{{{|}{{{}{|{||z{}{|}{zz{|{|{z{{{}|{{{{||{|||~|{{{||~|{||{|~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||z{{|{||{{{{{||{|{{|||{{{{|{|{{{{{|}z{{{|{|{{{|{||{{|{||{||{|||{{{{||{|{{||z}{{{|{||{{{{|}{{{{|}||{{|}||{{|}||{||{|{zzz{|{zyz{{||z{{{{|{|{z{{{|}zzz{{{|zz{z{||{{z{||{||{~zzzz{|{zzz{{||z{{{{|{|~z{{{|}{zz{{{~~z{z{~|{{z{~|{||{|||z{{|{}{{{{|}{{{}{|}||{{}{|}{{{{|{|{{{{{}|}{{{||{|||~|{|{{||~|||{|~|}{|{|}~~|{|{|}|{|{|}~~|{|}~|}{|}~|||{|{z{{zzzz{z{{zzzz{z{zzz{z|zzzzz{{zzzzz{{zzzz{{zzzz{z{z{{{||{{{{{{||{|{{||{{{z{{|{{{{z|}z{{{|z|{{{|{|z{{|{|{z{{{|||{{{{{||{|{{|z}{{{z{||{{{{z}{{{{|}{|{{|}{z{{|}{{{{|{~{{z{{|{~{{{{{|{{{{{|}|~z{{{|}{{z{{{~~z{{{~{}{{{~{{||}~|{|}}|}~|}||}|~}}|}|}~~|}|}|}|{|}|}~~|}|}~|}}|}~|}||zzz{zzzzzz{zzz{zz{z{zzzz{zzz{zz}{zzz{{|{zzz{{{zzz{|{zzz{{{z{zzz{{{zz{z{{z{zz{z|zzz{zz}{z{z{{|{{zz{|{zzz{|{zz{{||{{{{{{||{|{{{||{{{{{|{{{{z|}{{{{|{|{{{|{|{{{|{|{z{{{|||{{{{{||{|{{{|z}{{{{||{{{{|}{{{{|}||{{|}|{{{|}|{{{|{|{{zz{|{}{{{{{|}{{|}{|||z|}{|}|zz||{|{z{{|}|{{{{||{||{~||{{~|{~|{{{~|~{{~}~|}~{~}~|}{{{~|~~~{{{~~{}{{{~}~|zzzz{zzzz{z{|}z|}{}{}{{{||{{{{{{|{{z{{{{{{{{{{||{{{{{}{z{{zz{{{{{|{{{{{|{{{{{|||{{{{{||{{|{{{{{{|{{{||{{|{|}|{{|{|{z{|{|{{{{{||{{|{|||{{{|{||{{{{||{{{{{|{||{{{{|}{{{{{|{{{{{}|{{{{}|{||{{||{{{|{{|{{{{|{{{{{{|}||{{{{{}{{{{{|{{{{{|{}{{{|{{|{{|||{|{{|}|||{||}|{|}{||||{{}||}|{{||||{||{}|{||{||{{{{~}~|~{{~~}~|{~|~}}~}||~~~||}~|}|||~|}~|~|}~{{~|}~{{{{{|{{{{{{{|{{|{{{|{}{{{{{|{{{{{|}{{{{|}||{z{|{{{|}|{{{|{|{{{{{|{|{{|{{||{}{{{|{|{{{{{|}{{{{|}||{z{||{{|}||{||{|{{{{{|{|{{|{{||{}{{{|}||{{{{|}{{{{|}||{{{|{}{|}|{{|{{|{{{{{{{}{{|{{|}{}{}{|{|{{{}{|}{{{{|}||{{|}{{{|}||{{{{~||{{{{{~|{|{{{~|}{{{{{~~{{{{|}|{{{|}|~{{|}{{{|}~{{{||~|}|}}|}~|}||}|~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}}|}~|}|||{||{{{{|{||{|{{|||{{{{|{|{{{{{|}z{{{|{|{{{|{||{z{||{||{||{{{{|{||{|{{|||{{{{|}||{{{{|}{{{{|{|{{{|{|{}{{|{{|{{||{{{{{{}|{|{{|}|{{}{|{|{{{}{|}z{{{|{|{{{|{}z{{|{|z{{{~||{{{{{~|{|{{{~|{{{{{{~~{{{{|}z{{{|{|~{{|{|z{{|{{z{{{|||{{{{{}|{|{{|}|}{}{|{||{{}{|}{{{{|}||{{|}}{{{|}|{{||~|||||||~||||||~|}||||}~~|||||}|||||}~~|||}~|}||}~|||{{{{{||{||~}{|{||~}||{|~}||}|~}|||~~}|||{|}|||{|~~}|{|{}}~}|{|{{||||{{{{||}{{{|{}{||{{}{||{||{||{|z}||{|{{||{|{{{|}{{{{{{{{{|{{{{{{|{|{z{|{|{{{|{|{{{|{|{{{{}|{{{{z||{{{{{||{{{{{{{{{|}{{{{{|}|{{{|}||{z|}||{||}||{{z}||{{{{||{{{{}||{{{{{zzzz|{{z{{{|{{{z{|{{{{z|{{{{{|{{{{{z}|{{{{{||{{{{{|}{{{{{zz{z{}{z{{{|}{{{{|}{{{z|}{{{~|}{{{{{}|{{{{~~|{{{{}|~{{{{{{{|{{}{{{{{}{{{|{}{||{{}{||{|}{||{|{}||{|{{||{|{{|||{{{{{{{{{|{||~}{{||~}||{|~}||}|~}|||~~}|||{|}|||{|~~}|{|{}}~}|{|{{{||||{{{||}{|{|{}{||{{}{||{||{||{|z}||{|{{||{|{{{|}{{{{{{{{{{|}{{{{|}|{{{|}||{{|}||{||}||{{{}||{{{z||{{{{}||{{{{{{{{{{|{{zzz|{{{z{|{{{{z|{{{{{|{{{{{z}|{{{{{||{{{{{||{{{{{{{{{{~}{zzz{}{{{{|}{{{z|}{{{~|}{{{{{}|{{{{~~|{{{{}|~{{{{{{{|{{}|{{{{{}{{|{}{||{{}{||{|}{||{|{}||{|{{||{|{{|||{{{{{{{||||{{{||||{||||{{{}{|{{{{||{{{{{z}|{{{{||}|{{{{|}}|{{{||{|{||~}{|{||~}|||~}||}|~}|||~~}|||{|}|||{|~~}|{|{}}~}|{|{{{||||}{{|||}}|{|}}||{{}}||{||}||{|z}||{|{{||{|{{}|}{{{{zzz{z{~}{zzz{~}{z{z}{{{z{}{{z~{}{{z{{}{{z{z~~{z{z{}|~{z{z{{{|{{}|{{{{{}|{{|{}||{{}{||{|}{||{|{{||{|{{||{|{{||}{{{{{{{||||{{{||||{{||||{{}{|{{{{||{{{{{z}{{{{{|{}|{{{{|}}|{{{{{{|{|{{{{|{|{{{{||{{{{|{{z{{|{{z{{{{{z{{{{{{{{{{{|{{{{{||{|}|}~}}|{|}~}||}|~}|}}~}|}|~~}|}|}|}|}|}|~~}|}|}}|~}|}|{{{{{{~}{{{{{~}|{{{~}||{{}||{~|}||{{{}||{{{~~|{{{{}|~{{{{{{{|{{}}{{{{{}}|{|{}}||{{}||{|}}||{||}||{|{{||{|{{}||{{{{{{{||||}{{||||}|||||}||}{|{|{||}||{{z}||{{{||}|{{{}|}}|{{{{{{|{|}{{{|{|}|{{||}||{{|{{{||}||{{{}||{{{{||{{{{}||{{{{{{{{{{{}{{{{{{}|{{{{}||{z{{{{||}||{{z}||{{{{||{{{{}{|{{{{{{{|||~}{{|||~}|{||~}|~{{~}|~{~}|~{||}|~{|{~~~{|{{}|~{{{{{{{|{{||{{{{{}||{|{}|||{{}|||{|}||{||}||{|{|||{|{{|}}{{{{{{{||||{{{||||{{||||{{{}{|{{{{||{{{{z}|{{{{||}|{{{{|}}|{{{{{{|{|{{{{|{|{{{{||{{{{{|{{{{{|{{{{{}{{{{{{||{{{{{|}{{{{zzz{z{{{{zzz{{{{z{z{{{{{z{{{{z{|{{{{z}{{z{z{||z{z{{|{{z{zzzz{z{{{{zzz{{{{z{z{{{{{z{{{{{{{{{{{z}{{{{z{||z{z{{|}{z{z}|}{}|{}|{{{{{{{{{{z{|||||~~|~|||~~|{|~|~|||}|~|||}~~~||}||}|~}||~}}~||||~}|~||{||||}||||||}|||||}|||||}||||}}||||||}|||||}||||{|}}{|||{{{|||}}{{|||}}|{||}}|||{}}||{}}}||{{{}||{{{}||{{{}|}|{{{{{{|||}|{{|||}||{||}||{|{}||{}}}||{}{}}|{}{{|}|}{{||}|{{{{{{|||}|{{|||}||{||}||{|{}||{{}}||{{{{}|{{{{}||{{{||}|{{{{{{|||}|{{|||}||{||}||{|{}||{{}}||{{{{}|{{{{||{{{{||}|{{{}}}}}|}~}}}}|}~}}}}|~}}}}|~}}}}~~}}}}}|}}}}}}~~}}}}}}~}}}}{{{|||~|{{|||~|||||~||{}|~||{{~~||{{{|}|{{{{~|}|{{{||}|{{{{{|||||{{{||}|{|||}|||}{}|||{{||||{|{}||{|{||}||{{||}|{{{{{{|||}{{{|||}||{||}||}{|}||{||}||{{z}||{{{||}|{{{}{}{{{{{{{|||{{{{|||{||{||{|{}{|{|{{{|{|{{{z}|{{{{||}|{{{{|}{{{{{{{|||{{{{|||{{|{||{{{}{|{{{{{|{{{{{z}|{{{{||}|{{{{||{{{zzzzzzzyzzzz{zzyz{{{zzz{{z{z{{zz{z{{zzzz{zzyzz{|{zzyyzz{{zz|z{z{z|z{{{zz{{{{{z{{{{{{{{{z|{{{{z{{|{z{z{{|{{z{zzzzz{zzzzz{{zzz{{zzzz{{zz{z{zzzzzzzzzzz{zzzzzz{zzzzzzzz{{zzzzz{{zzz{{{{z{z{{z{{z{zzzz{zzzz{{zzzz{{|{zzzzyzzzzyzzzzz{zzzz{{{zzzz{z{z{{zz{zz{zzzz{zzzyzz{{zyzzyzzzzzzzzzz|zzzz|z{zzz|z{{z|z{zz{|z{zz{|zzzz{|{{zzzzzzzzz{zzzz{{zzz{{{{zz{{{z{{{{zz|z{{zzzz{zzzz{||{zzzzz{{z{z|z{z{|z{{{zz{{{{{z{{{{{{{{{z|{{{{z{{|{z{z{{|{{z{zzzzzz{zzzz{{zzz{{zzzz{{zz{z{zzzzzzzzzzz{zzzzzz|zzzzzzzzz{{zzzz{{zzz{{{{z{z{{z{{z{zz{z{{zzz{{zzzz{{|{zzzzzzzzz{zzzzz|zzzz|z{zzz|z{{z|z{zz{|z{zz{|zzzz{|{{zzzzzz{z{|{zzz{{z{z|{{{z{|{{z{|{{z{|{z{z{z{{z{z{{|||z{zzzz{z{{{zzz{{{{z{{{{z{{{{z{{{{z{|{{{z{z{{z{z{{{|{z{zz{{z{z|z{z{z|z{{{z{{|{{z{{|{{{{|{z|{{|{z{||{z{z{{|{{z{zzzzzz{zzzzz{|zzz|z{zzz|z{{z|z{z{{|z{zz{|zzzz{|{{zzzzzz{z{|{zzz{||z{z{{{z{|{{z{|{{z{|{z{z{z{{z{z{{|||z{z{z{{|{{{{{|{{{{{|{{{{{{{z{{{{z{z{{{z{z{{{{{{z{{{{{{{{z{{{{{{{{{{{|{{{{|{{{{|{{{{|{{z|{|{{z{{|{{{z{||{{{{{{z{{|{{z{z|{{{{z|{{|{{{{|{|{{|{{|{{|{{{||{{{{{||{{{{zzzzz{{zzzz{{|zzz{|{{z{|{{{{|{{z|{|{{zz{|zzzz{||{zzzzzz{z{|{zzz{||z{z||{{z{{{z{|{{z{|{z{z{z{{z{z{{{||z{z{z{{|{{{{{|{{{{{|{{z{{{{{{{{{z{z|{{{{z{{{{{{z{{|{{{{zzzzz{{zzzz{{{zzz{{{{z{{{{{{{{zz|z{{zzz{{zzzz{{|{zzz{z{{{{{{{{{{{|{{{{||{{{{||{{||{{|{||{{{{|{{{{{}|{{{{zzz{z{|{zzz{||z{z|||{z{|||z{||z{|{{|z{z||z{z{{|||z{z{z{{|{{{{{|{{{{{|{{{{{{{{{{{{{{z{{{z{z{{{{{{z{||{{{{zzzzz{{zzzz{{{zzz{{{{z{{{{z{{{{z{{{{zzz{{zzzz{||{zzzzyzzzzzzzzzzz{zzzz{{{zzz{{z{z{zzzz{zzzzz{zzzzz||{zzz|{{{{{{zzz{zzzz|||||}|||||}||||||||||}||||}||||||||||||{|||||}}||||{{{{{{|{{{{{||{{{||||{{|||{}|||{{|{||{{{|{{{{|}}|{{{{z{{{{|{{{{{||{{{||||{{||||}||||z|{|{|z{{{{{z|}||{{{{z{{{{|{{{{{||{{{||||{{|||{}|||{{{{|{{{{{{{{z|}||{{z{z{{{{|{{{{{||{{{||||{{|||{}|||{{{{|{{{{{{{{z|}||{{{{z{z|z{z{z|z{{{z|{{{{{{{{{|{{{{|z{|{{|{{{|{z{z|||{z{}|{||}||{||}||||{}||||}||||||||||{|||||{|{||{|{||||{|{z{{|{{{{{|{{|{{|{|{{{{{|{{{{|{{z{{|{{z{{{{{{z{{|{{{{z{{|{{{{z|{{{{{|{{{{{{{{{{{{{{{{|{{{{{{{{{{{{{{|{{{{z{z|z{z{z|z{{{z|{{z{{{{{{{{{{z{z|z{z{z{{{{z{z{||{z{{z{z|z{z{z|z{{{z|{{z{{{{{z{{{{z{z{z{z{z{{{{z{z{{|{zzyzzzzzyzzzzzzz{zz{{zzy{{zzzz{z{{zz{zzzzz{{zzz{zzzyzzyzzzzzyzzzzzzzzz{zzzz{{zzz{{zzzz{{zzyzzzzyz{zzzzyyzyzzzzzzzzzyzz{zzzz{zzzy{zzzz{zzz{{zzzzzzzzzzzz{zzzzzzzzzzzzzzyz{zzzy{{zz{{{zz{z{zz{zz{zzzzzzzzzz{zzzzzyzyzzyzyzzz{zyzz{zzzzzz{{z{z{zzzzzzzzzzzyzyz{{zyzyyyzyzzzzyzzzz{zzz{zzyz{zzzz{z{{zz{zzyzz{{zyz{zzzyzyzzzzzzyzzz{z{zz{{zzz{{{{z{{{{zzz{zzzzz{{zzz{{zzzzyzzzzzzzzzzzzzzzz{zzzz{{{zz{{z{{z{{zzzzzzzzz{zzzzyzzzzzzzzzzzzzz{zzzz{{zzy{{zzz{zzz{{zzzzzzzzzzzz{zzzzzzzzzzzzzzzz{zzzy{{zz{{{zz{z{zz{zz{zzzzzzzzzz{zzzzzyzzzzzzzzzz{z{zz{{zzzz{{{z{{{{{zz{zzzzz{{zy{{{zzzzyyzzzzzzzzzzzzzzz{zzzz{zz{z{z{zz{{z{zzzzzyz{{zzzzzzzzzzzzzzzzz{{zz{{zz{{{zzz{{z{{z{{zzzzz{{zzz{zzzzzyzzzzzzzyzzz{zzz{{zzz{{{{z{{{zzzz{{zzzzzzzzz{{zzzzzzzzzzzzzzzzzz{z{z{{zz{{{zz{z{z{{{z{zzzzz{{zzz{zzzzzzzzzzzzzzzzz{zzzz{zzzz{zz{z{z{zz{{z{zzzzzyz{{zzzzzyzzzzzzzyzzz{{zzz{{zz{zzz{{z{zzzzzzzzz{{yzz{{z{yzzzzzzzzzzzzzz{zzzz{|z{{|{zz{|{z{z{|{zzzzzzzzz||zzzzzzzzz{{zzzz{{{z{z{{{z{{{z{{{{z{{{{{zzzzz{{zz|{zzzzzzzzzzzzzzzzz{zzzz{{zzz{{{{{{{{{z{{z{zzzzzzz{{{zzzzyzzzzzzzzzzz{{zzz{z{zz{zz{{z{z{{zzzzzz{{zzz{{z{zzzzzzzz{zzzzz{zzzz{{{z{{z{z{z{zz{zz{zzzzzzzzzz{zzzzzzz{z{{zzzz{{zz{z{{{z{{{{{zz{{{{zz{{zzzz{{zz{}{zzzzzz{z{z{zzz{z{z{zz{{z{{{{zz{{z{{z{{z{zzzz{z{{}zz{zzzzzzzzzzzzzz{{zzz{{{zz{{{{{{{zz{z{zzzz{{zzz{{{{zzzzzzzz{zzzzz{zzzz{z{z{{z{zz{z{z{zz{zzzzzzzzzz{zzzzzyzzzzzzzyzzz{zzzz{{zzz{{{{z{z{zzz{zzzzzzzzyz{{zzzz{{{{zz{zzzz{z{z{z{z{z{z{{{zz{}{{{{}{||{}|{|{{|{{zz{{z{{}|{{z{{{{{|{{{{{|{|{{{{||{|{||{|{||{{|{||{{{{{{{{|}{{{{{z{{{{|z{{{{||{{{||{{z{|{{|{|{{{{{z{{z{|{{{z||}{z{z{z{z{zzz{z{z|{{zz|{{{{|{{{{|{{{{{z{{{zzzz{{|||{zzzzz{z{zzzzz{z|{{zz|{{z{|{{{{|{{{{{z{{{zzzz{z|||{zzzzz{z{{{z{z{{{{{z{{{{{{{{{|{{{{|{||{{|{z{{{z{{|{{z|{{{{{{|{{{{{|||{{||{|{||{{{||{{{{||{{{{|||{{{|{|{{zzzzzz{zzzzz{{{zz{{{{{{{{{{{{{{z{z{{zzzz{{zzz{{{zzzzzzzz{zzzzz{{{zz{{{{{{{{{{{{{{zzzz{zzzz{{zzz{{{zzzzzzzz{zzzzz{{{zz{{{{{{{{z{{z{{z{zz{zzzz{{zzzz{zzyzyzyzzzzyzyzzzzyzz||zyz|zz{z{zzzzzzzzyyzzzyzz|z|yyzzyzyyzzyyzyzzz{zzz{zzyz{z{zz{zyyzy{zzyzyy{yzz{zyzzzzyyyzzzzzyyzzyzzzzzzyz{z{zzz{yzzz{{zyzzzzzzz{zzzyyyyyyzzyyyyyzzyyzzzzyyzzzzyzzyyzyyyzyyzzyzyzz|zyyzzzzzzzzzzzzzzzzyzzzzzzzz{{zzzz{{zzzzzzz{zzzz{{zzzzyzzz{zzzzzzyzzz{z{zzzz{z{{zzzzzzzzzzz{zzzzyz{{zyzyyzzyzzzyzzzyzzyyz||zyz|zz{zz{zzzzzzzzyzzzyzz|z|yyzyzyzyzz{yzyzzz{zzzzzzyz{zzzz{zyzzz{zzzzzz{yzz{zyzzyzzzz{zzzzz{zzz{z|zyzz|z{zzzzzzzzzzzz{z{zzyz|{{yzzyzzzzzzzzzzzzz{zz{|zzz{{z{z{{zzzzz{zzyzzz{zz{{|yzzyzyzyyzzzzyzzzyzzz{yzyz{z{zz{{yzzy{{zyzzzzzzz{zzzyyyyyyyzzyyyyzzyyzzzzyyzzz{zzzyyzzzzzyzzzyzyzz{zyyzzzzzzzzzzzzzzzzyz{zzzz{z{{z{zz{{zzzzzzz{zzzz{{zzzzzzzzz{zzzzzzzzz{z|{zzz|z{{zz{zzzzzzzz{zzzzzz|{{zzzyzzzzzzz{zzzzz{zzz|zzzz{z{zz{zzzzz{zzzzzz{yz{{|zzzyzzzz{zz{zzz{z{{z{zzzz{{{zz{{zzzz{{zz{z{z{yz{{zyzzzzzzzzzzzzzzzzzzzz|zzz{{z{z{z{zzzz{{zyzzzzzz{{|zzzzzzzzzzzzzzzzzzzz|{{zz|z{{z{{z{{{zzzzzz{zzzz|{{zzzzzzzz{zz{zzz{zz{{z{zzz{{{{zz{zzz{z{zz{zzz{zz{{zzzzyzzzzzzzzzzzzzzzzzzzzzz{z{zzzzzzzz{zzzz{yyyz{{zyzzyyyzzzzzzyzzzzzzzz|zzz|z{zzzzzz{zzzzzzzzzzyz|{{zzzzzzzz{zzzzzz{zzz{z{zzz{|{zz{|{z{z{|{z{z{zzzz{||zzzzzzzzzzzz{zzzzzz{zzz{zzz{|{zz{z{|{z{zzzz{z{zz||zzzzzzzzzzzzzzzzzzzzzzz|zzz{z{zzzzzzzz{zzzz{zzzz{{|yzzyyzyzzzzzyyzzzzzzzzzzzz{z{z{zzzzzzzzzzz|zzzz{{zzzzyzyyyyzzzzzyyzzzzz|{zzz|zzzz{zyzzzzzzyz|zzyz||zzzzyzzzzzzz{yzzzzz{zzz{zzzz{{zz{{z{zz{zzzzzz{zz{}{zzzyzzzz{zzzzzz{zzz{z{{{zz{{{{zzz{{{z{zz{{{zzyz{}{zzyyyzzzzzzyzzzzzzzzz{|zzz{z{{z{zzzzzzzzzz|zzzz{||zyzyzzzz{zzzzzz{zzz{zzzzzzzz{{zzzz{zzzzz{zzzzyzz{zzzzzz{zzzzzzzz|z|{z{{zz|{||{{|||{zz|{{|z|{||{z|{{z|||{zz}||{z{z{z{z{zz{z{z{z{{{z||z{z|}|{zz}|z|{z|{{{z{{yz|}|z{{z{z{{{zz{z{{{{z{{{||{{z||}{z{|z{|z{|z{{{{{zz|}|z{zzz|z{{{z{|z{{||{{|||{z{|{{|z|{|{z|z{|z{|||z{||}zzzz{zzz{zz{z{z{zz{{z||{zz|{{{z{{zzzzz{z{{z{zzz|||zzzyzyzzzzz{zzzzzz{zz|zzzz|{{zzz{zz{zz{zzzz|z{y|{{zz{zzz{zzzz{zzz{zz{zzz|z{zz{{|zz|{z{|z{{|zz|z{zz{{z{{{z{z{z{{z{z{z{{z{{{|zz{{|{|{{|{z{{{|{z{{{|z{z{{{z{zyzzzz{zzzzzz{zzz{zz|zzzz{{{zzzzz{zz{zz{z|zzyz{{|zyyyzzzzzzzzzzzzzzzzz|zzz{{{{z{zzz{zz{zzzz|zyyz{{|yyyzyzyzyzyzz{zzyy{z{zyzzzz{zyz{zz{zz{yy{zzyyzzz{zyzzyzyyyyyzyzyzzzzyzzyzyz|zzzz{zyyzyzzzyyyzzyyz{zzzzyyzyyzzyzzzzz{yzzzz{zzzzzzzz{zzzzzzyzyzyzyzzzz{zzzzzzyyyzzyzzyzzzzzzzzyyzzzzzz{{yzzzzz{yyzzzzyzzz{zyyyyzyzyzzzzyzzzzzzzzyz{zzzzz{{zz{zz{{zzzzzzzzzyzzz{zzyyzzyzzyzzzzyzzzy{z{zyzz{z{zz{{zz{zzzyy{zzyyzzz{zyzyzyzyzzyzyzyz{zzyzz{zyz|zzzzzzyzzyzyzzyzzzyyz{z{zzyzzzzyzzzzz{zzzz{z{zzzz|z{zz{{zz{zz{zy{zzzyzz{{{zzyzzzyyyzzzzyzzyzzzzzzyz{yzzz{zyyyzzyzyyyzzzyz{zzzzzzzzyyzzzzzzz{zzzzz{yzzzzz{z{{zzzzzz{yzzzzzzzz{{zyyyzyzzzzzzzzzzzzzzzyz{zzzz{{{zz{zz{{zzzzzzzzzyzzz{zzzyzzzzyzzzzzzzzzz{z{zzzz|z{zzz{zz{yzzzy{zzzyzz{{zzzyyzzyzzzyzzzz{zzzzz{zzzzzzzzz{zzzzzzzzzz{yzzz{z{zzyzzzzyyzyzzzzzzzzz{zzyzzz{zz{zzz{zzzzyzy{zzyzz{zzzyzzzzzzzzzzz{zzz{z{zzzz{z{zz{{zz{z{{zz{zzyzzzz{zzzzzyzzzzzzzzzzzzzzzzz{zzzz|{{zz{zz{{zzzzzzzzzyzz{{zzzzzzyzyzzzzzz{z{zz{{{zzzzz{{zz{zz{{zzzy{z{yzzzz{zzzyzyzyyzzyzyzzzzzzzzzzzzzzzzz{zzzzzzzzyzz{yyzzzzzzzyzzzzyzzyzzzzzzzzzz{zyz|z{zz{zzz{zzzzyzz{zzzz{{{zzzzzzzyzzzzzz{zzzz{z{zzz{z{zz{|zz{z{{{z{z{zzzzz{|zzzzzzzzzzzzzzzzz{zzzz|{zzz{|{zz{z{|{z{zzzz{zzzz||zzzyzzyyzzzyzzzzz{zzzzz{zzzzzzzzzzzzzzzyzzzzyyzz{{{yyyzyzyyyzzzzyyzzzzzzzzyzzzzzz{zyzzzzzzyyzzyzyzz{zyzyzzzyyyzzzzzyzzzzzzzzzzz|zzz{{yzzzzzzyyz{zyyz{{{zzzzzzzyyzzzzzzz{zzzz{{zzzzz{z{{zz{zzz{yzz{{zyzz}{zzyzzzzyzzzzzz{zzzz{z{zzzz{{{zz{z{{zz{yz{zzzzzz{}zzzyzyzyzzzyzyzzz{zzzzz{zzz{z{zzzzzzzzzzzzz{zyzzz|{zzzzzzzzz{zzzzzzzzzzzzz{z{zz{z{{zz{|z{{z{{zz{zz{zzz{zzzz|||z{z{z|zzz|z{z|{z{|{{|{{{z{|{{{z|{z{{z|{{z{||zzz}||{z{{zzzzzz{{zz{z{z{{z|{zz{|z|{zz}zz|{z|{z{{z{zz{}|zz{z{z{z{z{z{z{z{zz{{}{z{z||}zz{|{{|z{|zz{{z{{z|}{zzz{z{zzz{z{zz{{|{z{|{|zz{||{|z|{z{{{z{{z{|{{z{||}zzyzyzyyyzyzyzzzzzzzz{zzzz|z{zz{zzz{zzzzyzz{zyz{z{zzzzzzzyzzzzzzzzzzzzz{zzzz|z{zz{{zz{zzzzyzz{zzz{{{zz{zzzzzzz{zzzzz|zzzz{|z{zzz{|z{|zz{|{{{zzz{z{zz{{z|zzz{z{z{z{z{z{{zzz{{{zz{{|{{zz|{|{{||{zz{z{z{{{|{zzyzzzzzzzzzzz{z{zz{z{{zzzzz{zzz{zz{zz{yz{z{yyzz{{{zyzyyyzyzyzyyzzzyzzzzzyzzzyzzzzyyzzyzzyyzzyyyyzzzzzyyyyyzyzyyyy{zzyyzz{zyzzzz{zzzyzz{zzzyyyzzzyyzz{zzzyyyyzzyzyyzzzzzzzzzzyzyzzzyzzyzzzyyzyyzzyzyzzz{zzzyyyyzzzyzyzzzyyzzyzzyzzzyzzzzyzyzzz{yyzzzzyzzzzzyyzyyzzyzzzzzzyzz{zzzzz{{zzzzz{{zzzzz{{zzzyzzzzzzzzz{zyzyzyyzyzyzzy{zzy{zz{zyzzzz{zzzyzz{zz{yzz{yyyz{z{zyzzzyyyzzyzyz{zzzzzz{zzzzzz{zzzyzz{zyzyyzzzyyzzz{zyzyzyyyzzyzyyzzzyzzzzzyzzzzzzzzyzzzyzzyyzzzzyyzz{zzzzyyzyzzzzyy{zzzyzz{zyzzzz{zzzyzz{zzzzyyzyzyyzz{zzzyzyyyzzzzyzzzyyzzzzzyzzzyzzzzyzyzzz{yyzzzzyzzz{zyzzyzzzzyzzzzzzz{zzzzz{{zzzzz{{zz{zz{{zz{yzzzzyzzzz{zzzzzyzyzzzzzz{zzz{zz{zzzzzz{zzzyzz{zzzzzz{zzyz{z{zzzzzzzyzzzzzzzzzzzzzzzzzzzzzz{zzzzzzzzzzyzzzyzzz{zzzzzyzyzzzzzyz{zzzzz{zzzzzz{zzzyzz{zzzzyzzzzyzzz{zzzyzzyyzzzyzzz{zyzzz{zzzzzz{zzzzzz{zz{yzzzzzyzzz{zzzzzzzzzzzzzzzzz{zzzz{{zzzzz{{zz{zz{{zzzzzzzzzzzzz{zzzzzyzyzzzzzzz{zzz{z{zzzzzz{zzzyzz{zzzzzz{zzyz{z{zzzyzyyyzzzyzyzzzzyzzzzzzzzzzzzzyzyzzz{yyzzzzyzzz{zzzzzzzyzzzzzzzzzzzzzzzzzzzzzz{zzzzzzz{zzzzzzyzzzzzzzzzyzyzzzzzyz{zzzzzz{zzzzz{zzzyzz{zz{zyzzzzyzzz{zz{zzyzyzz{zzzz{z{z{{z{z{zzz{zzzyzz{zz{zzz{zzyz{z{zzzzzzzzz{zzzzzz|{zzzz{|{zzz{|{zzzz{|{z{zzzzzzzzz{|zyzyzyyyzzzyzyz{zzyzzz{zzzzzzzzzyzz{zzzyyzzzzyzzz{zzzzzyyyzzzzzyz{zzzzzz{zzzzzzzzzyzz{zzzyyzzzzyzzz{zzzzzzzyzzzzzzz{zzzzzz{zzzzzzz{zzzz{zzzzzzzzzyzzz{{z{z{y{y{z{z{y{{{{z{zz{{z{z{z{zzz{z{zz{{y{zzzy{zz}zzzyzyyyzzzyzzz{zzz{{{{zzzzz{{zzyz{{zzzyzz{zzyz{{}zzzzzzzz{z{zzzzzzzz{zzzzzz{{zz{{z{{zzz{z{{{{z{zzzz{zzzzzzz{{{{z{z{zzz{z{z{zz{{{z{{z{{z{z{z{{{{z{z{zz{z{zzzzz{{{{zz{zzzz{{z{zzz{{z{{{{{{zzzz{{{{{zz{zzz{zzzz{zz{}{{{|{{zzz{{|{{zz{{|{{{z{{{|z{z{{{|z{z{{z|zz{z{zz{{|{z{z{{{z{z{z{{{|{{z{{{|{z{{{{|{||{{{|{{|{{{{zz{{||{zzzzzyyzzzzzzz{zzzzzz{zzzzzz{z{{zzz{zz{yzzzzzyzz{zzzzzzzyzzzzzzz{zzzzzz{zzzzzz{z{{zzz{zzzzzzzzzyzz{zzzzzzzyzzzzzzz{zzzzzz{zzzzzz{z{{zzz{zz{zzzzzzyzz{z{{{{{zzz{{{{z{{z{{{{z{z{{z{{{z|{z{z{zz{zz{{{{z{{{z{z{z{z{zzz{z{z{{z{z{{{{zz{{|{{z{|{|{{|z{{z{{zzz{{|{zzzzzzz{zzzzzzzz{zzzzz{z{zzz{z{z{z{zz{z{{zzzzz|zzzz{{{zzzyzyyyzzyzyzyyzzzzyzzzzzzzyzzyzzzzyyzzzzzyyyz{zyyzzzzz{yzzyzyz{yzzzyz{{{zzzzz{{{zyzzz{{{{yzz{zz|zyzy{zyzzz|z{zzzzyzyzzzzzzyzzzzzzzzzzzzzyzzzzzzzyzzzzzzzyzy{zyzzz|zz{z{zzzz{{z{y{z{z{{zz{{z{{{{{{zz{{zzzzz{{{{zz{{{zz{{{{{z{z{zzzzz{z|{zzz{{{|yz{z{{{zz{zz{{{{zzz{z{|zzz{|zzz{{|z{yzy{zyzyzyzzzy{yzyzzzz{yzzzzzzzzzzzzzz{yzzzzzzzyzz{zyzzz|zz{z{y{yzz{z{y{z{zz{{z{zz{z{{z{zz{z{{zzz{z{{zz{z{zz{z{|zzzzzzzzzz{zzzzzzz{zzzzz{z{zzz{z{z{z{zz{z{{zzzzz|zzzz{{{zzyzzzyyyzzzzyyyzzzzzzzzzzzzyzzzzzzzyzzzzzzzyyz{zyyzz{zz{zzzzyzyz{zzzyz{{{zzzzz{{{zyzzz{{{{yzz{zz|zyzy{zyzzz|z{{z{z{zzz{{z{{z{z{{zz{{z{{{{{{zz{{zzzzz{{{{zz{{{zz{{{|{z{z{zzzzzz{z|{zz{{{|zz{z{{{zz{zz{{{{zzz{z{|zzz{|zzz{{|z{zzz{zzzzyzz{{z{zzzz{{{zzzz{{{zzzzz{{{{yzz{{z|zzzz{zzzzz|{{zz{zzzzzzzz|{zzzzz|{z{zzzz{{{zzzzzzzzzz{z{zzz{{zzz{{{zz{z{y{yzzz{z{y{z{z{{z{zz{z{{z{zz{z{{zzz{z{{zz{z{zz{z{|zzzzzzzzzz{zzzzzzzz{zzzz{z{zzz{z{z{z{zz{z{{zzzzz|zzzz{{{z{z{z{zzz{{z{z{z{{{{z{{z{{{{{{zz{{{{zzz{{{|zz{{{zz{{{|{{{z{zzzzzz{{|{zzz|{{|z{z|{{zz{zz|{{{zzz|z{|zzz{||zz{{|z{z{zz{z{yzzzzz{z{z{{zz{z{z{zz{zzzz{z{{yzz{z{{zz{z{zz{zz|zz{z{zzyzyz{z{zzyzz{{{zzzzzz{y{zy{{{zyzy{zz|zyzz{zyzz{|z{{z{zzzzzz{z|{zzzz{{|{z{zzz{{{zz{{{zzzz{{z|zzz{{zzz{{|z{{z{z{yzzz{z{z{z{z{{{z{zz{{{z{zz{{{{zzz{z{|zz{z{zz{z{|z{{z{zzzzz{{z{zzzzz{{{zzz{{{{z{z{{{{{zz{{{{|zzzz|zzzz{|{{{{{{{z{{{{{|{{{z|{{|{z{{|{{z{{{|{{|{{{|{{|{{{{||{{{{|{{{{zzzzzzzz{z{zzzz{{{{zz{z{{{{{zz{{{{zzz{{{|zzz{|zzz{{|z{zzzzzyzz{zzzzzzzz{zzzzzzz{zzzzzzzz{yzzz{zzzzzz{zzzzz|{zzz{zzyzz{zz{zzzzz{z{zzzzz{z{z{zzzz{yzzz{zzzzzz{zzzz{|{zzz{zzzzz{zz|{zzz{{z|{z{z{{z{{{zzzz{zzzz{z{zzz{{zzz{{|{z{z{z{zzz{{z{z{z{|{{{z{zz|{{{z{zz|{{zzz|{{|zz{z||z{z{|{z{{{{{zz{{{{{z{{{|{{{{{{{|{{{{{z{|{{{z{|{{|z{{{|{{{{{||{zzzz{zzz{zz{{{{{z{zzzzz{{z{zzzz{{{{zz{z{{{{{{zz{{{{zzz{{z{zzz{{zz{|{{{{z{zzzzz{{z{zzzz{{{{zz{z{{{{{{zz{{{{zzz{{z{zzz{zzz{||{{{{{zzzzz{{{{zzzz{{{{zz{{{{{{{{z{{{{{zz{{{z|zzz{zzz{||{{{z{{{z{z{{z{{{z{{{{{{{{z{{{{{{{z{{{{z{z{{{{{z{{{z{{||{{||}{|{{{{||}{|{{{{|}{||{{{|}{|{{{{|{{{{{|||{{{|{{{||{||zz{zzzzzzzz|{zzzzzz|{z{zzzz{z{zzzzz{zzzz{z{zzz{{zzzz|zz{z{zzzzz{{z|{zzzz{{|{z{z{{{{z{zz{{z{zzzz{z|zzz{{zzzz|{{zz{z{zzzz{z|{{z{zz{|{{{z{z{{z{zz{z{{zzz{{{{zz{{{zz{z{zzz{{zzzzz{z{|{zzz{{{|{z{z{{{{{{zz{{{{zzz{{{{zzz{{zzz{|zz{{|||{|{{{{|||{{{{|||{{{|{||{{|{|{{|{|{{{{||{{{|{{{{{{{{zz{zzzzz{zz|{zzz{{{|{z{{{{{{z{z{{{{{z{{z{|{zzz{|zzz{{|{{{|z{{{{{z|{{{|{{|{{|{{}{{{{||{|{{{{{|}{{{{{||{{{{{|{{{yzzzzz{{z{y{{z{{z{z{z{|z{{z{z{|zz{z{|}z{z{{||zz{{{|{{}{{z{{|}{z{{{||}{{{{||}|y{{{||}||{{{||}z{{{{||z{{{{|{}{{{z{{|{{z{{{{|{{{{{{|{|z{{{{|{|zz{{{|}z{{{{||z{{{{||{{{{|{{z{{{{{{{|{{|{{|{{}{{{{||{|z{{{{|}z{{{{||z{{{{|{{}|{{{||}|{{|{||}|{||||}~|}{|||}~~{{|||}|{|{|}~~|{|}~|}{{{z{{{|{{{{{{|{{{z{{{|{{z{|z}{{{z{|{{{{{|}z{{{|}||{{|}|{{{{{|z{{{{z|{{{|{{|{{|{{}{{{{||{|{{{{{|}{{{{{||{{{{{|{{{{{{z{zz{yzy{{z{{z{z{z{|z{{z{z{|zz{z{|}z{z{{||zz{{{|{{}{{{z{{|}{{{{||}{{{{||}|z{{{||}||{{{||}z{{{{||z{{{{|{}{{{|z{{|{{{{{{|{{|{{||{}{{{{||{|z{{{{|}z{{{{||z{{{{||{}|{{{{{|}|{{{||}|{||||}~|}{|||}~~{{|||}|{|{|}~~|{|}~|}{{z{zz{zzzz{z{{zzzz{{{zzz{{z{zzzz{|zzzzz{{zzzz{{zzzz{{zz{{{z|{{{{{{{|{{{{{{|{{z{|z}{{{z{|{{{{{z}z{{{|}z|{{|}{z{{{{|z{{{{{z|{{{|{|{{|{z}{{{{||z|{{{{{|z{{{{{||{{{{{{{{}{{|z{{|}{{|{{||}|{{||}}{{{{||}||{{{||}z{{{{||z{{{{||}}||{{{||}|{{|{||}|||||}~|}{|||}~~|{|||}|{|{|}~~|{|}~|}{|}{{{z{{|}{z{{{||}{{{zzzzz{{{||}{|{{{||}z{{{{||z{{{{|z}}{{{z{{|}{{{{{||}{{{{zz{z{{{||}||{{{||}z{{{{||z{{{{|z}}{{|{{{|}{{|{{||}{{|{|{|z}{{||}||{{{||}z{{{|}||{{|}|z}}{{|z{{|}{z|{{||}{|{{||}{{{{||}||{{{||}{{{{{||{{{{{|{}}{{{z{{|}{z{{{||}{{{{||}z{{{||}|~{{{||}z{{{{|~~{{{{~{}}||}{}||}|{}|}}|}|}||}|}~}}|}|}~~|}|}|}|}|}|}~~|}|}~|}|{zz{y{zz{zy{z{{{{z{zz{{{{z{z{zz{zz{z{z}z{z{z||zz{z{{{{{zz{y{zz{zz{z{{{{z{zz{{{{z{{{zz{zz{z{z}z{z{z||zz{z{z{z{{{{z{{z{{{{{{{{{{{{z{{{|z{{z{{|zz{{{|}{{{{{||{{{{{|{{{{{|{{{{{{{|{{{{{{{|{{{{|z}{{{{|{{{{{|}z{{{|}||{{|}|{{{{{|z{{|{{z|{{{|{{|{{||{}{{{{||||{{{{|}|{{{{||{{{{{||{}{{|z{{|}{{|{{~|}{|{{~|}~{{{{~|}~{{{~|}z{{{{~~~{{{{~{}zz{z{zz{|}z{|}z|}{}{}{{{|zzz{{{{|z{{{{{{{z{{{|z{{{{{{|{z{z{|}zz{{||{z{{{|{{{{{|z{z{{{{|z{{{{{{{z{{{{z{{{{{{|{z{z{|}z{{{||{z{{{|{{{{{|z{{|{{{|{{{|{{{{{{|{|z{{{{|{|{z{{z|}{{{{||{{{{{}|{}{{|z{{|}{{|{{||}{{{{||}{z{{{||}||{{{|{}z{{{||{{{{{|{}{|{|{|{{||{|{||||{||{|{|}|{|{||||{{|{||}||{||||{||{{|{{{|~{~{{~{|~{~~|~|~|{~{~~{}~{~|~~~{~{~|}z~{~|}~{~|}~{{{{{{{{{{{{{{{{{{{{{|{{{{|z}{{{{{|{{{{{|}z{{{|}||{{{|{{{{{{{{{|{{{{{{{|{{{|{{|{|z}{{{|{|{{{{{|}z{{{|}||{{{||{}{{{{{{|}{{{{{||}{{|{||}|z}{{||}||{{{||}z{{{|}||{{{|z}{{{|{{{{{{{|{{{|{{||{|{{}{}{{||{|{{{{{|}z{{{|}||{{|{z{{{{|{{{{{{{|{{{{{{{|{{{{~z}{{{{{~~{{{{|}z{{{|}|~{{|}{{}|{}|}||}|{}|}}|}|}||}|}~|}}|}|}~~|}|}|}|}|}|}~~|}|}~}|z{|{||||||~|{|||~}|||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{{||}}}{z|}}{{}{}{||||}{||{}}{|||}|{}||{|}||}{|}}{|{}{{z{{{|z{z{{|{{z{|{{|{||{{{{{|{{{z{|{{{z{z}|{z{zz}{|{z{{z{||||{z{|||{|{||||z||||{{||||{|||||{|{{}|{|{|{}{|{|{{zzzz|zzz{{|{{z{|{{|z||{{{{||{{{z||{{{z{z}|{z{zz}{|{z{{{{|{||{{{||{{|{|{||{||{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{{|{|||||||~||||~}|||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{{{||}}}{|}}{{}{}{||||}{||{}}{|||}|{}||{|}||}{|}}{|{}{{z{|{|||{z|||{|{||||{||||{{{|||{|||||{|{{}|{|{|{}{|{|{zz{z{{|zzzz|{{z{|{{|z||{{{{||{{{z||{{{z{{}|{z{zz}{|{z{{{{|{|~|{{{|{{|{|{||{||{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{{z{{{}|}{z{}|{}{|{{|{}|{{|{}}{{|{||{}|{{{}||}{{z}{|{}{|{|||||||~|||||~}||~}}|{|~}}|}|~}}||~~}}|||}}}||||~~}||||{{{||}}}{{|}}|{}}|||||}|||{}}||||}||}||{|}||}{|}}{|{}{{{{|{|~|{{{|~{{|{{|{{||{|{{||{|{|~{{|{|{|}|{|{|~~{{{|{{z{{{}|}{z{}||{}{|{|{}|{{|{}}{{|{||{}|{{{{||}{{z}{|{}{{z{{|{|{{{|{|{{{||{{|||{z{{||{z{{|{{z{{{z{{{{{z{|{{{{{{}||||||~|||||~}|||~}}||~}}|}|~}}||~~}}|||}}}||||~~}|||||{|||}}}|{|}}}|}|}}|||}}||{}}}|||}|}}||||}||}||}}{||}|{{{|{|~|{{{|~{{|{~{||{|{|{{||{|{|~|{|{|{|}|{|{|~~{|{|{{z{|{}|}{z{}||{}{||||{}|||{}}{|||||{}||{{}||}{|{}{|{}{{z{|||||{{|||{{|||{|||||{{{||{|{|||{|{|{{}|{|{|{}{|{|{{z{|{|||{z{||{{|{|{||z{|{{{||{|{|||{|{|{{}|{|{|{}{|{|{}}|}|}|~|}|}|~}}|}~}}|}|~}}}}~}}}|~~}}}|}}}}}|}|~~}|}|}|{||||~||{||~}|||~}||||~}||{|}|||~|}|||||}|||||~~{|||||z|||}|}|z|}|}|}||}|||}|}||{}}|||}|}}|||{}||}||{}{||}||z|||||||{|||}||||}|{|||}||{||{||}{}||||{}|||||{}{|||||z|||||||z|||}||||}|{|||}||{||{{|}|}||||{}|||||{}{|||||z|||||||z|||}||||}|{|||}||{||{{{}{}||||{}|||||{}{|||||||}|}~}|||}~}|}|~}}||}~}}||}~}}|}~}}|}|}}}|}|}~~|||}|{{{|{}}}{{{}}|{}{}|||{}}|||{}}||||}|}||{|}||}{|}}{|{}{{{{|||}|{{||}|{||}|||||}||{{|}||{|}|{{|{|}|{|{|}}{|{|{{{{|{|}|{{{|}{{|{}{||{|}{|{{|}{|{|}|{||{|}|{|{|}}{|{|{{{{|{|}|{{{|}{{|{}{|{{|}{|{{|}{|{|}|{|{{|}|{|{|}}{{{|{{{{|{|}|{{{|}{{|{}{|{{|}{|{{|}{|{|}|{|{||}|{|{|}}{{{|{}|}|}|{}||{}||{{{||{|~{~|~}~}~{~}~~~}~~~||~}~~|~|}~~|~|~~~}~|~|}|~}~|~{|~}~{{{{|}|}{{|}|||}||||||}||||{}}|||{|||}|{{|}||}{{|}||}{|{||||}||{||}}|||}}|{||}}||{|}}|||}|}|||||}{||||}}{|||{z{|||||{{||||{|||||||||||{{||||{|||||{|{{}|{|{|{}{||{{z{{|{|z{{|{||{z|||{||{||{{{|||{{z|||{{z{{}|{z{z{}{|{{{z{{|{|z{{|{||{z|||{|||||{{{|||{{z|||{{z{{}|{z{z{}{|{zzzzzzzzzzzzz{zzyz{{{zzz{{zz|{{{zzz{{zzzyz|zzzzz{{zzzzzzz{zz{z{zzzzz{z{z{zz{{{zzz{{z{|z{{z{{{{z{zzz|z{zz{{{zzzzzzzzzzzzzzz{zzzz{zzzzz{zzz{z{zzz{{zzzzzz{zzzzzzzzzzzzzzzzzzzzzz{zzzz{{{zzz{{z{|{z{zzz{{zzzzz|zzzzz{{zzzzyzzz{yzzzzz{zzz{{z{zzzz{z{|z{zzzzzzzzz{z{zzzyz{{zyzzzz{z{zzzz{z{z{zz{{{z{z{{z{|z{{z{{{{z{zyy{z{zzz{{zzzzyzzzz{zzzz{{zzz{{{{zzz{{z{|{{{zzz{{zzz{z|zzzzz{{zzzzz|{zzz{z{zzzz{z{z{zz{{{zzz{{z{|z{{z{{{{z{zzz|z{zz{{{zzzzzzzzzzzzzzz{zzzz{{{zzz{{zz{z{{zz{z{zzzzz|zzzzz{{zzzzzzzzzzzzzzz{zzzz{{{zzz{{z{|{z{zzz{zzzzzz{zzzzzz{zzzzzz{z{{zzzz{{z{z{{{{z{z{{z{|z{{z{{{{z{z{z{z{zzz{{zzzzzzzzz{zzzzz{zzz{{{{z{{{{z{|{{{zz{z{zzzzz{zzzz{{{zzzzzz{z{{zzzz{{{{z{{{{z{{{{z{|{{{z{{{{z{zzz|z{zz{{{zzzz|{zzz{z{z{z{z{z{z{z{{{z{z{{z{|z{{z{{{{z{zzz|z{z{{{{z{zzzz{z{zzzzz{{{z{z{{{z{z{{z{|{{{z{{{{z{zzz{z{zzz{{zzzzzzzzz{zzzzz{{zzz{{{z{{{{z{|{{{zz{z{zzzzz{zzzz{{{zzz{z{{{{|{{z{{|{{{{|{{{||{{{{||{{{{{{z{{{{{{{{{zz{{{{{{z{{{{|{{z{{|{{{{|||{||||{{{|||{{{{|{{{{{|{{{z{{{{{{|{zzz{z{{zz{z{{{z{z{||{zz||z{|z||z{{{|z{z{z|z{z{{{{z{z{z{{{{|{{z{{|{{{{|{{{{|{{{{||{{{{{{{{{{{{{{{{z{{{{{{zzzzzz{zzzzz{{zzz{{{{z{{{z{|{{{zz{{{zzz{z{zzzz{{{zzz{z{{{{|{{z{{|{{{{|{{{{||{{{||{{{{{{{{{{{{{{{{zz{{{{{zzzzzz{zzzzz{{{zz{{{{{z{{{{|{{{zz{{{zzzz{{zzzz{{{{zzzzz{z{{zz{z{{}{{z{}||{{{}|z|{}|{{{}|z{z{z|{{zz{{|{zz{{{{|{|{|{{{|{{z|{{||{z|{||{{|||{|{{|{|{{{|{|{|{{{{|{zzz{z{{zzzz{{{z{z{||{z{{||z{|{|z{{{|z{zzz|z{zz{{{zzz{z{{{{|{{z{{|{{{{|||{{||||{{||{{{{{|{{{{{|{{{z{{{{{{zzz{z{{zzzz{{{{{z{||{{{{||z{|{{{{{{|z{zz{|z{zz{{{{zzzzz{z{{zzzz{{{z{z{||{z{z||z{|{{{z{{|z{z{z|z{zz{{{zzz{{{|{|||{{{|||{|{|||{{||||{{||||{|{|{|{{{|{|{|{{{{|{{{{{{{|{{{{{||{{{||{{{|||{{{|||{{{{{{{{{{|{{{{{{{{{{zzz{z{{zzzz{{{{zz{|{{{{{|{z{|{|{z{{{{{z{{|zzz{{{{{zzzzz{zz{zzzz{{{zzz{|{{z{{|{z{|{|{z{{{{zz{z|zzzz{{{zzzzzz{zz{zzzz{{{zzz{|{{z{{|{z{|{|{z{{z{z{zz|zzz{{{{zzz{{|{|{{|{{{|{{{{{{{{||{{{{|||{{{||||{||||{{|}||{{{||{{{{{|{{{{{|{{{{z{{{{|{{z{{|{{{{|||{{||||{{||||{{{{|{{{{{{{{{z{{{{{zzz{z{{zzzz{{{{{z{{{{{{{{{z{|{{{z{{{{z{z{{{{{zz{{{zzzzzzzz{zzzzz{{{zz{{{{{z{{{z{|{{{zz{{{zzz{{{{zzz{{{zzzzzzzz{zzzzz{{{zz{{{{{z{{{z{|{{{zz{{{zzzz{{{zzz{{{zzyzzzzzzyyzzzz{zzyz{{{zzyz|z{{z|{zzz{zzzzz{zzyzz{{zzyzzyzzzyyzyzzzy{zzzy{zyyzy{zz{z{zzzz{zzzyyy{zzyy{z{yzyyzz{zzzzzzzzzzyzzzzzzzzzzzzyzzz{{yzzz{zzzzzzzz{zzzzzzzzzzzzzz{{zzzzy{{zzzy{{{z{{z{z|{{{zz{z{zzzz{zzzzz{|{zzzzyzzzzzyzyzzzzzyzzzz{zzzzzz{zzzzzzzzzzzzzzzyzzzz{zyzyyyzyzzzyzyzy{zzyy{{{zzyz{z{zz{zz{{{zzyyz{zzyyz{{zzyzyzzzz{zzzzz{yzzz{z{{zz{z{z|{z{{z{z{zzz{zzzzzzz{{zzzzzzzzz{{zzzz{{zzz{{{{zz{{|z{{z|{z{z{zzz{z{zzzz{|{zzzyyzzzzzzyzzzz{{zzz{{{zzzz{z{{z{zzzz{zzzzzz{zzzz{{{yzyzz{zzzzzz{zzzzz{zzzz{z{zzzyz{z{{z{zz{z{zzzzzz{zzzzyzzzzzzzzzz{{zzzz{{zzzy{{{z{{z{z|{{{zz{zzzzzz{zzzzz{|{zzzzyzzzzzzzzzzz{zzzz{{{zzzz{z{zz{zz{{{zzzzz{zzzzz{{zzzzyzzzz{zzzzzz{zzz{{{{zz{z{z|{z{{z{z{zzz{zzzzzzz{{zzzzzzzzzz{zzzzzz{zzz{{{zzz{|z|{{|{z{{{zzzz{{zzzz{{{zzzzzzzzz{{zzzzz{{{z{{{{zz{{{z{{z{zz{z{zzz{zz{zzz{|{{zzzz{zzzzzz{{zzzzz{{zzz{{{z{{z{z|{{{zz{{{zzzz{{zzzz{|{zzzzyzzzz{zzzzzz{zzzz{{{zz{z{{|{z{{z{z{zzz{zzzzzzz{{zzzzzzzzz{{yzzzz{{zyz{{{z{{{zz|{{z{zz{zzzzzzz{yzz{|{zyzzyzzzzzzzzyzzz{{zzz{{{zz{|z{{{|{zzz{zzzzz{{zzyz|{{zzzzz{z{z{{zzz{z{{{zz{{{{z{{{|{{{{{{{{z{zz{{{{z{{{{{{z{{zzzzzz{zzzzzz{{{zz{{{{{{z{z|{z{{z|{{zzz{z{{zzzz|{{zzzzzzzz{{zzzzz{{zzz{{{{z{{{{|{{{{z{z{{zz{{zzzzz{|{zzzzzzzzz{{yzzzz{{zzz{{{{z{{{z|{{{{zz{{zzzzzz{zzz{|{zyzzzzzzzz{zzzzzz{zzzz{{{zzz{{|z{{zz{z{zzzz{zzzzz{z{zzzzy{z{z{zz{z{z{z{z{{{}{{z{{}{{{}{{{{}{z{{zz{z{zz|{{zz{{z{{{{{{z{z{{{{{z{{{{{{{{{{{|{{{{|{{{{{{{{{{{{{|{{{{zzzzzz{{zzzzz{{{zz{{{{{{{{{z|{{{z{{{{zz{zz{zzz{|{{zzzzzzzz{{zzzzz{{{zz{{{{{z{{{z|{{{z{{{zzz{{z{zzz{{{{zzzyzzzz{zzzzzz{z{zz{z{{{z{z{z{{zzz{{{zzz{zz{zzzz{{{zzzz{|z{{{{z{{|{{{{z{||{{{{||{|{{|{|{|{|{z{|{{z|{|{{{z{z{{{{{{{{z{{{{{{{{{{{{{{{|{|{{|{{|{{{{{||{z{{{|{{z{zzzzzz{{zzzzz{{zzz{{{{z{{{|{|{{|{z|{{zzz{{zzzz{|{zzzzzzzzz{{zzzzz{{zzz{{{{z{{{|{|{{|{z{{zzzzz{zzzz{|{zzzzzzzzz{{zzzzz{{zzz{{{{z{{{|{|{{|{z{{zzzzz{zzzz{|{zzz{|{z{z{{z{{zyzzzz{zzzzzz{{zzz{{{{{z{{|{|{{|{z{{{{zz{{{{zzz{{zzz{z{z{{{{z{z{{{{{z{{{{{{{{{{{||{{{z{{{{z{{{{{z{z{|{z{zzzzzzz{zzzzzz{zzzz{{{zzz{{z|{{{{z{{{zzzz{{zzzz{{{zzzzzzzz{{zzzzz{{zzz{{{{z{{{{z{{{{{z{zz{zz{z{zzzz{|{zzzyzzzzzzyzzzzz{zzzz{z{zzzzzz{{zz{zzzzzzzzz{zzzzz{{zyyzzyzy{yyzzzy{{zzyz{{zzy{{z{z{zzz{{zzzzy{yzzyz{z{zzyzzyzyyyzyyzyzyz{yzzy{zzzyz{z{zz{zzzy{zzyyy{zzyyy{{yzyyyzyyy{zyzyyyzz{zzzzzzyzz{zz{z{zzzz{zzyyyz{zzyyzz{yyyyyyyyyyyyyyyzyyyyyzzyyyzzzzyzzyzyyyzyyyyyyzyyzyyyyzyzyzz{zzyzyz{zzzzz{zzzzyzz{z{zzzz{{zzzz{zzzzy{zzzzzzyzyzzzyzyzzyz{zyzzy{zzzzzz{zz{zy{{zzzzzzzyyzyz{{zyzyyzzyzz{yzzzyzz{{yyzz{{yzz{zz{z{zzzz{zzyzyz{zyzz{z{yzyzyzyyyzyzyzyzzzzzy{zzzyz{{zzz{zz{{{zzyyy{zzyyz{{yzzyzyzzzyzyzzzz{zzzzz{zzzy{{{zz{{zzz{{zzzzzzzzyy{{zzzzyzzzzy{zzzzz{{{zzz{{zzz{{{{{{z{z{{z{zzy{y{zzz{z{{yzyyzyzyyy{yzyzyzz{yzzzzyyzz{zz{z{zzzz{zzyyyz{zzyyzz{yyyyyyyyyyyyyyyzzyyyyzzzyyzzzzzzzzzzzzzyzyyyyzyyyyyyyzyzyzzz{zzzzz{zzzzz{zzzzzzz{z{zzzz{{zzzz{zzzzz{zzzzzzyzzzzzz{zzzzz{{{zzz{{{zzz{{z{{{z{{z{zzzzzz{zyz{{z{zzyzzzzyzyzzzzzzzzzzz{zzzzz{{zzz{zz{{{zzyzy{zzyzz{{yzyyyyyyy{yyyyzy{zyyy{{zzz{zzz{{zzzzzzzzyy{yzzyy{zzzyyyyzzyzyz{yzzzyzz{yzzzz{yz{zzz{{zzzzzzzzyzyz{zzzzzz{yzyzzzzzyzzyzzzz{{zzz{zzzz{{{{z{{zzz{{zzzzz{zzzy{{{yzyyyzzzy{{yzyzz{{z{z{{zzz{{{{z{z{z{{z{zzy{yz{zz{z{z{zzzzzzzz{{zzzzz{z{{z{z{{zzz{{z{z{zz{{{zzz{zz{zz{z{z{zzyzzzzzzyzzzzzz{zzzz{zzzzz{{zz{{z{{{{zzzzz{zzyz{{{yzyzyzyzz{yyzyzz{zzzyz{zzz{zzz{{zzzzzzzzzz{zzzyz{zzzzyzyzzzzyz{zzzzzzz{{zzz{{zz{{{{{{{zz{z{zzyzy{{zzzz{{{z{z{z{zzz{{z{z{z{z{{{z{z{z{{{z{{{{z{{{z{zzz{{{zz{{z{{{{zyzz{z{{zzz{z{{zzz{{{{{z{z{{{{z{zz{{{zz{{{{zzy{z{{zzzzzzzzz{zzzzzz{{zzzz{{zzz{{{{{{{z{{z{zzz{zzzzz{{{zzzyyyzyyyzyyyyzyz{zyyzz{zzzz{{zz{{z{{{{zyyzyyyyzzz{zyyzyzyyyy{{zzzzy{z{{zz{z{{z{z{{{z{zzz{{zzy{zz{zy{z{z{zz{z{zzy{{z{zzy{z{{zz{z{{z{{}z{{}{{z{}{zy{zz{z{{z{z{z{zzz{z{z{{zzz{z{{z{zz{{z{z{{z}{{z{{}{z{zz{zz{z{{z{z{zzyzzzzy{{zzzzy{{z{zz{{z{z{{z{z{{z{{{zzzy{yz{zz{z{z{zzyzyzzz{{zyzzz{{z{zz{{z{z{{z{z{{zzz{zzzz{zz{zy{{{z{zzzzzzzzzzzzzzzz{{zzzz{{zzz{{{{z{|{zz{{zzzz{zzzzz{{zz{z{z{z{z{{z{z{z{{{{{z{{{{z{{{{{{|{{{{{{zz{{{{zzz{{{{{z{{{{{{z{z{{{{{{z{{{{{{{{{{{{{{{{{{{{{{{{{zz{{{{zzzzzzzzzzzzzzzzzz{{zzzz{{{zz{{{{z{{z{{zzzzzzzzzzz{{zzzyzzzzzzzzyzzzzz{{zzzz{{{zz{{{{z{{z{{zzzzzzzzyzzz{zzyzz{zzzzzzzyzyzyyzzzyzyzzzzzzzz{zzzzz|{zzz|zz{{{zzyzz{zzyy{{zzzzzzzyy{zzzzzz{z{{zz{{{{z{{{z{{{{{zz{{{zy{z{{zz{{{zzzzzzzzzz{zzzzz{{z{zz{{z{z{{z{{{{zz{{{zzzz{zz{zzz{{{zzyzzzzzzyzzzzzz{zzzzz{zzzz{{|{z{{zz{{{zzzzzzzzyz{{zzyyyzyzy{yyzyzy{{zzyz{{zzz{{z{z{{zz{{zzzzy{yzzyy{z{zyyyzyzyzzyzyzyzy{yyzz{{zyzz{z{zz{{zz{{{zyzz{yyzzy{{zyzzyzyyyzyyzyzyyyzzyzzzzzyzzzzzzzzyyyyzzyyzyyzyyyzzyzzyyyyyy{zyzyyyz{yzzzz{zzzzzz{{zz{zz{yz{yyyyyyzyyz{zzzzzyyyyzzzyzyyyzzzzyzzzyyzzzzyzz{yzzyzzyyyyyzzyyzyzzyyyy{zyyzzyyyzyzzyz{yzzz{z{zzyyzz{z{zzzz{zzzzz{zyzyy{z{yzzyzzyzzzzzzzyyz{zzzy{{zyzzzz{zz{{zz{yzzyzz{yyyzz{{zz{yzyzyy{{yzyzyy{{zyzzz{{yzzzzy{z{zzzyz{yyzzy{yyzz{y{{yzyyyyy{yzyyyzz{zyzzzz{yzzzzy{{zyzzzzzyyzzy{yyzz{z{zyzzzzyzzzzzzzy{zzzz{{zzzz{z{zz{{zz{{{zyzz{yzzzy{{yzzyzyzyyy{zzyzyy{yzzzzzyzzzzzz{zz{yyyyz{yyyzyzzyyz{zzzzzzyyyyzzzzzyzzzzzzz{zyyzzz{zzz{zz{yzzyyyyyzzyyzyzzyyz{zyzzzzyyzzzzzz{zzzz{z{zzyzzz{z{z{zz{zzzzz{zyzyy{z{zz{yzzzzyz{{zzzzz{{zzz{{{{zzzz{y{{{zz{yz{yzz{y{yzz{{y{yyzzyyyzzzzzzyzzzyzzz{zyzzzz{zzz{zz{{zzyzzzyyzzzz{zy{yzyzyzyz{yzyzyz{zyzzzz{yzzzzz{{zzzzzzzzyzzy{yyzz{y{zyzzzzyz{zzzzzzy{zzz{{zzzz{z{{z{{zz{{{{yzz{zyzzy{{zzyz{{yzzzyyy{{zzyzz{{{z{z{{{zzzz{z{z{zz{zz{zz{zy{yz{z{y{yzzzzzzzzzzzzzzz{zzz{{zzzzzz{zz{{zz{{zzzzz{zyzzz{{zyyyzyzyzyyzyzzzy{yzzy{z{zy{zzz{{zzzzzzzzzz{zyyyy{zzyyzyzyyyyy{zyzyyyy{zzyyz{zzzzz{{zz{yz{zz{yyyyyyyyyz{zz{yzzzyyy{{zzzzyz{{zzzz{{zzzz{{{{{zz{zz{yyzzy{zyzz{z{{zz{zzyzz{zz{zzy{{z{z{{zzz{z{z{{{zz{{{zyzz{{{zzy{{z{{{zzz{zzz{zz{zzz{{{zz{{z{{z{z{{{{z{{z{{{zz{{{zzz{{z{zzzyzzzzzzzzzzzzz{{zzz{{{{zz{z{{{{{zz{zzzzz{{yzyz{{{yz{yzyyyyzz{zzyyz{z{zz{zzz{z{zzz{zzzzz{zzyz{zy{zz{z{z{{yzzzyyz{{yzzzz{{{zz{zz{{z{zz{{z{zzz{z{yz{zy{yz{z{z{{z{z{z{z{{z{z{z{{{{z{zz{{z{z{z{{}z{z{z{{z{zy{zz{z{z{{{z{z{z{zz{z{z{z{z{{z{{}{{z{{{}{{zz{}{z{{z{zz{zz{z{z{{yzyzyyzz{yzyzz{z{zz{{{z{z{{z{z{{zz{{zzyz{zz{yz{z{z{zz{zzzzy{zz{zzyz{z{zz{{{zz{{z{{z{{zzzz{zyzzzzzyzz{zzzz{zzzzz{zz{zzzz{z{zz{{{zz{{z{{z{{zzz{{zzzzzzzzzz{zz{{{{{z{{{{{{{{{z{{{{z{{{{{{{{{{{{{{{{{{{zz{{{zzzz{{{zzz{z{z{{z{z{z{{{zz{{{{{z{{{{|{{{{{{{{{z{{{{zz{{{{zzzzzzzzzz{zzzzzzz{zzzz{{{zzz{{|{z{{z{{z{zzz{zzzzz{{zzzzzzzz{zz{yzyzyyy{{yzyzyz{{zyzzz{{zzzzz{{z{zzyyz{yyzzy{yyz{z{zzzzzyyzzzzzzzzzzzzzzz{zzzzzz{zzz|zz{{zzyzzzzzzzz{zzzyzzzzzy{{zzzzz{{{zz{zz{{z{zzz{{{{zzz{z{zz{zzzzy{{zz{yzzzzzzz{zzzzzz{{zz{{{{{z{{{{{{{{z{{{{zzz{{{{yzz{{{yyzzyzyzzzzzzyzz{zyzz{|zzzz{z|zz{{zz{{{zyzz{zyzzz{{yzzzzzyzyzzzzzz{zzzzzz{z{zz{yz{z{|zzz{z{yzzzzz{zzz{zzzzyzyyyyyzyzyyzzzyzzzzzyzyzyzzzz{yyzzzzyyyzzyyyyz{zzzyyzyzyzyzyzzy{zzzy{z|zzz{{z{|z{{yzz{zzzzy{zzzyy{z{zzzzyyyyzzyzyyy{zzzyyz{zyzyzzz{zzzyzz{yzyyyyzzzyyyzzzzzzzyyzzzzyzzz{zzzzzz{zyzz{zz{y{{zzz{{{yzzzzz{zzz{zzyyzz{zzzzzyzzzzyzzy{zzzz{z{zzzyzzz{z{{zzz{zzyzz{zyzzy{{zzzyzyzyzzyzyzzy{zzyzzz|zyzzzz{|z{{yzz{zzzzzzzyyyzz{{zzzzzzzyzzzzzzz{zzzzzz{z{zz{yz{z{|zzz{z{yzzzzz{zzz{zzzyzyzyzyzzyzyyzzzyzzzzzzzyzzzzzz{yzzzzzzyyzzzzyyzzzzzzzzyyzyzzzzzy{zzzy{z|zyz{{z{|z{zyzz{zzzzy{zzzyy{z{zzzzzzyyzzzzzzz{zzzzzz{zyzz{zz{z{{zzz{{{yzzzzz{zzz{zzyzz{zzzzzyzyzzzzzy{zzzz{z{zzzzzzz{z{{zzz{zzzzz{zzzzy{{zz{zzzzyzz{z{zzz{{{zzzz|{{zzzz{|z{{zzz{z{zzzzzz{zzz{|{{zzyzyzy{z{yzyy{{yyzzz{{{z{zzz{z{yzzz{zzyyzzzzyyz{|{zzzzzzzzzzzzzzz{zzzzz{z{zz{zz{z{|zzz{z{zzzzzz{zzz{zzzzzzzyyzzzzzzzz{zzz{z|zyz{{z{|z{{zzz{{{zzz{zz{zz{{{zzz{{zzzzzzz{z{zzzz{{{z{z{{{zzzzz{z{{zzz{z{zzz{zz{zz{z|{zzzzzyzyzzzzzzz{zzzzz|zzzzzz{|z{{yzz{{{zzzzzzzyzz{{zzyzzzyzyzyzzzyy{zzzzzzzzzyzzz{zz{yzz{zzzyzzzzzyyz{zz{zzyzyzy{z{yzyy{{{yzzz{{{z{zz{{z{zzz{{zzyyzzzzyyz{|{{zzzzzzz{z{zzzz{{{zzzz{{{z{zz{{{|zzz{z{zzzzzz{zzz{|{zz{zzzzzzz{zzzz{z{zzzz{z{z{zz{z{{zzz{{|zzzz{z{zzz{{z{{zz{z{z{z{z{z{z{{{{z{{z{{z{z{z{{{{z{z{{{{z{{{zzz{{{{zzzzzzzyzzzzyyzz{{zzz{z|{zz{z{|{{{zzz{zzyzz{zzzzz{{{zzzzzzyyzzzzyzzz{zzzz{z{z{z{zzzz{{zzz{{{yzz{zz{zz{{{zzzzzzyzzzzzzzzz{zzzz{z{z{z{zzzz{{zzz{{{zzz{zz{zz{{{z{zzzzyzz{z{zzzz{{{zz{z{{{{{{zz{{{zzz{{{zzz{zz{zz{{|{{{{z{z{{{{{z{{z{{{{z{z{{{{{{{z{{|z{{{{|{{{{{{{{{{{|{{zzz{z{zzzzz{z{z}{z{z{{}{{z{{{{}{{{z{}{{z{z{zz{zz{{{z{z{zzyzz{z{zzzz{{{zzzz|{{{z{z{|{z|zzz{{zzzz{zzzzz{|{{z{zzzzz{z{zzzz{{{zzzz|{{{z{z{|{z|zzz{{zzzz{zzzzz{|{{z{zzzzz{z{zzzz{{{zzzz|{{{z{z{|{z|zzz{|zzzz{zzzzz{|{{{{z{z{{{{{z{{{{{{{{zz|{{{z{{{|{{|z{{{|{{zz||{{zz{|{{z{z|z|z{z|z|z{|||z{{{||{{{{|{|{{|{|{|{|z{{|{zz{{{|{z{z{{z{z{{zzzzyzyzyzzzyzyyzzzyzzzzzzzyzzzzzz{yzzzzzzyyzzzzyz{{z{zzzzyzz{z{zzzz{{{zzzz{{{{zzzz{{{{zzzzz{zzyzzz{zz{|{zzzzzzzyzzzzzyz{zzzzzz{zzzzzzz{zz{zzz{{{zyzzzzzyz{{z{{{zzzzz{{{zzzzz{{zz{z{{{{{{zz{{{|zzzz{zzzz{{zzzz{|{zzzzzzyzzzzzzzz{{zzzz{|{{z{{z{|{{|zz{{{{yzz{zz{zzz{{zyyyyyzy{yzyyzz{yzzzzzzzyzyz{zz{zyyzzzyyyyz{yyyyzzzzzzzyzz{z{zzzz||{zzzz||zzzzzz||z{zzzz|{{zzzz{yzzzzz{{zzzyyyzz{zzyy{z{zzzz{zzzy{zz{zz{zyzz{zyyyzz|yzyyz{zz{|zzzzz{|z{zz{z{z{{z{zz|z{zz{z{|zzzz{zzzzz{{{{zz{{zzz{z{{z{z{z{zz{{{z{zz{{z{z{{z{{z|{z{z{{z{zzz|zzzzz{{zyzy{{yzyzyyzz{zzyz{z{yzzz{zzzzzyz{z{{zyzz{zzyyzz|yyyzz{zzz{zzyzzz{yzzz{z{zzzz{z{{zzzz{z{{{zzz{zzzzzz{yyzzzz{zyzyzyyyzzyyyyzz{yzzz{zzzyzyzzzz{zyyzzzyyyyz{yzyyzz{zzzzzyzz{zzzzz||{zzzz||zzzzzz||z{zzzz|{{zzzz{yzzzzzz{{|z{zzzz{|{zz{z{z{{z{zz|z{zz{z{|zzzz{zzzzz{|{{zz{{zzz{z{zzz{z{zzz{{{z{zz{{z{z{{z{{z|{z{z{{z{zzz|zzzzz{{zzz{{zzzzyzzzz{zzz{z{zzzz{zzzzzzz{z{{zzzz{zzzzzz|yzzzz{{z{|z{zzzz{|z{zzz|z{{z{z||zzzz{z{{zzzzz{zzzz{{{{zz{zzzz{zzyzzzz{yzzz{{zzzz{z{{zzzz{z{{{zzz{zzzzzz{yyzzzz{z{|z{zzz{{|z{zz||z{{z||z|z{zz||{|zzzz|{{zzz{{{{zz{{z{z{z{z{z{z{z{z{{{{{zz{{z{z{{z{{z|{z{z{{z{z{z|zzz{z{{zz{{z{z{yzz{z{z{zz{{{z{z{{{{zzzz{{{{{zzz{{zzzzz|yzzzz{zzzzzzzzzzz{zzzz{z{zzz{zzzy{zz{z{|{zzz{zyzzzz{zzzzz{zz{|z{zzzz{|z{zz{z|z{{zz||zzzz{z{{zzzz{{zzzz{{{{zz{zzzz{zzyzzzz{zzzz{{{zzzz{{{zzzz{z{{{zzz{zzzzzz{yzzzzz{z{|z{zzz{{|z{zz{{|z{{z{{|z{zz{{{|{zzz{{zzzz{{{{zz{{{zz{z{z{z{z{z{zz||{z{zz||zz{{z||z|{z{z|{{{z{z|zzz{z{{{{{{|z{zzz{{|z{zz|||z{{z||||zzz||{{zzzz|{{zzz{|{{zz{{z{z{z{yzz{z{z{zz||{z{zz||z{z{z{zz{zzzz|{{zzzz|yzzzz{{{z{z{zzz{z{z{zz||{z{zz||z{z{z{z{|{zzz|{{zzzz|zzzzz{z{{|z{zzz{{|z{zz|||z{{z||||z{zzz{{zzzz|{{zzz{|{{zz{{{{z{z{yzz{z{z{zz||{z{zz||{{z{zz|{{{zzz|{{zzzz|yzzzz{{{{|{|z|{{{|z|{||||{|z{||{|z{|{|||{{|{|{{|{|{|{z{|{{{{{z{z{zzz{z{z{zz||{z{zz||{{z|{z||{|z{z|{{zz{z|zzzzz|{{z{z{z{z{z{z{zz{{{zzzz{{{{z{{z{{{|{{z{z{{zzz|zzzzz{{zz{z{z{z{z{z{zz{{{zzzz{{{{z{{z{{{|{zz{z{zzzz|zzzzz{{zz{z{z{z{z{z{zz{{{zzzz{{{{z{{z{{{|{z{{z{{zzz|zzzzz{{z{|z{z{z{{|z{zz{{|z{{z{{||z{{z{{{|{z{z{{{zz{|{{zz{{{z{|z|z|{{{|z|{||{|{|{z|{||{{|z|{{|{z|{|{|{|{|{{{|{{{{zzz{{zz{{{{{{{{zzzzzyyzz{zzyz{z{zzzz{zzzz{zz{z{|{zzz{{zyyzz{zzzzzzzzzzzzzzzz{zzzz{z{zzzz{zzzz{zz{z{|{zzzz{zzzzz{zzzzz{zz{z{zzz{z{z{zz{{{z{zz{{{{z{zz{{{|{zzz{{zzzzz{zzzzz{z{|z{zzz{{|z{zz|||z{{z||||z{zz||{|{zzz|{{zzz{{{{zz{{{{|{{zzz{{|{{zz{{|{{{z{{||{|{z{{{|{z{z{{{zz{{|{{zz{|{{|{|z|{{|{|z|{||{||{|{{|{||{||{|{||{{|{|{|~|{|{|}|{|{|{~~|zyzyz{{|{|zzyz{{||{z{{{{||y|z{{{|{{zz{{{||z{z{|}z{z{|{}z||||{||}|||{||||}|||||||}|||||||}|{{||||}|}|||||}{||||{}z|{||z|{{|{|z|{||{||{|{{|{||y||{|{|{{{|{|{|||{|{|}{{|{|{}{|{|{z{{{|{|z{{{{{||{{{{{{||z|{{{{|{{{{{{{||{{{{|}z{{{|{}z}{}{}}{{}{}{z{}}{}}{}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}~||||{|}~||{|{|}}~|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~z{|{||{}z}z}z}z}z}z}}{}}{}{{}{}}z|}{}{}}{z}{}{||}{}{|}{{}{|{}z~{|{|z|{{{|z|{||{||{|{{|{||{||{|{||{{|{|{|~|{|{|}|{|{|{~~|{|zzzzz{|{yzyz{{||{z{{{{||y|z{{{|{{zz{{{||z{z{|}z{z{|{}z|||||{||}||{||||}|||||||}|||||||}|{{||||}|}|||||}{||||{}z|{|{|z|{{|{||{||{||{|{{|{||z||{|{|{{{|{|{|||{|{|}{{|{|{}{}{}{}z}{{}{}{{}}{}}{}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}~||||{||}~||{||}}~|||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~{|{||{|{{z{zz|{|{{zzz||{{{z{z||zz{z{z|{zz{zz{{|{zz{{{zzz{z{|z|z}z}z}z{}z}z}z}}}}{}{z}z}}z|}z}z}}{z}z}z||}z}{|{{z}{|{}z~{|{|z|{{~{|z|{||{|{|{{|{||{{|{|{||{{|{|{{~|{|{|{|{|{{{~~|||||{||}|||{||||}||||||}|||||||}|{{||||}|}|||||}{||||{}z}{}{}z}{{}{}{}{}}{}}}{{}{}|{|}{}{}}{{}{}{|}}{}{|}|{}{|{}}~||||{||}~||{|||}}~||||}}~|{|||}}~|}|||}}~~||||}}}||||}~~|{||{|{|z|{{|{|z|{||{||{|{{z|{z||{|{|{{{|{|{|||{|{|}{{|{|{}z|{|{|z|{{|{|{|{||{||{|{{z||z||{|{|{{{|{|{|||{|{|}{{|{|{}z|{}{}z}{{}{}z}{}}{}}{}{{}}}z|}{}{}}{{}{}{||}{}{|}{{}{|{}z~{|{|z|{{~{|z|{||{~|{|{{|{|{||{|{||{{|{|{|~|{|{|}|{|{|{~~}|}|}{}|}}|}{}|}}}}}|}||}}}||}|}}}}{|}|}}|}}|}||}||}||{}}~||||{||}~||{|||}}~|||||}}~||||}}~|}|||}}~~||||}}}||||}~~{}|||||{||}|||{||||}|||||||}|||{z{z|{{||||}{}|||||}{||||{}{|||||{||}|||{||||}|||||||}|||{|{z|{{||||}|}|||||}{||||{}{|||||{||}|||{||||}|||||||}||||||{|{{||||}|}|||||}{||||{}{||}|}{}|}}|}{}|}}}}}|}||}}}}||}|}}}{|}|}}|}}|}||}{|}||{}{~||||{||}~||{||||}~||||||}~||||||}|{||||}|~|||||}|||||{~~~}|}|||}}~}|||}|}}~|}|}}}}~|}||}}}~}}|}}}~~|}|}}}}}|}|}~~}}{|{|z|{{}{|z|{||{}|{|{{|{}|{{|{|{}|{|z|z|}|{|{|}|{|{{{}}}{|{|z|{{}{|z|{||{}|{|{{|{}|{||{|{}|{{{|{|}|{|{|}|{|{|{}}}{|{|z|{{}{|z|{||{}|{|{{|{}|{||{|{}|{{||{|}|{|{|}|{|{|{}}}{|{|z|{{}{|{|{||{}|{|{{|{}|{||{|{}|{{|{{|}|{|{|}|{|{|{}}}{}{}z}{{}{}z}{}}{}}{}{{}{}}{|}{}{}}{{}{}|}}{}{|}|{}{|{}}~|}|}{}|}~|}{}|}}}~}|}||}}~}||}|}}~}||}|}}~}|}|}}}|}|||~~{z{|}zz{|}{{|}{|}{}|}|{|{{z{z{|{|{{zz{{||{z{{{{||z|{{{{|{{z{z{{||{zz{|}{z{|{}{|{|{{z{{{|{|{{{z{{||{z{{{{|{z|{{{{|{{{{{{{||{{z{|}{{{|{}{|{|{|z|{{|{|{|{||{||{|{{|{||z||{|{|{{{|{|{|||{|z|}z{||{}{}||||{||}}||{||||}}||||||}}||{|||}}|{||||}|}||||{}||||{}}||}{}{}{{}|}{}{}}{}}{}{{}{}}{|}{}{}}{{}{}{||}{}{|}|{}{|}|~~}|}{}~{~~}|}~}}{~}~}~{}{~}~|}{}~~}{{}~}~~~}~}~|}|~}~|{~{{{|}z||}|}|}|{|}|~|}||~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}{|}|~|}{}|~}}|{~}|{}|~}|}||z}|}|}~}|}|}z||}|}|z}|{}|}{{{{{{{{{{{{|{{{{||{{{{||{|{|||{{}|||{{{z||{{{{z}|{{{{{{{{{|{{{{{||{{{z||{{||||{|||||{{}|||{{{z||{{{{z}|{{{{{z{{{|{{{{{{|{{{|||{{||||{|||||{{}|||{{{z||{{{{z}|{{{{{z{|{||{{{|||{|{|||{{||||{|||||{|}|||{|{z||{|{|~}|{{|{{{|}z|{|}|}|}{|}|~|}||~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}{}|}|~|}}|~}}|{~}|{}|~}|}||{}|}|}~}|}|}z||}|}|z}|{}|}{{{{{{{{{{{{|{{{{||{{{z||{|{|||{{}|||{{{z||{{{{z}|{{{{{{{{{{|{{{{||{{{{||{{||||{|||||{{}|||{{{z||{{{{z}|{{{{{{{|{|~|{{{||{|{|||{{||||{|||||{|}|||{|{z||{|{|~}|{{|{{{{{{{||{{{{|{|{|||{{||||{|||||{{}|||{{{~||{|{{|}|{{|{{|}z|{|}|}|{|{|}|~|||~}}|}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}{}|}|~|}{}|~}}|~}|{}|~}|}|||}|}|}~}|}|}z||}|}|z}|{}|}{{{|{|~|{{{|~{{|{{|{{||{|{|||{|{|}|{|{|{z|{z|{|~}|{{|{{z{{{{||{{{{|~{|{||{{||{|{|||{|z{}|{|{{{~||z|z{|}|{{|{}{}{}|~|}{}|~}}|}~}{}|~}{}||~}{}{}~}{}{}{|{}|}{z}|{}|}|}{|{|}|}|}|{|}|~|}||~}}}|~}||}|~}|}~|~}|}|~~}|}|}|~|}|}|}{}|}|~|}{}|~~}|}~~|{}~~|}||}~|}|}~~|}|}z~|}|}|{}|{}|}|{||||~||{||~||||~||{||||||||||||}||||||{||||||~}|{|||{{{{{{||{{{{|~{|{|~|{{|||{|||||{{}|||{{{~||{|{{|}|{{|{}{}{}|~|}{}|~}}|}~}|{}|~}}||~}|}{}~}|}{}{||}|}{z}|{}|}{{{{{{|{{{{{||{{{|||{{||{{|||||{{}|||{{{z||{{{{z}|{{{{}z}{}}}}}}}{}}}~}}}}~}{}}}~}}|}~}}}~|~}}}}~~}}}}}|~|}}}}}{}|}|~|}{}|~}}|}~}|{}|~}|}||}|}|}~}|}|}z||}|}|~}|{}|}|{|{|{|||{|{|~||||~|{|||~|||||||{}||||{|~|||||{|}|{|||}{}{}|~|}{}|~}}|}~}|{}|~}|}||~}}{}~}|}{}{||}|}{{}|{}|}|{|{|{|{|{|{|||{||||{|||||||||{{{}||||{|z|||{|{{}|{|{||{|{|{|{|{|{|||{||||{|||||||||{{{}||||{|z|||{|{{}|{|{|}}{}~}~~~}{}~~~}~}~~~~}~~~~}|~~~~}~~~~}~}~~~}~}~~~|~}~}}{}|}|}|}{}|}~}|}}~|{}|}~|}||}~|}|}||}|}~~|}|}||}|{}|}}{}|}|~|}{}|~~}|}~~|{}|~~|}||~~|}|}~}}|}{~|}|}|{}|{}|}}{}|}|}|}{}|}~}|}}~|{}|}~|}||}~|}|}||||}z~|}|}|z}|{}|}}{}|}|}|}{}|}~}|}}~|{}|}~|}||}~|}|}|{|{}z~|}|}|z}|{}|}}{}|}|}|}{}|}~}|}}~|{}|}~|}||}~|}|}|{|{|z~|}|}|z}|{}|}}{}~}~~~}{}~~~}~}~~~~}~~~~}|~~~~}~~~~~}~}~~}~}~~~|~}~}}{}}}}~}}{}}~}}}}~}}}}}~}}}|}~}}}}~~}}}}}||}}}}~~|{}}}|{|}|}~}|{|}~||}|~|}}|}~|}||}~|}|}~~|}|}|||}}|}~~|}|}||{|}|}~}|{|}~||}|~|}}|}~|}||}~|}|}~~|}|}|||}||}~~|}|{||{|}|}~}|{|}~||}|~|}}|}~|}||}~|}|}~~|}|}|||}|}}~~|}|}||{|}|}~}|{|}~||}|~|}}|}~|}||}~|}|}~~|}|}|||}|}|~~|}|}|}|}{}|{}|{{}|{{{}|{{{z{{{z{|zzz{{{|{zz{|||{{{||{{|{||{{}}||z{{z{zzz{z|{|{zzzz{{{z{{|{|z}|{z{|z}{|zz}|{{|z}|{{|z}|{|}}||{|{||{|{|}}{{{|{zzzzzz|zzzzzz|zzzz|zzzzz|{z{{z|{zz|{{zzzzz{zzzzz|zzzzz{z{||{||{z{z{|{|{z|||{|{||{{|{||{|}}|{{|{{{z|{|z|{|{|{{z{z{{|z{z{zz|{z{{|||{{{||{{|{|{{z}}||zz{z{zz{zz|{|{z{{z{}{}|}{z{}{}{}{{}}|{}{}}{{|{}}{}}}|}{}{z}z}z}z|{|{}z{{{|{|{|{{{|{|{|{{|||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{{z{{{z{|{z{{{|{z{{|||{z{||{{|{||{{}}|{{{{z{zz{{z|{|{z{z{|}z{{{|{|z}|{{|z}{|zz}|{{|z}|{{|z}|{|}}||{|{||{|{|}}{{{|{zzzzzzz|zzzzz|zzzz|{{zzz|{z{{z|{zz|{|{zzzz{zzzzz|{{zzz{z{|{|{||{z{{|{|{z|||{|{||{{|{||{|}}|{{|{{{z|{|z|{|{|{{z{}{}{|}{z{}}{}{{}}|{}{}}{{|{}}{}}}|}{}{z}z}{}z|{|{}{{{{|{|{~|{{{|{{|{{|||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{{z{|{|{||{z{|{||{{|||z|{||{{|{||{|}}||{|{{{z|{|{|{|{|{{|}z{{{|{|{}|{{{|{}{|{}||{|z}|{{|{}|{|}}||{|{||{|{|}}{|{|{{z{}{}{|}{z{}{}{}{}}|{}{}}{{|{}}{}}}|}{}{{}z}{}z|{|{}{{{{|{|{~|{{{|{~{|{{||{|{||{{|{||{|~}||{|{||{|{|~~{|{|{|z||||}|||z||}||||}||||}|||{|}||||}}|||||{{||||z}{|||||{||||}}||{||}}|||}}|||}}||{{}}|||}}|||||||||||}}{{||||}{{{{|{|{}|{{{|{}{|{{}||{{}|{{|{}|{|}}||{|{||{|{|}}{|{|{|z|}|}}|}|z|}}}|}|}}}||}}}|{|}}}|}}}|}|}|{}|}|}{}{||}|{{{|{|{~|{{{|{~{|{{~||{|{|{{|{||{|~}||{|{||{|{|~~{|{|{|z||||}|||z||}||||}|||||}||{|}||||}}|||||{{||||z}{||||{z{|{|{||{z{|{|{|{{|||{|{||{||||{|}}||{|{{{z|{|{|{|{|{|z|}|}||}|{|}|}|}||}}||}|}}|||}}|}}}|}|}||}|}|}||{||}|}|{{{}{}{}}{{{}{}{}{{}}|{}{}}{{|}}{}}}|}{}{|}{}{}}}{|{}{|{||||}~||{||}~|||}~||||}~||{|}|||~}|||||||||||~~{|||||z||||}|||z||}||||}|||||}|||{|}|||}}|||||{{||||z}{||||{z{|{|{||{z{|{|{|{{|||{|{||{{|||||}}||{|{{{z|{|{|{|{|{{z{{{{{|{{z{{{|{{{{|||{{{||{{|{||{}}||{{{z{z{{{z|{|{{{~{~}~}~~}~{~}~~~}~~~}|~}~~}~{|~~}~}}~}~}~|}~}~}~~{|~}~}|||}|}}~}|||}}~|}|}~}||}}~}||}}~}|}~}}|}|}}|}|}~~|||}||{|}|}}}}|{|}}}|}|}}}||}}}}|{|}}}|}}}||}||}|}|}}}{||}|{{{}{}{}}{{{}{}{}{{}}|{}{}}{{||}}{}}}||}{|}{}{}}}{|{}{{{{}{}{}}{{{}{}{}{{}}|{}{}}{{|{}}{}}}||{{|}{}{}}}{|{}{{{{}{}{}}{{{}{}{}{{}}|{}{}}{{|{}}{}}}||{z|}{}{}}}{|{}{}|}|}|}~|}|}|}~}|}}~||}}}~|}}}}~|}|~}~|}|}}}|}|~~}|}|}||||||}~|||||}~|||}~|||}}~||}}}~|||~}~||||}||||~~}|||||{||||}~|||||}~|||}~|||}}~||}}}~|||~}~||||}|{||~~}|||||{||||}~|||||}~|||}~|||}}~||}}}~|||~}~||||}|{||~~}|||||{||||}~|||||}~|||}~|||}}~||}}}~|||~}~||||}|{|{~~}||||}}{|{||{|{|{|{z{z{z{z{{z{z{z{|{{zz{|{|{z{|{|}|{|{{|}|z{zzzz{z{{|z}|{zzzzzzz{zzyzzz{zzzzz{z{zzz{z{z{z{z{zz}|{zzzzzzzz{zzzzzzyyzz{zzzzzzz{zzzyzz{{zzzz{{zzzz{{zz{zz{zz{{zzzzzzzzzzzzzzzzz{{{{{|}{{{{z|}{{{{y}{{{||z{{|||}z{{|}|{{{zzz{{{}z|{{{{{z{{{|{{{{{{z{|{{{|z|{{{|{z{|||{|{{|}|z{{|zzz{{{zz{{{{z{z{z{{{z{z{z{||{zz{|}|{z{|{|}|{|{{|}|{{zzzz{z{{|z}|{z{z{{{{z{{{{{|{z{{{|{}{{{|{}{|||{}{{|}|{{{zz{z{z{zz{{{{{{{{{{|{{{{{|{|{{{|{|{|{|{|{|}|{|{{|}|{{{|zz{{{{|z}|{{zzz{z{z{{{z{z{|{{zz{|{{{z{|{|||{z{{|}|{{zzzzzz{{zz{{{zy{z{zzzzzzzz{zzzzz{|zzzz{|{zzy{|zz{zz|zz{{zzzzzzzzzzzzz{zzz{{{{{{|}{{{{|}{{{{z}{{{||z{{|||}z{{|}{{{{zzz{{{}z|{{{{{{{{{{|{{{{{{{||{{|{|}|{|{|{|}|{|{{|}|z{{|zz{{{{|z}|{{{z{{{{z{{{{{{||{{{|{}{{{|{}{|||{}{{|}|{z{zz{z{{{zz{{{{zzz{z{{{{z{z{{{{{z{{|{{{{{|z~||{|{{~}|{{zzzz{z{{~~{{{z{{{{{{|}{{{{{|}|{{|}|{|||}|{|}|}|{{|}|{{{zzz{{{}||}|{{{z{{{{|{{{{{{|{|{{|{|{{z|{|{|||{|{{|}|{{{|zzz{{{zz{{{{{|}z{{{{{{|}{{{{{|}||{{}|}|||{|{|}|}|{{|}|{{{zzz{{{}||}|{{{z{{{{|{{{{{{|{|{{{|}{{{|{}{|||{}{{|}|{{{|z{z{{{zz{{{{zzz{z{{{{z{z{{{~{{z{{{{{{{|{~||{|z{~}|{{zzzz{z{{~~{{{z{{{{{{z{{{{{{|{||{{|{}|{|{}{{}|{}{{|}|{{{zz{{{{{|z}|{{{{{{{{|}{{{{{|}{{{{|}{{||}{{||z}{{{|}|{{{zzz{{{}z|{{{{|}zz{z{z{{{{z{z{{{||{z{{|}|{{|{|}|{|{{|}|z{zzzz{z{{|z}|{z{{{{{{|}{{{{{|}|{{{|}}{{||}{|||}}{{|}|{{{zz{{{{}z|{{{{{z{{{{|{{{{{{|{~{{{|{~{{{|{{~||{|{{~}|z{{|zz{{{{~~{{{{{{{{{{|}{{{{{|}|{{{|}|{{||}||||}|{{|}|{{{zzz{{{}z|{{{{z{z{z{z{{z{z{z{~|{zz{~}|{z{~{}|{~{{|}~{{zzzz{z{{~~}|{z{z{|{|z{|{z{||||||{||}{||||}{{||}{||}|{|{z|||{|{|z{||{}z{z{{{{|{{{{{{|{|{{{|{}{{{|{}{|||}{{|}|{{{||{{{{{z|{{{{{{{{{{|}{{{{{|}~{{{|}~{{||}~{~||}{{~}|{{{zzz{{{}~~{{{{{{{{{{|}{{{{{|}|{{{|}|{{||}|{|||}|{|}|{{{zzz{{{}z|{{{{{z{{{{|{{{{{{|{|{{{|{|{{{|{|{|||{|{|}|{{{|zzz{{{zz{{{{{{{~{~{{~{{{~|~~|~{|~~}|~|~~|~}|~~|~}~|~{zz{~{~{~~}|~{}{{{{{{|}{{{{{|}~{{{|}~{{~|}~{~~|}~{{~}{{{{{{{{{}~~{{{{{{{{{{|}{{{{{|}|{{{|}}{{||}}{|||}}{{|}|{{|z{{{{}z|{{{{{z{{{{|{{{{{{|{|{{{|{}{{{|{}{|||{}{{|}|{{|z{{{{{zz{{{{{z{{{{{{{{{{{|{|{{{|{}{{{|{}{|||{}{{|}|{{zz{{{{{zz{{{{|{|}|}|}}|}|}|}~|}||}~}|}|}~|~}|}~|}~}~|}|||}|}}~~}|}||{|}|}|}}|{|}|}~|}||}~}|}|}~|~}|}~|}~}~|}|||}|}}~~}|}||{|{|{|}{|{|{|}~|{||}~}|||}~|~}|}~|{~}~|{|||||{}~~}|{||{|{|{|}{|{|{|}~|{||}~}|||}~|~}|}~|{~}~|{||||{{}~~}|{{|{|{|{|}{|{|{|}~|{||}~}|||}~|~}|}~|{~}~|{||||{|}~~}|{||||{z{{z{{{z{z{z{|z{z{z{|{{|{{|{||{|{|{||{|{||||}||{{|z|{z|{zz{|{{{z{z{z|zz{z{z{}z{{z{|zy|{z{|{}|{|zz|}|z{{zyz{zz{|z}|{zzzzyzzzzzzzzz{{zzzz{zz{zzz{z{zz{z{zz}|{zzzzzzzz{zzzzzyyyyyyzzyyyyzzzzzyzzzzzzzyzzz{zzzzyyz{zzyzzzyzyzzzzzyyzzzzzzzzzzzzzz{{zzzz{z{{{zz{{{{zz{z{|}zzzz{{zzzzz{{{zz{z{z{{|z{z{zy|}{z{{z}z|{{{|z{|{|}zzz|}|z{{zzy{z|}z|{z{{z{z{z||{z{z{z{{|{{|{||{|{|{||{|{||||}||{{|z|{z|{zz{|{{z{z{z{|{z{z{z{}|{{z{||}|{z{||}|{|zz|}|z{{zzz{zz{|z}|{{z{z{z{|{z{z{|}{|{{|}||{|{|}||{|}||{|}||{{{{|{z|}{|{|{{z{z{z{||z{z{|{}z{{|{||{|{|{||}|{|z||}|z{{|zz{z|{|z}|{zzzzzzzzzzzzzz{{zzzz{z|{zzz{z|zz{z{zz}|{zzzzzzzz{zzzzzyyyyyyyzzyyyzzzzzzzzzzzzzyzzz{zzzzzzzzzzyzzzzzyzyzzzzyzzzzzzzzzzzzzz{{zzzz{|{{{zz{|{{zz|z{|}zzzz{{zzzzz{{{zz{z{z{z{||{z{z|}{|{{z}||{|{|{||{|}||z|}||{{zz|{z|}z|{|{{z{z{z{||{z{z{{}|{{|{||}|{|{||}|{|z||}|z{{|zz{z|{|z}|{{z{z{z{zz{z{z{z{z{{|{z|{|{|{}}{|{}zz|}|zz{zzzzzz{zz{z{{z{z{z{z|{z{z{z{|{{|{|{{|{|{}}{|{}|{|}||{zz{|{zz{z{{|{{z{z{z{||{z{z{|}}{{|}||{|{|}||}|}|z{|}|z{{{{z{z|}||}|{{z{z{z{|z{z{z{|{{z{|{||{{z|{||{|{|{||}|{{{|zzzz|{zz{zz{z{z{z{z|{z{z{z{{|{z{||{|zz{||{|{||{|}||{z{{|{zz{{{{|{{z{z{z{||{z{z{|}}|{{}||}|{|{||}|}|zz|}|z{{zzz{z|}||}|{{z{z{z{|z{z{z{|{{z{{|||{|{|{}}{|{}z||}|z{{|zzzz|{zz{zz{z{z{z{zz{z{z{z{{z{{z{~{{{z{|~{|{|z{~}|zz{{{zzzz{~~{z{{z{z{z{z|{z{z{z{{|{{z{~{|{z{~|{|{~|z|}~|{zzz|{zz{~~{|{{z{z{z{z|{z{z{z{}|{{|{|{|{|{}}}|{}z{|}|z{{z{z{zz{|{}|{{z{z{z{|z{z{z{|}{z{{|}z|{{|}{|{z}{{{|}|{{{{{z{z|}{|{z{|}z{z{z{z{z|{z{z{z{}|{{z{||}|{{||}|{|z{|}|z{{{{z{zz{|{}|{{z{z{z{|z{z{z{|}{z{{|}z|{|{|}}{|}}zz|}|z{{zzz{z|}z|{z{{z{z{z{|z{z{z{|{{z{{|{~~{{{|{~{|{|z|~}|z{{|{zzz|{~~{zz{z{z{z{z|{z{z{z{}|{{z{~~}|{z{~}|{~{z|}~{{{zzz{zz{~~}|{|z|z|z{z||z|z|z{{|||||||{||||}}||}|z|}|||zz|||zz{|z{||}{{z{z|z||z{z|{||{{z|||{||||||{}}||}z||}|z{|||zzz|{{|{zz{z{z{z{|z{z{z{|}{z{{|}~~{{{|}~~{|}z{~}|z{{{{z{z|}~~{z{{z{z{z{|z{z{z{|}{z{{|}||{{{|}||{|}|z|}|z{{zzz{z|}z|{z{{z{z{z{z|{z{z{z{}|{{|{||}|{|{}}}|{}||}||{{{{|{zz{|z}|{~z~z~z{z|~z~z~z{}|~~|~~~}|~|~~~}|~~|{}~{~{{{z~zz{~~}|~}{{{{~{~|z{{~{~|}{z~~|}~~~|~|}~~~|}~{{~}{{~{{z{{|}~~{z{{z{z{z{|z{z{z{|}{z{{|}||{|{|}}}{|}}z||}|{{|{z{z|}{|{z{{z{z{z{|z{z{z{|{{z{{|{||{|{|{}}{|{}z||}|z{|{zzz|{{{{z{{|{|{|{||{|{|{|}}|{{|}~~}|{|}~~}|}~||~}~|{|||{||}~~}|{}|}|}|}||}|}|}|}}|}}|}~~}|}|}~~}|}~||~}~|}}||}||}~~}|}}{}|}|}||}|}|}|}}|}}|}~~}|}|}~~}|}~||~}~|}}||}||}~~}|}{{{|{|{||{|{|{|}}|{{|}~~}|{|}~~}|}~||~}~|{{|||||}~~}|{{{{|{|{||{|{|{|}}|{{|}~~}|{|}~~}|}~||~}~|{{|||{|}~~}|{{||||{z{z{z{z{z{{z{z{z{||{zz{|}|{z{|}|z|{|}|{z|}|zz{zzz{{|}z|{z|{{zzz{{z{{{z{z|z|{{z{z{|{{{|z|{|{|{z|}||zyyz|{zz{zz{||{{zzz{}|y{{z{zz}y{{z{{z|{{{|zz}|{|{z|}|zz{yzz{{z{|z}|zzzzyyzzzzyzzzzzzzzzzzzzyzzzzzzzzz{yzzz{{yzzzzzzzzzzzzyyyz{zzzzzzzz{zzzzzzzz{zzzz{z{zzz{z{z{zz{z{|}zzzzzzzzzzzzz{zz{z{z{{{z{z{z{||{zz{z}|{z{|{|z|{|}|{z|}|zz{zzz{{|}z|{z|{{{z{z{|{{{z{z|{|{{|{|{|{|{|||{|{|{||}||z{|z|{{|{zz{|z{z{zzz{z{}{z{zz{|}{z{}{|{|{|z}{|{}zz|}|zzzzzz{{z{zz{z|{{{z{z{{{{{z{||{|{{|}|{|{|}|z|{|}|{z|}||z{zz|{{|}z|{||{{{zzz{}|{{z{zz}y{{z{{z|{{{|zz}|{|{zz}|zz{zzz{{z{|z}|zzzzzyzzzzzzzzz|zzzzzz|zyzzzzz|zzz{zzz{{{zzzzzzzzzzzzzyyzzzz{z{zzz{{z{z{{z|{zz{z{|{z{{{|{z{|{|{{|}|zzzzzz{{z{zz{z|{{{z{z{{|{{{z||{|{{z}|{|{|{|z|{|}|{z|}||z{zz|{{|}z|{||{{{z{z{}|{{{z{|}|{{|{|}|{|{|||}|{|{||}|{z{|{{{{|{|{}|z{z{zzz{{z{z{z{z{zz{z{|{z{{{~z|{|{~zz|}~{zzz{{{{z{~~{z|{{{zzz{{|{}{z{z||}{z{}{|{|{|z}{|{}{z|}||zzzz|{zz{zz{||{{{z{z{}|{{{z{||}{{|}|{|{|}|z|}|}|{z|}|zz{zzz{{|}||}|{|}z|{{{zzz{{|{{{z{z|{|{z{|{|z{{|{|{|{|{{|}||zzzz|{zz{zz{||{{{z{z{}|{{{z{||}|{{}|}|{|{|z|}|}|{z|}|{z{z{{{{|}||}|zzz{z{z{{z{}{z{||{|}{|}{|{|{z|}{|{}{||}|zz{|zzz{|{zz{z|{{{zzz{{|{{{z{z~{|{{z{{|{{{~z|{|{~{z|}~|zzz{|{zz{~~{||{{{zzz{}|{}{z{zz}|}{z{}|{|{|z}}|{}{z|}|zz{zzz{{z{|z}|z{{{z{z{{z{{{z{||{z{{|}|{{|}|z|{|}|{z|}|{z{z{{{{|}{|{z|}z|{{{zzz{}|{{{z{zz}|{{z{{}|{{|{{}z{|{{|}|{z{z{{{{z{|{}|zzz{z{z{{z{}{z{||{|}{|}}{|{|zz}{|}}{z|}|zz{zzz{{|}z|{zzzz{z{z{{z{z{z{|~{zz{|{~{z{|{|~{|{|{|~}|zz{|zzz{|{~~{z|{{{zzz{}|{{{z{z|}|{{z{|}|{{{||}|{|{z|}|zz{zzz{{z{|z}||{{{zzz{}|{{{z{z~}|{{z{~}|{{{~z}|{~{z|}~{z{z{{{{z{~~}||{{|zzz{{|{}|z{z|{|}|z{}{|{|||z}|{}{z|}||zzz||{zz{|{{|}{zzz|z{z|{z|}{z|||||}||{}||||{||}||}|||}|zz|||zz||{z|{zzzz{z{z{{z{z{z{|~{zz{|}~{z{|}~{~{|}{{~}|zz{zzz{{|}~~{z|{{{zzz{{|{}{z{z|{|}{z{}{|{|{|z}{|{}z|}||zzz{|{{z{{{{||{{{zzz{}|{}{z{z|}|}{z{}}|{|{|z}}|{}{|}||z{z{|{{z{|{}||{{~{z{{}|{}~{{z~}|}~z{~}|~|~~{~}|~~{{}~{{{z{{~{z{~~}|}zzz~z{z~{z~}{z~|~~|}~|}~~|~|}~|~~|}~~|~}{z~z{{{~|}~~{zzzz{z{z{{z{}{z{||{|}{|}}{|{|}||}{|}}{||}|z{|{{{{|}z|{z|{|{|{|{}|{|{|{|~}||{|}~}|{|}~|~}|}~{|~}~|{|||{{|}~~}||{|{|{|{}|{|{|{|~}||{|}~}|{|}~|~}|}~{|~}~|||||{{|}~~}||}|}|{|}}|}|}|}|~}||}|}~}|}|}~|~}|}~}|~}~||}||}}|}~~}||{|}|}|}}|}|}|}|~}||}|}~}|}|}~|~}|}~}|~}~||}||}}|}~~}||{|{|{|{}|{|{|{|~}||{|}~}|{|}~|~}|}~{|~}~||{|||{|}~~}|z{z{||||{z{{{z{{z{{|z{{{}{|{{{{}{|{{{{{}{|||{{{|}|z{z{zz{{{{zz{{{z{z{z|zz{z{z{z{{z{{z|{z{{{{z|{|||zy{|}|{yzzzzz{{{zz{{{z{z{{|{z{z{{{|z{{{{z{{|{{{{z|{|||z{z|}|{{zzz|{{{{zz{zzzzyyzzzzyzzzzzzzzzzzzzzzz{zzzzz{zyzzz{zyzzzyzzzz{zzzzz{yy{zzzz{y{z{{zzz{zz{zz{z{{z{zz|zy{zz}|{z{zzzz{z{zzzyyzzzz{z{z{zz|{z{zzz{|{zz{{{|{z{{{{{|{|||zz{|}|zzzzzzz{{{zz{{z{z{z{|{z{z{z{|{{z{{z|{z{|{{z|{|}|z{z|}|{z{zzzz{|}z|{{z{z{z{z{z{z{z{|{{z{{z|{{{{{{z|{||~z{{|}~{z{zzzz{{{~~{{z{{{z{{|{|z{{{}{|{{{{}{|{{{{{}{|||{{{|}|{{z{zz{{{{zz{{{{z{z{{|{{z{{{|z{{{{zz{|{{{{z|{|||z{z|}|{{zzz|{{{{zz{zzzzzz{zzzzz{zz{{{zzzz{{zzzz{z{zz{zz{z|{{{zzzyzzzzzyzzzz{y{y{zzzz{{z{{zzz{zz{zz{z{{z{zz|zy{zz}|{z{zzzz{z{zzzz{|}z{z{z{z{z|{z{z{{|{{z{{{|{z{{{{{z{|||z{{|}|{zzzzzz{{{zz{{{{z{z{{|{{{z{{|{{{{{z|{|{|{{z|{|}|z{{|}|{{{zz|{{|}z|{{z{z{z{z~{z{z{z{{{z{{z|{{{{{{z|{||~z{{|}~{z{zzzz{{{~~{{{{{{z{{|{{|z{{{}|{{{{}{|{{{{{}{|||{{{|}|{{z{z|{{{{zz{{z{{{z{{|{{{z{{{|{{{{{|{{{{{{{|{|||{{{|}|{{{z{z{{{{z{{{|}z{{{z{z{{|{{{z{{{|{{{{{|{|z{{{{|{|||z{{|}|{{zzz|{{{{zz{}{|z{z{{|}{|z{{{|}|{{z|}|||{{z|}|}|z{{|}|{{{zzz{{|}||}}{|z{z{{|}{|z{{{|}|{{{|}||{{{z|}|||z{{|}|{{{zzz{{{{|z}{{{z{z{{~{{{z{{{~{{{{{z{|{{{{z|{||~z{z|}~{{{zz|{{{{~~{}{|{{z{{|}{|z{{{}}|{{{{}||{{{{}}|||{{{|}|{{{{zz{{{{|z}{z{z{z{z|{z{z{z{|{{z{|z|{{|}{{|{|}|z{z|}|{z{zzzz{|}z|{|}z}{|z{z{{z}{|z{{{z}|{{{{z}||{{{z}z||z{{|}|{{{zzz{{{{|z}{z{{{z{{|{{|z{{{}{|{{|{}{|{|{{}{|}{{{{|}|{{{{zz{{|}z|{{{{z{z{{|{{{z{{{|{{{{{z|{|{{{z|{|||z{{|}|{{zzz|{{{{zz{}{|z{z{{|}{|z{{{|}|{{{z|}||{{{|}|||z{{|}|{{{zzz{{{{|z}}{|z{z{{~}{|z{{{~}|{{{z~}||{{{z}||~z{{|}~{{{zzz{{{{~~}{{{{{z{{|{{|z{{{}{|{{{{}{|{{{{{}|||{{{|}|{{{{||{{{{|z{}z{z|{|z|{||{|z|{|}||{||{}||||{|{}||{{|{|}||{|||z{||{z|{{z{z{z{z~{z{z{z{~{{z{|{~{z{|}{{~{|}z{{~}|{z{zzzz{|}~~{{z{{{z{{|{{|z{{{}{|{{{{}{|{{{{{}{|||{{|}|{{{{zz{{{{zz{{{{{{z{{|{{|z{{{}{|{{{{}{|{{{{{}{|||{{|}|{{{{z|{{{{zz{}{|{{z{{|}{|z{{{}}|{{{{}}||{{{{}}|||{{|}|{{{{z|{{{{|z}}{~{{z{{~}{~z{{{~}~{{{{~}|~{{{{~}|~~{{{}~{{{{z{{{{{~~}}{z~{~{~{~~{~{~{~~~~{~||~~|~|}~|~~|}~{~|~}~{~{zz{~|}~~{}|||{{{|~}|||{|{~}||{||~}|||}{|~}|}~|{|~}~|{||||{|}~~}}|||{{{|~}|||{|{~}||{||~}|||}{|~}|}~|{|~}~{{|||{{|}~~}}|||{{{|~}|||{|{~}||{||~}|||}{|~}|}~|{|~}~{|||||{|}~~}}|}|}{}|~}|}|}|}~}}|}|{~}|}|}}{~}|}~{}|~}~}|}|||}|}~~}}|}|}|}|~}|}|}|}~}}|}||~}|}|}}|~}|}~|}|~}~}|}|||}|}~~}{{{z{{z{|||{|{|z|{|{|{|{||||{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|{{zzz{|{{{z{z||{{z{{{|{{{|zz||{|{zz{||}}zyzz{zzz{|{|z|{{{z{{|{{{{{z||{{z{{||{{{|{{||{|{z{{||}}{{zz{z{z{|{|z|zzzyzz|zzzzzz{|zzzzz{|zzz{zz{|z{{yzz{|{|zzzy{zzzz{{|z|||{{|||||y|||||z|||{||z||||{||}|{{|||{}}||||{{|||{{}{}{|{||{}{|z|{||}|z|{{|}z|{{|{|}z|{{|{||}}|{|{||{|{{{}}{z{|}z|{{{{z{|{{{{yz||{zz{{||{{{|{{||{|{z{z||}}{yzz{zzz{|{|z~{|{|z|{{|{|{||||{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|{{{zzz{|{{z{z||{{z{{||{{{|z{{|{|{zzz||}}z{zz{z{z{|{|z|zzz{y{z|zz{zz||{zzzz||zzzz{z||z{{z{z|{{|{zzz{zzzzzz|z|||{|{||||||||||z|||{||z||||{||}|{{||||}}||||{{|||{{}{}{|{|z|{}{|{{||}|{|{{|}{|{||{|}{|{{|{||}}|{|{||{|{|{}}z{|}z|{{{{z{{|{{{{{||{{z{{||{z{|{{||{|{z{{{|}}{{zz{z{z{|{|z|||{|{|||||{||||||||{||}||||{||}|{{||||}}||||{{||||{}z~{|{|z|{~{|{|{|||{|{{||{|{||{||{|{{|{||}~|{|{||{|{|{~~|||{|{|||||{||||||||{||{||||{||}|{{||||}}||||{{||||{}{}{|{|z|{}{|{|{||}||{{|}z|{||{|}{|{{|{||}}|{|{||{|{|{}}{|}z|{|{|z|{|{|{|{||||{|z||{|z||z||{|{z|{||}}|{|z{z{|{|{|z|{|{|z|{|{|{|{||||{|{||{|{||{||{|{z|{||}}|{|z{z{|{|{|{|||{|{|||||{|||||||||{|}||||{||}|{{||||}}||||{{||||{}z~{|{|z|{~{|{|{||~|{|{{|{|{||{||{|{{|{||}~|{|{||{|{|{~~||}{}{}|}|}{}|}}}}|}|{}}}||}{}}}|{{}|}|}}}|}|}{|}||{}{}{|{|z|{}{|{|{||}|{|{{|}{{||{|}{|{{|{||}}|{|{||{|{|{}}|}z}||{|{||}||{||||}||||{|}}|||{|}}{{{||||}}|||||||||{{}}|{{{{z{{|{{{{{{||{{{{{||{{{|{||{|{{{{||}}{{{z{z{{{|{|z|{|{|z|{|{|{|{||||{|{{||{|{||||{|{z|{||}}|{|z{z{|{|{|{|||{|{|||||{|||||||||{||}||||{|}|{{||||}}||||{{||||{}z~||||{||~||{||||~||||||~}||||||}|{|||||}~||||||||||{~~}{}{}z}{}{}{}{}}}}{}{{}}{}{|}{}}|{{}{}|}}}{}{}|{}{|{}}}||z}{}z}{}{}z}{}}}}{}{{}}{}{|}{}}{|{}{}|}}}{}{}|{}{|{||}{}{}z}{}{}{}{}}}}{}{{}}{}{|}{}}{|{z{||}}}{}{}|{}{|{}}}{}{}z}{}{}{}{}}}}{}{{}}{}{|}{}}{|{{{||}}}{}{}|{}{|{}}}{}{}z}{}{}{}{}}}}{}{{}}{}{|}{}}{|{{}||}}}{}{}|{}{|{}}}|}{}{}|}|}{}|}}}}|}|{}}}}||}{}}}|{{}||}}}|}|}||}||{}}~|}|}{}|~|}{}|}}~}|}||}~}}||}|}~}}||}|}}~}|}|}}|}|||~~}~~}~}z}~~~}z}~}}~}~}~~}~~}~|}~}~~|{~}~}~}}~}~}|~}~|{~~~|}{|{||~|}{||||~}|||{|~}}|||{|~}}}{|||~}~{|{|}||||}~~~|}{|{||~|}{||||~}|||{|~}}|||{|~}}}{|||~}~||{|}||||}~~~|}{|{||~|}{||||~}|||{|~}}|||{|~}}}{|||~}~||{|}||||}~~~|}{|{||~|}{||||~}|||{|~}}|||{|~}}}{|||~}~||||}||||}~~~}}||||}~}}||}||~}}|}||~}}}||||~}}}||}|~}~|}|}}}|}|}~~z{|{|{|{||{|{}}|z{z{{|{|z{{{|||{{{{||||{{{{|||||{{{|||}{{{{||z{{{{|}z}}|{|}~}|{|}||~|}|}}|~}|}{|}|~}||}|}|~|}|}|}|~z}|}{|}{{{{z{{|{{z{{{||{{{{{||z{z{{{||z{|{{{|||}{{{{||z{{{{|}z||{{{||||z{|{||{|{|{||{||{{{|||||{{||||}{|{|||z|{|{|}z}|{||}|}|{|}||||{|}{||~|}{|{|}z||{|}|}~}|}|}||z}|}{|}z|}|}{|~|}|}|}}~}|}||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{{{|}z{|{|z|{{|z|{||||{|{{||||{{|{|||||{|{|||}|{|{||~{|{{|}z{|{{z{{||z{{{|||{{{{||||{{{{|||||{{{|||}{{{{||z{{{{|}z}|}|{|}~}{|}||~{}|}}|~}{}{|}|~}{|}|}|~|}|}|}|~z}|}{|}{||{{{{||||{|{||{|{|{||z||{{{|||||{{||||}{|{|||z|{|{|}z}|{|z|}|}|{}||||{|}{||~|}{|{|}|||{|}|}~}|}|}||z}|}{|}z|}|}{}|~|}|}}}~}|}||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{{|}z}|{|{|}z}|{|}|{|}|}{{{~|}{|{{}~||{|}{}~}|}|}{|{}|}{|}z{|z|z|{~{|z|{|||{|{z|{||{{|z|z|||z|{|z|}|z|z||~{|{{|}z}|}|{|}~}|{|}||~}|}}|~}|}{|}|~}||}|}|~|}|}|}|~z}|}{|}{}|{|z|}|}|{|}|||||}{||~|}{|{|}|||{|}|}~}|}|}||z}|}{|}z|}|}{}|~|}|}|{}~}|||}~|}|}}|}~|}||}|}~|~}|}|}~~|}|}|~|{|}z{|{{z{{|{|z{{{|||{{{{{||{{{{|||||{{{|||}{{{{||z{{{{|}z}|{|{|}|}|{|}||||}|}{{~|}{|{|}~||{|}|}~}|}|}||{}|}{|}z{|{|z|{~{|z|{||~|{|{{|||{{|{|||||{|{|||}|{|{||~{|{{|}z||{|{|||||{|||||||||{||||{|{|||||{|||||}||||||z|||{|}~}|}|{|}~}|{|}||~|}|}}|~~}{|}|~}||}|}|~~}|}|}|~z}|}{|}{|}|}{}|~|}{}|}}~}|}||}~|}}}|}~|}||}|}~|~}|}|}~~|}|}|~||}{|||{{{||||{{|{||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{|||{{{||||{{|{||||{|||||||{{{{||||{||||}{|{|||z|{|{|}{}|||{|}|}|{|}||||}|}|||~|}{||}~||||}|}~}|}|}||{}|}{|}{||||{||~||{||||~||||||~|||{||||||||||||}||||||~|||{|}z}|||{|}|}|{|}||||}|}|||~|}{|||}||||}|}~}|}|}||z}|}{|}~}}}}|}}~}}|}}}}~}}}}}}~}}}{}}}~}|}}}}~|~}}}}}~~}}}}|~|}z}|}|z|}~}|z|}||~|}|}}|~}|}{|}|~}|||{|z|}|}|}|~z}|}{|}z}|}|z|}~}|z|}||~|}|}}|~}|}{|}|~}||}{|||}|}|}|~z}|}{|}z}|}|z|}~}|z|}||~|}|}}|~}|}{|}|~}||}||||}|}|}|~z}|}{|}z}|}|{|}~}|{|}||~|}|}}|~~|}{|}|~~||}|}}~}|}|}|~{}|}{|}z}|}|{|}~}|{|}||~|}|}}|~}|}{|}|~}||}|}||}|}|}|~~}|}{|}z}~}~{~}~}~{~}~~~~}~}}~~~~}~~}~~~~|}~}~~~~}~}~~~}~}~|~~}|}|}{}|||}|}|}}|}|}||}|~}|}}|}|~}|{}|}|~~|}|}|||}|}|~~|}|}{}|||}|}|}}|}|}||}|~}|}}|}|~}|{}|}|~~}}|}|||}|}|~~|}|}{}|||}|}|}}|}|}||}|~}|}}|}|~}|{}|}|~~}||}|||{|}|~~|}|}{}|||}|}|}}|}|}|{}|~}|}}{}|~}|{}|}|~~}|}}|||}|}|~~}}|}|}}|}}|}}}}|}}}}|}|~}}}}|}}~}||}}}}~~}}}}||}}}{|~~}~{~{~}~}~{~}~~~~}~}{~~~~}~~{~~~~|{~}~~~~~}~}~~}~}~|~~{{{|}z{{|}z{|}z|}{}z}}|}|}||}|||}||||}||||~~|~}|}~~}|}|~~~|}|}|~~~|}|~}|~~~|}}|}|~~~||}|}|~~~}|}|}|~~~~}}}}}||}}}}~~}}}}}}}~}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}~~}}}}}|}}}}}~~|}}}}}}~|}}}}}}~}|}}}}}}~}|}}}}}}~}|}}}}}}~}~~}}}}}|}}|}}~~|}}}}}}~|}}}}}}~}|}}}}}}~}|}}}}}}~}|}}}}}}~}~~}}}}}|}}||}~~|}}}}}}~|}}}}}}~}|}}}}}}~}|}}}}}}~}|}}}}}}~}~~}}}}}||}|||~~|}}}}}}~|}}}}}}~}|}}}}}}~}|}}}}}}~}|}}}}}}~}}~~|~}|}~~~}|}|~~|}|}|~~~|}|~}|~~~|}}|}|~~~||}|}|~~~}|}|}|~~|}||}|}~~|}|}|}||}|}||}~|}||}|}}~|}}|}|}}~||}|}|}}~}|}|}|}}|}||}|}|~|}|}|}~}}|}||~~|}||}|~|~|}}|}|~|~||}|}|~|~}|}|}|~||}||}|}|~|}|}|}}}||}||}~|}||}|}|~|}}|}|}|~||}|}|}|~}|}|}|}||}||}|}|~|}|}|}}|||}||}~|}||}|}|~|}}|}|}|~||}|}|}|~}|}|}|}||}||}|}|~|}|}|}}||||||}~|}||}|}|~|}}|}|}|~||}|}|}|~}|}|}|}||}|~}}}}}~~}}}}}~|~}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}}}}}}}}~}||}|}|||}|}|}~}|}|}||}|}||}|~}}|}}|}|~}}||}|}|~}}}|}|}|~}|}|||||~}|||||}|}|||||||||||||||~||||||||~||||||||~|||||||||}||}|}|}|}|}|}~}|}|}||~}}||}|~|}|}}|}|~|}||}|}|~|}}|}|}|~||}||||||}|||||}}}||||||}||||||}|}||||||}|}||||||}|}||||||}||}||||||}|||||}}}||||||}||||||}|}||||||}|}||||||}|}||||||}||}||~}}}}}~~}}}}}~}~}}}}}}|~}}}}}|}~}}}}}}|}~}}}}}}|}~}}}}}}|}|}||}|}|~|}|}|}~~|}|}||}~|}||}~|~|}}|}|~|~||}|}|~|~}|}|}|~|~}||||||||||||}}|||||||}|||||||||||||||~||||||||~||||||||~||}||||||}|||||}}}||||||}}||||||}}||||||}}}||||||}}}||||||}}|}|||||~}|||||}|}|||||||}||||||||||||||||~||||||||~|||||||||}||}|}|}|}|}|}~}|}|}||~}|}||}|~|}}}|}|~|}||}|}|~|}}|}|}|~||}||||||}|||||}}}||||||}}||||||}|||||||}|}||||||}|}||||||}||}|||~}}}}}~~}}}}}~}~}}}}}}|~}}}}|}|}~}}}}}|}~}}}}}}|}~}}}}}}|}|}||}|}|}|}|}|}~}|}|}||}}|}||}|~|}|}}||~|}||}|}|~|}}|}|}|~||}||}|}|~|}|}|}}~|}|}||}~|}||}|}|~|}}|}}|~||}|}|}|~}|}|}|}|~}||||||||||||}}|||||||}|||||||}||||||||||||||||~||||||||~||}||||||}|||||}}}||||||}}||||||}|}||||||}}||||||}}}||||||}}|}|||||~}|||||}|}|||||||}||||||||}||||||||||||||||~|||||||||}||}|}|}|}|}|}~}|}|}||~}|}||}|~|}|}}|}|~|}|}|}|~|}}|}|}|~||}||||~}}}}}~~}}}}}~}~}}}}}}|~}}}}|}|}~}}}|}}|}~}}}}}|}~}}}}}}|}|}||}|}|}|}|}|}~}|}|}|||}|}||}|~|}|}}|||~|}||}}|~|}}|}|}|~||}||||||}|||||}}}||||||}}||||||||}||||||}|}|||||}|}||||||}||}||}|}|~|}|}|}}~|}|}||}~|}||}|}|~|}}|}|}|~||}|}}|~}|}|}|}|~}||||||||||||}}|||||||}|||||||}||||||||}||||||||||||||||~||}||||||}|||||}}}||||||}}||||||}|}||||||}|}||||||}}||||||}}|}|||||~}|||||}|}|||||||}||||||||}||||||||}|||||||||||||||||}|||||~}}}}}~~}}}}}~|~}}}}}}|~}}}}|}|}~}}}|}}|}~}}|}}}|}~}}}}}|}|}||}|}|}|}|}|}~}|}|}|||}|}||}|~|}|}}|||~|}||}|}|~|}}||}|~||}||||||}|||||}}}||||||}}||||||||}||||||}|}||||||}|}|||||}||}||||||}|||||}}}||||||}}||||||}|}||||||||}||||||}|}|||||}||}||}|}|~|}|}|}}~|}|}||}~|}||}|}|~|}}|}|}|~||}|}|}|~}|}|}}|~}||||||||||||}}|||||||}|||||||}||||||||}||||||||}||||||||||}||||||}|||||}}}||||||}}||||||}|}||||||}|}||||||}|}||||||}}}|||||||||||||~~}}}}}}}}}}~}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}|}}}~}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}||}}~}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}|||}~}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}||||~}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~||~|~|}~|~|}~}~|~||~}~||~|~}}~~{~|~}}{~|~|~}~|~|~|~|}~~|||||}}||||~}}||||}}}||||}}}}||||}}}}||||}}}|||||}}}}}||||||}||||}}||||||}||||||}}||||||}}||||||}}||||||}|}}||||||}||||}}||||||}||||||}}||||||}}||||||}}||||||}|}}||||||}||||}}||||||}||||||}}||||||}}||||||}}||||||}|}}||||||}||||}}||||||}||||||}}||||||}}||||||}}||||||}|}}}}}}}|}}}}}}}}|}}}}}|}}}}}}}|}}}}}}}|}}}}}}}}}}}}}}}|}}}||||||}||||}}|||||||||||||}}||||||}}||||||}}||||||}}|}|||||||||||}}|||||||}|||||}|||||||}|||||||}|||||||}||||||||||||||}}|||||||}|||||}|||||||}|||||||}|||||||}||||||||||||||}}|||||||}|||||}|||||||}|||||||}|||||||}|}}}}}}}||}}}}}}}|}}}|}}|}}}}}}|}}}}}}}|}}}}}}}}}}}}}}}}}}}}|||||||||||}}|||||||}|||||}|||||||}|||||||}|||||||}||||||||{}||||}}}||||||}||||||}||||||}}||||||}}||||||}}}}|||||||||||}}|||||||}||||||}||||||}}||||||}}||||||}}|}|||||||||||}}|||||||}||||||}||||||}|||||||}|||||||}||||||||||||||}}|||||||}||||||}||||||}|||||||}|||||||}|}}}}}}}||}}}}}}}|}}}}}}|}}|}}}}|}}}}}}|}}}}}}}}}}}}}}}|}||}}|||||||||||}}|||||||}|||||||||||||}|||||||}|||||||}||||||||||||||}}|||||||||||||||||||||||||||||||||||||||||||||||}||||}}}||||||}||||||}}||||||}||||||}}||||||}}}}|||||||||||}}|||||||}||||||}|||||||}||||||}}||||||}}|}|||||||||||}}|||||||}||||||}|||||||}||||||}|||||||}|}}}}}}}{|}}}}|}}|}}}}}}|}}|}}}}|}}}}}}}|}}}}}}}}}}}}}}|}|||}}|||||||{|{|}}||||||||||||||||||||||||||||||||||||||||||||||||||||}}||||||||||||||||||||||||||||||||||||||||||||||||||||}}|||||||}||||||}||||||||||||||}|||||||}||||||||{}||||}}}||||||}||||||}}||||||}}||||||}||||||}}}}|||||||||{|}}|||||||}||||||}|||||||}|||||||}||||||}}}}}}}}}{|}}}}}}}|}}}}}}|}}|}}}}|}}}}}}}||}}}}}}}}}}}}}|}||||}}|{|||||{|||}}||{||||||{|||||||{||||||||||{||||||||||||||||||||||||}|||||||||||||||||||||{||||||||||||||||||||||||||||||}}|||||||}||||||}|||||||||||||||}||||||}||||||||||||||}}|||||||}||||||}|||||||}||||||||||||||}||||||||{}||||}}}||||||}||||||}}||||||}}||||||}}||||||}}}||||||||||{}}||||{||}||||||}|||||||}|||||||}|||||||}}}}|}|}}|}|}~~}}}}}}}}}~}~}}}~}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}~~}}}}||}}}~}~}}}~}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}~~}}}}}||}}~}~}}}~}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}~~}}}}}|||}~}~}}}~}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}}~~}}}}}||||~}~}}}~}}~}}}}}}}~}}}}}}}~}}}}}}}~}}}}}}}}|~~}}~}|}}~}~}~}~}~}}~}~}}|}~~}}|}~}~~|}~}~}~~}~}~}~||}}~~||||||}|||~}}||~~|~}|||~||~}|||~||~||||~||~|||||~||}||||||||}|||}}|||}|}}}||||}|}}||||}|}|||||}||||||||}|||||||||{}|||}}}||}|}}}||||||}}||||||}|||||||||||||||||||||||}{}|||}}}||}|}}}||||}|}}||||}|}|||||}|}||||||}||~~}|||||}|||}}~}||}}~}|}||}}~}||||}}~|||||}}~||||||}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}~~|}||||{}||~}}|}|~|}|}|}||}~|}||||}~||||||}~|||||||}}||||||||||||}}||||||}|||||}|||||||}|||||||}||||||||}||||||||||||||}}}|||||}|||||||||||||||||||||||||||||||||||}|||||||||}}}||||}|}|||||}}||||||}}||||||}||||||||}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||}|||}|||||}|||}}}}||}}}|}|}||||}||||}|||||||}||||||||}|}||||||}{||||}}}||||||}||||||}||||||}}||||||}}|||||||}}~~|}}}}|{}}}~}}{}}~}}}|}}}}}}|}}}}}}~}}}}}}}~}}}}}}}}}||||||||||||}}||||||}||||||}||||||}|||||||}||||||||}|}||}|||}|||||}}}||||}|}|||||}}}||||}}}|||||}}}||||||}}}}}}}}}}}}}}}}}}}}}}|}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}||||||||||||||}}||||||}|||||||||||||}|||||||}||||||||}|}||}|||||}|||}}|}||}}||}|}|||||}||||||||||||||||||||||}||||||}{||||}}}|||||}}|||||}|}|||||}}|||||}}}||||||}}}~~|}||||{}||~}}|}|~|}|{}|}||}||}||||}||||||}~|||||||}|||}|||||||||}}}||||}}|||||||}|||||||}||||||}||||||||}}}}}}}}}}}}}}}}}}}}}|}}}}}|}}}}}}|}}}}}}}}}}}}}}}}}}}}|}||||||||||{|||||}|||||||}||||||||||||||}||||||}||||||||}|}||||||||||||}}||||||||||||||||||||||||||||||||||||||||||}|||}|}|||}}}}||}}}}}|}||}||}||||}|}||||||}||||||}|}||||||}{||||}}}|||||}}|||||||}|||||||}||||||}|||||||}}~~|}||||{}||~}}|}|~|}||}|}||}|{}||||}|||||||}|||||||}|||}|||||||||}}}||||}}|||||||}|||||||}|||||||}|||||||}}|}}}}}}}}}}}|}}}}}}|}}}}}|}}}}}}|}}}}}}|}}}}}}}}}}}}}|||||||||||||{|||||}|||||||}||||||||||||||}|||||||}|||||||}|}||||||||||||}}||||||||||||||||||||||||||||||||||||||||||||||}|||||}}}|||||}}|||||}|||||||}|}|||||||}|||||}||||}|||||}|||}}}}||}}}|}|}|||||}||||||||||||||||||||||}||||||}{||||}}}|||||}}|||||||}|||||||}|||||||}|||||||}}}}}}}|}}}~~}}}||}}}}~}~}}~}}~}~}}}}}~}}}}}}}~}}}}}}}}}}}}}}}}}}~~}}}}||}}}~}~}}~}}~}~}}}}}~}}}}}}}~}}}}}}}}}}}}}}}}}}~~}}}}||}}}~}~}}~}}~}~}}}}}~}}}}}}}~}}}}}}}}}}}}}}}}}}~~}}}}}||}}~}~}}~}}~}~}}}}}~}}}}}}}~}}}}}}}}}}}}}}}}}}~~}}}}}|||}~}~}}~}}~}~}}}}}~}}}}}}}~}}}}}}}}}}}}}}}}|}||}}||||||||}}}|}}}}}|}}||}}}}|}||}|}|||}||}||||||||||~~}|~|{|}~}}}~}~~}~~}~}|~}~~}|~}~}~~|~}~}~||~}~}~|||}|}~~|||~}|{||}~}}|~~}~}~~}~|}~||~}~|}~|||~}~|}||||~}~|}}||}||||||||}}}||}}}}}|}||}}}}||}|}}|||||}|}}|||||||}|||||||||||||}}}}|}}|}}|}||||}}||}||||||||}|||||||||||}|~~}||}|||||||}~}|}}~}~}||}}~}||||}}~||||||}}|||||||}}}}}}}}}}|}}}}|}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}|}~~|}|||||}|}~}||}~}}|~}}||}~}}||||}~}||||||}||||||||}}||}|||||||||}}||||}}||}||}}|}||||}}|||||||}}|||||||}}|~~}}}}||}}}|}}~}}}}}~}}}}}}~}}}}}}}~}}}}}}}}}}}}}}}}||||}|||||}}|}|}}}}}}}}}||||}}}||}||}|||||}||}||||||||}}}}}}}}}|{}}}}}}}}|}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||}|||||}}}}}||}||}|}||}|}|||||}||||||||}||||||||}}}}}}}}||}}}}}}}}}}}}|}}}}}}|}}}}}}}|}}}}}}}}}}}}}}}}|}|||||}}||||}}}|}|}}}}}|}|||}}||}||}|||||}||}||||||||}}~~|}}}}||}}}~}}|}~}}}|~}}}}}}}}}}}}~}}}}}}}}}}}}}}}}||||}}||||}}|}}}}}}}|}}}||}||}}}|}||}|}|||}||}||||||||}|||}||}}||||}}}}|||}}}||}||}}}}|||}}}||||||}}|||||||}}}}}}}}}}||}}}}}}}}||}}}|}|}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||}||||||||||||||||||||||||||||||||||||||}}}|}}}}||}}}}}}|}}}}||}}}}}|}|}}}}}}|}}}}}}}}}}}}}}}}|}|||}||||}}||}}}}}}}}|}}}}||}|}}|||}|}||||||}||||||||}}|||||}}||||}}}}}|}}|}}|}||}|}}||}|}}||||}|}}|||||||}||~~|}||||{}|}~}}|}~}|||~}}||||}}|||||}|||||||||||||||}|}}|}}|}|}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}|||||||||}}}|||}}|||||||}|}|||||}|||||||}||||||||}}|}}}}}}|{}}}|}}}}||}}}|}|}}}}}}|}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}|}}}}{|}}}}}}|}}}}||}}}}}|}|}}}}|}}|}}}}}}}}}}}}}}}|}||||||||||||}}||||}}|||}|||||}|||||}|||||||}||||||||}|}}|}}}}|}|}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}|}|||||}}||||}}}}}|}||}}||||||}|||}||||||||}|||||||||||||||}||||}|||}}}}|}|}|}||}||}||}||||}||||||||}|||||||||||}||||||||||}}|||}}|||||||}|}|||||}||||||||}|||||||}}|}}}}}}|{}}}|}}}}||}}}|}|}}}}}}|}}}}}}}|}}}}}}}}}}}}||||||||||||||||||||||||||||||||{|||{|||||||||||||||||}}}|}}}}{|}}}}}}|}}}}||}}}}}|}|}}}}|}}|}}}}|}}}}}}}}}}|}||||||||||||}}||||}}|||}|||||}|||||}||||||||}|||||||}|||||||}||||}}}}|||}|}||}||}||}||||}|}||||||||||||||}|||||}||||}|||}}}}|}|}|}}|}||}||}||||}|}||||||}|||||||}|}|}}}}}}}}~~}}|||}}}}~}~}}~}}~~}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}||}}}}~}~}}~}}~~}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}||}}}~}~}}~}}~~}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}~}~}}~}}~~}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}||}}~}~}}~}}~~}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}{{{|{||{|}{||{}}}}}}}|}}|||||}||||}|{{|||}|{{{||{|{|{{|||||}}||}|||||}}}}}}|}}|}|||}||}|}|{||}|}|{{|}|||||{|{{{~~}|{|}{}~|}}~}}~|~~~||~}~~~||~}~{{||~}~{{{|~}~{|{{}~}}~~||}~}}||~}~}}}~}}~~~}|}}~~~}~}|}}||~}~}|}||}~}~}||}}||}|||}}|||}}}|}}}}}}}||}}}|}||}|}}}||}|||}|||||||||||||}}|||||||||}}||}||||}||||||}||||||}||||||}||||||||}|~~}||}{|||}{|}~}{}|~~}||}|~~}||||}|}||||||}|||||||||}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||}~~|}||}||}|}~}}|}~}}~}}||}~~}}||||}}}||||||}|||||||}}|~~}}}}{|}}}{}}~}{}}}~}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}|||||}||||{}}||}}}}|}|||}|||||}}||||||}|||||||||||||||}}}}}|}}}}||}}}}}}|}|}}}|}}}}}|}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||}||||||||||||}}}}|}|}}}}|||}|}||}||}}||}||||||||||||}}}~~|}}}}||}}}~}}|}~}}}~}}}}}~}}}}}}}}}}}}}}}}}}}}}}}|}|~~}||}{|||}{}}~}{|}|~|}||}|~}||||}|}||||||}|||||||||||||}}|||{}}||}}}}|}}||}|}||||}}{|{||}}||||||}||||||||}}||}||}}|||}}}}}|}||}}|}||}}}|}|||}}}||||||}||||||||||||||}|||||||||}}|||}|||||||||||}|||||}||||||}||||||||}||}}}}}}}}}}}}}}}}}}}}}}|}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}||}||}}||||}}||}}}}|}|}|}}}|||}}}}|||}}}||||||}||||||||}|||||||}||||}}}}}}}}|}}}||}|||}||}|}}||}|||}|||||||||||||}||||{}}||}}}}|}}||}||||||}||||||||{|{|{|||||||||}}}}}|}}|}|}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}||||||||||}}||||||||||||||||||||||||||||||||||||||||||}||||{|||||}|||}|||||||||||}||||||}|||||}||||||||||||}}}}|}}}}}}}}}}}}|}}}}|}}}}}|}}}}}}}|}}}}}}}}}}}}}}}}}||}||||||||||||}}}|||}}||}||||}|}|||||}}||||||||||||||}}|}}}}}}}|}|}}}}}}}}}}}}}}}}}|}}}}}}}|}}}}}}}}}}}}}}}|}}||||||}||||}}}}|}|}}}|}||}}}|}||||}}}||||||}|||||||||||||}||||}|||}}}}|}}||||}||||}|}|||||||||||||}|||||||||||}||||||||||}}||||||||||||||||||||||||||||||||||||||||||}||||{|||||}|||}|{|||||{|||}||||||}||||||}||||||||||||}}}}|}}}}}}}}}}}}|}}}}|}}}}}|}}}}}}}|}}}}}}}|}}}}}}}}}||}||||||||||||}}}||||}||}||||}|}|||||}}|||||||||||||||}|||||||}||||}}}}|}|}|}|}||}|||}||||}|}||||||||||||||{{{|{{|{||}|||}~~}{|||}|||~}~||}|}~|}}|||}}}|||||}}||||||}||||||||||}~~}||||}|||~}~||}|}~|}}|||}}}|||||}}||||||}||||||||||}~~}||||}|||~}~||}|}~|}}|||}}}|||||}}||||||}||||||||}|}~~}}|}|||}|~}~}|}|}~||}|}|}|}|}|}||}|}|}|}}|}|}|}|}}}}~~}}}}||}}|~}~}|}}}~|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}{|{{|{||{|{{|{{|}||||||}|{|||{{{|||{|{{|||{|{||||{|{|{{|{{|{||{|{{|{{|}||||||}|{|||{{{|||{|{{|||{|{||||{|{|{{|{{|{}|{|{||{||}|||}||}|{}||{{{}||{|{{}||{|{|}||{|{|{{|{{~~}|{|{||{||}~||}|~~|{}|~{{{}|~{|{{}|~{|{|}|~{|{|{||~|}~~|~|~}|||~}~}~}~|}~}|~|~}}|~|~}~||~|~}~|~||~}~|~|{{{{|{|{{{{||{{{|}|{||||{{|||{{{|||{{{{|||{{{{|||{{{{{{{{{|{}{{{{||{{{|}|{}|||{{}||{{{}||{{{{}||{{{{}||{{{{{||{{||}|||{|}|||}}||||}}||}|}|{|}|}||||}|}||||}|}||||||}}}}}}}}}}}||}}}|}}|}|}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||}~~||||||||||~}|||}|}||}|||}|}||||||}||||||}|||||||{{{{|{}{{{{||{{{|}|{{}|||{}||{{{}||{{{{}||{{{{}||{{{{{{{{{|{}{{{{||{{{|}|{{}|||{}||{{{}||{{{{}||{{{{}||{{{{{||{{|{||||{{}|||}}||||||||}|||{}}|||||}}||||||}||||||||||}||||||{||||||}||||{}}|||||}||||||||||||||||||||||||}|}}}}}}}}}}{{}}}|}}|}|}}|}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||}||||||{||||{|}||{}|}}{|}||||}||||||}||||||}|||||||{{{{|{}{{{{||{{{|}|{{}||}{{}||{{}||{{{{}||{{{{}||{{{{{||{{|{}|||{{}|||}}||||||}|}||||{}|||||}}||||||}||||||||||}||||||{||||||}{|||{}}|||{||}||||||||||||||||||||||{{{{|{|{{|{||{|{|}||{|||}{||||{{|||{{{||||{{{{|||{{{{{||{{}}}}}}}}}}{}}}}|}}}}|}}|}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||}||}|||{|{||{|}||{}|}}{|}|||{|}|||||}||||||}|||||||{{{{|{}{{{{||{{{|}|{{}|||{{}||{{{}||{{{}||{{{{}||{{{{{||{{|{}|||{{}|||}}||||||||}||||{}||||||}||||||}||||||||||}||||||{||||||}|||||}}||||||}||||||||||||||||||||||{{{{{{|{{|{||{|{||{|{|{{{{||{{{{||{{{{{||{{{{{|{{{{{{{{{{{{{|{{{{||{{{|}|{{|{|{{{|{|{{{|{|{{{{|{|{{{|{|{{{{{|}||{}}}}}}}}}}{{}}}|}}{}|}}|}|}}}}{}}}}}}|}}}}}}}}}}}}}}}}|||}||||||{||||{|}||{}|}}{|}|||{|}||||{|}|||||}|||||||||{{|{}|||{{}|||}}||||||||}||||{}||||||}|||||||||||||||||}||||||{||||||}|||||}}||||||}||||||||||||||||||||||{{{{|{|{{|{||{|{|}||{||||{||||{{||||{{{||{|{{{{||{{{{{{{{{{{|{{{{|{{{{||{{{|{{{{{|{{z{{|{{{{{{|{{{{{{|{{{{{{{{{{{{|{{{{||{{{{}|{{|{|}{{|{|{{{|{|{{{{|{|{{{{|{|{{{{||{{{{}}}}}|}}}}{{}}}|}}|}|}}|}|}}}}{}}}}}}|}}}}}}}{}}}}}}}}|||}||||||{|{||{|}||{}|}|{|}|||{|}||||{|}|||||{}||||||{{|{|{|{||{|{}}||||}~~{|{|}||||~}~|||~}}}|||~}}||||~}}||||~}}||||~}}|||||||||}~~||{|}||||~}~|||~}}}|||~}}||||~}}||||~}}||||~}}|||||||||}~~||{|}||||~}~|||~}}}|||~}}||||~}}||||~}}||||~}}|||||||||}~~||||}||||~}~|||~}}}|||~}}||||~}}||||~}}||||~}}|||||||}|}~~|||}}}|||~}~|}|~}}}}|}~}}}||}~}}}|}}~}}}|}|~}}}|}|}{}{|{}}}{}|}|{{||}}}|}}{|{|}|}{}||}|}{}{}{|}{}{}{}}{}{}{}{{}{|{}}}{}|}|{{||}}}|}}{|{|}|}{}||}|}{}{}{|}{}{}{}}{}{}{}{{}{|{}}}{}|}|{}||}}}|}}||{|}|}|}||}|}|}{}{|}|}{}{}}|}{}{}{{}||{}}}{}|}||}||}}}|}}}|{|}|}}}||}|}}}|}||}}}|}|}}}}|}|}|{}||{~~}{}|}}|}|}}~}|}~}}{|}|~}}||}|~}}|}||~}}|}|}~}}|}|}|}|}~||~~}|}~}||}|}~}}|}~~|{|}~~|}~|}~~|}|}~~~|}|}|}~|}|}|}|{{{|{|{{{{{{{{{{||}}{||{|{{|{|{{{||{|{{{{{{|{{{{{{|{{{{{{{{|{|{|{|{|{{{{|{||}}|||||{{|{|||{||{|||{|{{|||{|{||||{|{|{{|||{}{|{|||{||{||}}|||}|{||||}||||||}||||||}||||||}||||||{|||{~~|{|||}||{||}~|||}}{|||~}}||||~}}||||~}}||||~}}|||||{}{|{}}}{}|}|{}{}|}}}{}}|{{}|}|}||}|}|}{}{|}|}{}{}}|}{}{}{|}{}|||}}}{}|}|{}|}}}}}|}}|||}|}|}||}|}|}{}||}|}{}{}}|}{}{}{{|{|{|||{|{|{{|{||}}|{||||{|{|||{||{|||{|{{|||{|{||||{|{|{{|||{}||{|||{||{||}}||||}|{|||}||||||}||||||}||||||}||||||{{{|{||{{{z|{{{{||}}{{||{|{{||{{{||{|{{{{{{|{{{{{{|{{{{{{{|||||~~|||||||||||}~||||}|{|||}|||||~}|||||~}|||||~}||||||{}||{}{}{}|}||}{}}}}}|}}}|{|}|}}||}|}}}|}||}}}|}|}}}}|}|}|{|{|{}}|{||||{||||}}|||}{|{|||}|{|||}||{|{|}||{|{|}||{|{|{}}}{||{|}}|{||||||||}}}|||}}{{|||}}||||}}|||||}}|||||}}||||||{|||{}{|{|||{||{||}}||||}|{||||}|||||}||||||}||||||}||||||{{{|{|{{{{z|{{{{||}}{{||{|{{|{|{{{|||{{{{{{|{{{{{{|{{{{{{{{|{|{~~|{|{||{|{||}~|{||}|{{|||}|||||}|||{|~}|||{|~}|||{|{{}{|{|{}{}|}{{}{}}{}}{}}{|{{}{}{}||}{}}{}{{}|}{}{}}|}{}{}{{|||{}||{|||||||||}}||||}|{||||{||||||}|||||}||||||}||||||{|{{{}}|{|{||{|{||}}|{|}{|{{||}||{{||}|||{|}||{|{|}||{|{|{|}||{|{||}||{|||{{|||}}}|||}||{|||}||{|||}||{||}||{|{|}||{|{|{{{{|{|{{{{z|{{{{||}}{{||{|{{|{|{{{||{|{{{{{|{{{{{{|{{{{{{{{|{|{~~|{|{||{|{||}~|{||}|{{|||}||||||}|||{|}|||{|~}|||{|{{}{|{|{}{}|}{{}{}}}}}{}}{|{{}{}{}||}{}{}{}{{}}{}{}}|}{}{}{{{{{{||{{{||{{{|||{|{|||{{{||||{{{{|||{{{{{||{{{{{|{{{{{{{{||{{}{|{|||{||{||}}||||}|{||||{||||||}{|||||}|||||}||||||{|{|{}}|{|{||{|{||}}|{|}{|{{|{}||{||{}||{|{{}||{{|}||{|{|{|{|||{{{||}}{{{||{{{||}}}{||}||{|||}|{{|||}|{{{{|}|{{{{}|{{{{{{{|{|{~~|{|{||{|{||}~|{||}|{{|||}||||||}|||{||}|||{|}|||{|{{}{|{|{}{}|}{{}{}}}}}{}}{|{{}{}{}||}{}{}{}{{}{}{}{}}}{}{}{{{{|{||{{{||{{{|||}}{|||{|{||||{{{||||{{{{{||{{{{{{|{{{{{{{{{{{|{{{{{|{{{{||{}{{||{{{{|{|{{z{|{|{{{{{{|{{{{{{|{{{{{{{||{{}||{|||{||{||}}||||}|{||||{||||||}{|||||}|{||||}|||||{|{{{}}|{|{||{|{||}}|{|}{|{{|{}||{{|{}||{|{{}||{|{|}||{||{|}|||{{{{{|}}{{{||{{{||}}|{||}|{{|||}|{{{||}|{{{{|}|{{{{{}|{{{{{{{{|}{{{|}{{|}{|}{}{}|}|}|~~{}|}|||}|}|~~}|}~}||}|~}|}}|~}|}||~}|}|}~}|}|}||}|}|~~}}|}|||}|}|~~}|}~}||}|~}|}}|~}|}||~}|}|}~}|}|}||||}|~~}||}|||}|}|~~}|}~}||}|~}|}}|~}|}||~}|}|}~}|}|}||}|}|~~}|}}|||}|}|~~}|}~}||}|~}|}}|~}|}||~}|}|}~}|}|}||}}||~~}|}}||}}|}}~~}}}~}|}}}~}}}}}~}}}}}~}}}}}~}}}}}}{~}~|~~~{~}~~}~{~~~~~}~~~|}~}~~}~~}~~}~}}~~}~}~~~}~}~}{|}{|}{|{|}|~{|{|z|}|{|}||{|}||}{|}||{|}}||{|{|||{|{|{{|}{|}{|{|}|~{{{|||}|{|}||{|}||}{|}||{|}}||{|{|||{|{|{{|}{|}{|{|}|~{{||{|}|{|}||{|}||}{|}||{|}}||{|{|||{|{|{{|}{|}{|{|}|~{}|{}~}|}|~||}|}~|}{|}~|}|}}~|}|}|~|}|}|}{|}{|}{|{|}|~~||{||}|||}||||}||}{|}||||}}|||||||||||||{~}~|~~~{~}~~~{~{~~~~{~~~|{~}~~}~~}~~{~}}~~{~{~~~{~{~{}{{{{|}{{{{{{|{{{{{||}{{|||{{{||{{{{||{{{{||{{{{||{{{{{{{{{|}{{{{{{|{{{{{||}{{|||{{{||{{{{||{{{{||{{{{||{{{{{{|}{|}{|{|}||{}|{|}~}|}~||}|}~|}{|}~|}|}}~|}|}|~|}|}|}{|}{|}~|{|}|||}|{|}~}|}|||}|}~|}{|}~|}|}}~|}|}|~|}|}|}|}}}|~|}|}}}~~|}|}~|~}|}}||}}|}}|}}|}|}}}|}|}|}|}|}|}||}{{{{|}{{{{{||{{{{|||}{{||||{{||{{|{||{{{{||{{{{||{{{{{{|}{|}{|{|}||{}|{|}~}|}|~||}}~|}{|}~|}|}}~|}|}|~|}|}|}{{{{|}{{{{{||{{{{|||}{{||||{|||{{|{||{{{{||{{{{||{{{{{{||||}~|{|||||||{|||}||||||||||||||~|||||~|||||~||||||{|}{|}{|{|}|~|}|{|~~}|}|}||}|}~}{|}~|}|}}~|}|}|~|}|}|}|}|}|~|}|}|}~~|}|}~|~}|}|}||}||}}}||}|}|||}|}|}|}|}|}|{}|{|}{|}{|{|}||{}|{|}~}|}|~||}|}~|}{}~|}|}}~|}|}|~|}|}|}{{{{|}{{{{{||{{{{|||}{{||||{|{||{{|||{{{{||{{{{||{{{{{{|{||}~|{|{|||{|{|||}|{||||{|{||{||{|{|{{~|{|{|~|{|{|{{|}{|}{|{|}|~{||{|~|}|||}||||}||}{|}|||}}|||||||||||||{|}{|}{|{|}||{}|{|}~}|}||||}|}~|}{|}~||}}~|}|}|~|}|}|}|}|}|~|}|}|}~~|}|}~|~}|}|}||}||}|}}||}||||}|}|||}|}|}|{}||{{{{|}{{{{{||{{{{|||}{{||||{|{||{{|{||{{{||{{{{||{{{{{{|{||}~|{|{|||{|{|||}|{||||{|{||{||{||{|{{|{|{|~|{|{|{{|}{|}{|{|}|~{{|{|~|}|{|}{|{|}|{}{|}|{{|}}|{|{|||{|{|{{{|{|}{{{{|||{|{{|||}{|||||||||||{|||{|{||||{|{|||{|{|{|}{|}{|{|}|||}|{|}~}|}||||}|}~|}{|}~|{|}}~|}}|~|}|}|}|}|}|~|}|}|}~~|}|}~|~}|}|}||}||}|}}||}|}||{}|}}|}|}|}|{}||{{|{||}~|{|{|||{|{|||}|{||||{|{||{||{||{|{{||{|{||{|{|{{|}{|}{|{|}|~{{|{|~|}|{|}||{|}||}{|}||{|}}||{|{||{|{|{{{{{|}{{{{{||{{{{|||}{{||{|{|||{z{|||{{{{||{{{{{|{{{{{{{|{|}{{{{|||{|{{|||}{|||||||||||{|||{|{||||{{|{||||{|{|}{|}z|{|}||{}|{|}~}|}||||}|}~|}{|}~|{|}}~|}|}|~|}||}|}|}|~|}|}|}~~|}|}~|~}|}|}||}||}|}}||}|}|||}|}{}|}|}||{}||{|||}|}}}|}|}|}}|}|}||}}|}||}|}}}|}}|}|}}}||}|}|}}}}|}|}|}}||{|{}}|{|{|}||||{||}|||||||}||||{|||}||||{|||}||{|{|||}|||{{{}}|{{{{}|||{{||}|||{|||}||||{{||}|||{{{||}||{{{{||}|||{{{}}|{{{{}|||{{||}|||{|||}||||{{||}|||{{{||}||{{{{||}|||{{{}}|{{{{}|||{{||}|||{|||}||||{{||}|||{{{||}||{{{{||}||||||||||{|||{||||{{|}||{{|||||||||}|||||||}||||{|||}||||||||}||||||||}|||{{{|{||{{||||||||||||||{{||||||{||||||||||||||||||||||||||{{{|||{{{{|||{|||}|||{|||}||||{{||}|||{{{||}||{{|{||}|||{{{{|||{{{{|||{{|||||{{{{|||||{{{{|||||{{{{||||{{{{{|||||{{{{{||{{{{|{{{{|||||{{{{|||||{{{{|||||{{{{||||{{{{{|||}||}|}|}|}|}|}}|}|}|}}|}||}|}}}|}}|}|}}}||}|}|}}}}|}|}|}}|}||{||||||||||}||||||}||||{|||}||{{||||}|{||||||}||||||||||{{{{}{|{{{{|||{{{||||{{{{|||||{{{{|||||{{{{||||{{{{{|||||{{{{|||{{{||||{|{||||{|{{|||||{{||||||||{||||||{|{||||{|||{{{|||{{{{{|{{{{||}|{{|||}||{{{{||}||{{{{||}||{{{{||}|||{{{{{{{{{{{{|{{{{|||{{{{{||{{{{{{{||{{{{{{{||{{{{{{{||{}||{|{|}|||{|}}|||{|||}|||{|||}||{|||||}||{|||||}{|{|||||||{|{{|||||{||||||||||||||||{{|||||{{||||||{|||||||||||||||}|{{{{|||{{{{{||{{{|||||{{{{||||{{{{|||||{{{{||||{{{{{|||||{{{{|||{{{{||||{{||||||{{{|||||{{|||{||{{{|||{|{{{{|||{||{{{{}{|{{{{|||{{{|||||{{{{||||{{{{|||||{{{{||||{{{{{|||||{{{{|||{{{||||{|{|||||{|{{||||{{||||||||{||||||{|{||||{|||{{{|||{{{{{||{{{||}||{{|||}||{{{||}|||{{{||}||{{{{||}|}||{{{|}||{{{}}||{{|||}||{{{|||}||{||||}|{{{||||}{{{{||||||||||{{{||||{{{|}||{||||}||{|{|||}||{{|||}|{{{||||}{{|{||||||{{|{|||{|{||||||{|||||||{{||||||{{{||||{{|{||||{|{|{||{}|{{{{|||{{{{{||{{{|||||{{{{|||||{{{{||||{{{{||||{{{{{|||||{{{{|||{{{{||||{{||||||{{{||{|||{{|||||{{{|||{|{{{{|||{||{{{{}{|{{{{|||{{{|||||{{{{||{||{{{{||{|{{{{||{|{{{{{||{||{{{{|||{{{||||{|{|||||{|{{|||||{{|||||||{||||||{|{||||{}||{{{|}||{{{}}||{{|||}||{{{|||}||{{||||}|{{||||}{{{{|||||||{||{{{{|||{{{{|||{{{|||||{{{{|||||{{{{|||||{{{||||{{{{{||||||{{{|{||{{{|}||{{|||}||{|{{||}||{{{{||}|{{{{||}{{{{{{||||{{|{|||{|{||||||{|||||||{{||||||{{{|||||{{|{|||{|{|{||{}|{{{{|||{{{{{||{{{|||||{{{{||{||{{{{||{||{{{{|{|{{{{{||{||{{{{|||{{{{||||{{||||||{{{||{|||{{|||{||{{{||||{{{{|||{||{{{{}{|{{{{|||{{{|||||{{{{||{||{{{{||{||{{{{||{{{{{{||{}||{{{|}||{{{}}||{{|||}||{{{|||}||{{||||}|{{{||||}{{{|||||||{|{|{{{{|||{{{{|||{{{||{||{{{{{||||{{{{|||||{{{{||||{{{{|||{|{{{{|{|{{{{{||{{{|{|||{{{{{{{||{{{{{{{||{{{{{{{|{{{{{{{|||{{{|{||{{{|}||{{|||}||{|{|||}||{{{|||}|{{{{{||}{{{{|||||{{|{|||{|{||||||{|||||||{{||||||{{{|||||{{|{||||{|{|{|{}|{{{{|||{{{{{||{{{|||||{{{{||{||{{{{||{||{{{{||{|{{{{{|{||{{{{|||{{{{||||{{||||||{{{||{|||{{|||{||{{{|||{|{{{{|||}||||||||||||}}}||||}}||}|||}}||}|||}|||}|||||||}||||}|{|||{|{|{||}|||||}|||||||}||{||||}{|{|||||{|{||||||{{{|{{|{{{~||||{|||||{{|||||{{{|||{{{{{|||{{{{{||{{|{{{|{{|{{{||{|{{||{|{{{||{{|{{{||{{{{{{||{{{{{{||{{|{{{|{{|{{{||||{{||{|{{{||{{|{{{||{{{{{{||{{{{{{||{}|||||{||{||}|||}|{|}|}|}}}|}||}}||||}|}}||}|}|}|}|}|}|}|}|}||||}{{{{|||{{{|~|}|{|||}|{{||||}{{{||||{{|{|||{|{|{||||}{{{{||{{{{{~||{{|||}{{{||||}{{{||||{{{{||{{{{{{||{|}{{{{||{{{{{~|||{|||}{{{||||}{{{||||{{{{||{{{{{{||{|}{{{{||{{{{{~|{{{|||}{{{||||}{{{||||{{{{||{{{{{{||{|}||}|}|}|}|}}}}}}||}}}||||}}}|||}|}}||}|}|}|}|}|}|||{|{{{{|{{{{{{||||{{|||{{{||{||{{{||{|{{{{||{{{{{{||{{|{{{{|{{{{{{||{{{{||{{{{||{{|{{{||{{{{{{||{{{{{{||{{{{{{{|{{{z{{||{{{{||{{{{||{{{{{{||{{{{{{||{{{{{{||{|}|||||{{||||||}}||||}}|||||}}||||||}||||||||||||||||}||||}|}||||~}}|||||}||||||}||{||||}{|||||||||||||||||||||||||||||||}|||||}||||||}|||||||}|||||||||||||||{|{{{{|{{{{{{|||||{||||||{||||{{{||{{{{{{||{{{{{{||{||{{{{|{{{{{{|||||{|||||{{||{|{{{||{|{{{{||{{{{{{||{{|{{{{|{{{{{{|||||{|||||{{||{{{{{||{{{{{{||{{{{{{||{||||||{{{||||~|}}||||}}|{||||}}|||||}||||||||||||||||}||||}|}|||||}}|||||}|||{{||}||||||}{|||||||||||||||||||||{{|{{|{{{||}}|{||}}||||||}}|{{||}{{{{|||{{{{{||||||||||||||||||}|||||}|||||||}||||||}|||||||||||||||{|{{{{|{{{{{{||||{{||||{|{||{||{{{|||{{{{||{{{{{{||{{|{{{{|{{{{{{||||{{||||{{{||{||{{{||{{{{{||{{{{{{||{||||||{{{||||{|}}||||}}|{||||}}{|||||}|||||||||||||||}||||}|}|||{|}}|||||}|||||||}||{||||}{{||||{{|{|||||||{{|{{{{{{{|{{{|||||{{{|||{{{{|||{{{|{|{{{{|{|{{{{{{{|||||{{|{{|{{{||}}|{||}}||||||}}|{{|{|}{{{{||{{{{{||||||||||||||||||}|||||}|||||||}|||||||}||||||||||||||{{{{{{|{{{{{{||||{{||{|{{{||{{|{{{||{{{{{{||{{{{{||{|||||||{{||||||}}||||}}|{||||}}{|||||}{||||||||||||||}||||}{}|||{|}}|||||}|||{|||}||{||||}{|{||||||{|||||{{{{{|{{{{{{{{{{{||||{{{{||{{{{{|||{{{{{||{{{{{{|{{{{{{|{|{{{{|{{|{{{|||||{|||||{{||{||{{{|{{{{{{{||{{{{{||{||||{{|{{|{{{||}}|{||}}||||||}}|{{|||}{{{{|{|{{{{{|||||||||||||||||}|||||}|||||||}|||||||}||||||||||||||{{{{{{|{{{{{{||||{{||{|{{{||{{|{{{||{{{{{{||{{{{{{||||||||z~~|||}~|~}|~||~}|||||~||||||||||||||||||||||||}|||||~~}|}}~}~}|~||~}|||}|~|||}|}|||}|}||||}|}||||||}|||}~~|||}~}~}|~||~}|}|||~|||}|||||||}||||||||}|||||||||~~{||}~|~}|~||~}|||||~||||||||||||||||||||||||||||||~~|{|}~|~}|~||~}|||||~||||||||||||||||||||||||||||||||||}||||{|||||||~}|~||~}|||||~|||}|||||||}|||||||||||||}|||||{~}|}}}~}|~||~}|||}|~|||}|}|||}|}||||}|}||||||}||||}~{|||}~}}|~||~}|}|||~|||}|||||||}||||||||}||||}|||||||{||}~|||~||~}|||||~|||}|||||||}|||||||||||||}|||||||{||}~|||~||~}|||||~|||}|||||||}|||||||||||||}|||{|{~|||||}~}|||~}|||||~|||||||||||||||||||||||||}||}|||}|}|}|}~}}|}~}||}|}~||}}}|}|}|}}}||}|}|}|||||}|||}|}||||}~}|}|~}|}}|}|||||}}}|||||}}}||||||}|}|||}|||||~{|{|}~}|||~||||||||~|||||||||||||||||||||||||||||||||||||}||||}||||||||||||||||||||||||||||||||||}||||||||||}||}}||||}}||||}|||}|||||||}|||||||||||{|}|||{|||||{||}~|||||~|||{|~|||{|||||{||{{||{|||{{{|||||||||||||}}|}}|}||}}||||}|||||||||||||||||||||||||}||||||||{{|~}|||~||||||||||||||||||||||||||||||||||}||||||||||}}||}|}|||}||||||||}|||||||}|||||||||||||}|||||~{{{{}~}|||~||||||||||||||||||||||||||||||||||}|||{||||||}||}|||||}||||||}||}|||||||}||||||||||||||||||{||{|||||}}||||}}|||||}||||||||||||||||||||||||}||||||||||}}}~||}||~||||||~||||||||||||||||||||||||||||||{{{{{||||||||||||||{||||||||||||||||||||||||||}||||||{||||~}}}|~||}}|||||}|||||||||||||||||||||||||||||{||{||}}||||}||||||||||||||||||||||||||||||||||}||||||||{||}||}|}|||}|||||||||}||||||}|||||||||||||||||{{|||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}|}}|}||}}|||||}||||||||||||||||||||||||}|||||{|||{||}~|||||~||||{|~|||{||||||||||||||||||{{{{{{{{{{{{{|||||{||||||{{{|||{{{{{|{{{{{{|{{{{{{{{||}|{{|||{|{{|~}|||~|{|||{|{|||{{{|||{{{{|||{{{{{{|||||||||||||||}}|}}|}||}}|||||}||||||||||||||||||||||||||||||||{{||||||||||||||||||||||||||||||||||||||||||}||||||||{||}||}|}|||}|||||||||}|||||||}|||||||||||||||||||||||}}||||}||||||||||||||||||||||||||||||||||||||||||{|||||}}||||}}|||||}||||||||||||||||||||||{|}|||{|{|||{||}~|||||~||{|{|~|||{|||||{||{{||{|{{{{{{{{{{{{{{{{{{|||{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{{{{||}|{{|||{|{{|~}||{~|||||{|{|||{{{|||{{{{{|||{{{{{|||||||||{||{||}}||||}|||||||||||||||{||||||{|||||||||||||||||||||||||}}||||}}|||||}||||||||||||||||||||||||||||||||{{{|||||{|||||||||||||||||||||||||||||||||z{|{|{z|{{|{z|{||}|{|{}{{|{{{{|{{{{{{|{{{{z{|{{{{z{z{{|||{{|{||{||||~}|||{~{||{{||||{|{{{|{{|{{{|{{|{{{{{|}||{{|{{}{||}||}|}|{}}||{}|||{}{||||{}{{{||{}{{{{{|||}||||{|{||}}}|}}}||}}|||}||||}|}||||}|}||||}|}|||||||||||||||||}||}|}||}}||||||||||||||||||||||||||||{|{|{|}||{{{}||{{{{||{|||~}}||{~|{|{||{|{}|{{{|{}|{{{|{{|{{{{{{{}||{{{{||{{||~}}||{~|{|{||{|{}|{{{|{}|{{{|{{|{{{{{{{}||{{{{|}{{}|~}}||{~|||{}|||{}|{{{|{}|{{{|{}|{{{{|||}||}|}|{|||}}}}}}||~}|}||||}|}||||||}|}||||||}|}||||}|||||||{||}}||}}||~}||||||||}||||||}||||||||||||zzz|{|zzzzz|{zzz|||z|{}z{|{{z{|{{zzz{|{{z{zz|{{z{zzz{{{{{|{z{{z|{{||||}||{}{{|{{{{|{{z{{{|{{z{{{|{{{{z{{|}||}|||}|}|}|}}}}}}}}|}}}||||}|}}|||||}}}||||||}|}||{||}||{{|{{|{|}}}||}}|{}||{||||{{{||||{{||{||{{{|{{{{{{{{|{{{{{|{|||||}|||{}{|{{|{||{{{{{|{{|{{{|{{{{{{{{{{|{|{{{{{|{|||||}||||}{|{{|{||{{{|{|{{|{{{|{{{{{{{|||||||||||||||}||||}|||}||||||||||||||||||||||||||||||||}|||||}|}|||}}~||}||~}|||||||||||||||||{|||{||||{|||}|||||{{|||}}||}}}|||}|||||||}||||||}||||||||||||{{{{{|{z{{{|{{|||||||||||{|{{||{{{{|{|{{{{{{|{{{{{{{|||||||||||{|||}||}|}||}}|||||||||||||||||||||||||||{|||||{{|{{|{|}}|||}}|{|}||{||||{{||||{{||{||{{{|{{{||{|||}|||||}|}|||}}|||}|||}||{{|||||||||||||{||||||||{|||||||||{|{||}}|~|}}||~}|||||||||||||||||||||||||||{||}||{{|{{|{||}||}|}|{|}||{|{||{}{|||{}{|{||{|{|{{{{{{{{|{{{{{|{{|||{||{|{|{{|{{{{|{{{{{|{{z{{{|{{{{{{{|||||||||||||||}||||}|||}|||||||||||||||||||||||||||{|||||{{|{{|{|}}|{}}}|{}}||{||||{{{||||{||{||{{{|{{{{{{{{{{{|{{{{|||||{||{{|{{{{{|{{|{{{{{{{|{{{{{{{{{{{|{{{|||}|||||}{}|||}}|||}|{|}||{||||||{|||||||{||||{|{{{|||||||||{{{||}}|||}}|||}||||{|||||{||||||||||||||||{{{|||{{|{|{{||||~||||{~{{|{{|{||{||{{|{{||{|{{||{{{|||||||||||||||}||||}|||}|||||||||||||||||||||||||||{|||||{{|{{|{|}}|{|}}|{|}||{||||{{{||||{{||{||{{|{{{{{{|{|{{|{{{{|||||}|||{}{{|{{|{{|{{{{{|{{|{{{|{{{{{{{{{{{{{z{{{{{{|||||||{{{|{{{{{{{{{z{{{{{{{{{{{{{{{{{|{{{{|||}|||||}{}|||}}|||}|{|}||{{|||||{||||||||{|||{{||{|||||||||{{|||}}|||}}|||}||||{|||||{|||||||{||||||||{{{|{|{{|{{{{{||||||||{||{|{{{{|{{{|{{|{{{|{{|{{{|{{zz{{{zzzz{z{zz{{||z{{{{{{{{{{{{{{{{{{{zz{{{{{{zz{{{{zzzzzz{|{zzzz{{|zz{{||z{{{{{{{{{{|{|{{{{|{zz{{{|{{zz{{|{zzzzz{{||{z{z{{{z{{{|~{{{|{{{{{|{{{|{{|{{{{z{|{{{{z{|{{{{z{z{{|||{{|{{{|{|{}|||{}|||{}|||{||}|||{{{||||{{{{{||{{{{{{{{{|}{{|||||{||}}|||}|{||}{|{|||}{|{|||{{|{|||{{|{|||{{{{{{{{{{|{{}{{{{||{{{{||{{z{{~|{||{|{|{|{|{{{{|{|{{{{|{|{{{{|{|{{{{{{{{{||{{{{||{{z{{~|{||{|{|{|{|{|{{|{|{{{{|{|{{{{|{|{{{{{{{{{||{{{{||{{|{{~|{||{|{|{|{|{{{{|{|{{{{|{|{{{{|{|{{{{{{{{{||{{{{|||{|{|~|{||{|{|{|{|{|{{|{|{{{{|{|{{{{|{|{{{{{||||}||||}|{|||}}}|}}|||}}}|||||}}||||||}|||||||||||||||zzz{{{{zzz{{{z{zz{|z{{{{z{z{{{zz{z{{{{zzz{{{{{zz{{{{{z{zzzz{{{{zzz{{{z{zz{|{{{{{z{z{{{{z{z{{{{zzz{{{{{zz{{{{{z{zz{z{|{zz{z{{{zzz{||{z{{|z{{{{{z|{{{{{{{z{{{{{{z{{{{{{z{z{{||}||{|{||}{|{}|~|{}||{}||||||}||||{||||||{|{||||{|{|{||}||}|}|}|}|}|}|}}}}|}}||}}}|}||}}}|}|}|}}|}|}|}||}|}|}|z{z{{{{z{z{{{z{{{{|{{{{{{{z{{{{|{{{{{{{z{{{{{{z{{{{{{z{zz{z{|{{z{z{{{z{{{||{{{{{|{{{{{z|{{{{{{{z{{{{{{z{{{{{{z{zz{z{{{{z{z{{{z{{{{|{{{{{{{{{{{z|{{{{{{{z{{{{{{z{{{{{{z{zz{{{}|{z{{|{|{{{{{|{{{{||{{{||{|{{|||{{{{|||{{{{|||{{{{{z{z|||{z|{{||z|{}|~|{}|{|{}{||{|}{|||{|z{|||{|z{|||{|z{z||{{||}|{{|{}|}{||}}~||}||||}|||||}||||{||||||{|{{|||{|{{{{{||||{{|{|{|{|{}|||{}|||{}|||{|}||||{||||||{|{{||{{|{{{z{z{|{{z{z{{{z{z{||{z{{{|z{{{{{z|{{{{{{z{{{{{{z{{{{{{z{zzzz{{{zzzz{{{zzz{{|zz{{{{z{{{{{z|{{{{{zz{{{{{zzz{{{{zzzzzz{{}|zzz{|{|{zz{{|z{{{||{{{{||{|{{||{z{{|||{{{z|||{z{z{z{z|||{z|{{{{z|{}|||{}|{|{}{|{{z|}{|{{|z{||{{|z{||{{|z{z{{||||{{|{{{|{|{}|~|{}|||{}||{|||}||{{{|||{|{{{{|{|{{{{{{{{{{||}|{{|{}{}{||}}|||}||||}|||{||}|||||||||||{{{||||{{{{{{{|||{{|{{{{{|{}|~|{}|{|{}{|{{{|}{|{|{|{|{|{|{{|{{{|{{{zzz{{{zzzz{z{zzz{{|zz{{{{z{{{{{z|{{{{{{zz{{{{zzz{{{{zzzzzz{{}|zzz{|{|{zz{{|z{{{||{{{{||{|{{{||{z{{||{{{z|||{z{z{z{z|||{z|{{{|z|{}|||{}|{|{}{|{{z|}{|{{{|z{|{{|z{||{{|z{z{{||||{{|{{{|{|{}|{|{}||{{}||{{||}||{{{{|||{{{{{|{{{{{{{z{{{{|{z{z{{|z{{{|~{{{{{|{{{|{|{|{{|{{{{{{|{|{z{|{|{{z{z{{{{{{||}|{{|{}{}{||}}|||}||||}|||{{|}||||{||||||{|{|||{|{{{{{{|||{{|{{{|{|{}|||{}|{|{}{|{{{|}{|{|{|z{|{|{|{|{|{|{{{zz{{}|zzz{|{|{zz{{|z{{{||{{{{||{|{{{||{z{{{||{{{z||{z{z{z{z|||{z|{{{|z|{}|||{}|{|{}{|{{z|}{|{{{|z{|{{{|z{|{{|z{z{{||||{{|{{{|{|{}|||{}||{{}||{{||}||{{{{|||{{{{{{|{{{{{{z{{{{{{z{z{{{z{{{{|{{{{{{{{{{{{z|{{{{{{{{{{{{{{z{{{{{z{zz{z{{|{z{z{{|z{z{|~{z{{{|z{{|{|{|{{|{{{{z{|{|{{z{|{|{z{z{{{{{{{||}|{{|{}{}{||}}|||}||||}|||{{|}||||{||||||{|{{|||{|{{{{{|||{{|{{{{{|{}|||{}|{|{}{|{{{|}{|{|{|z{|{|{|{z|{{{|{{{{{{{{{{{{|{{{{{{{{{{||{{{{{|z{{{{|{{{{{|{{{{{|{{{{{{{{{{{{{{||{{{{{{{{{{||{{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{z{{{{||{{{{{{{{{{||{{{{||z{{{||{{{{||{{{{||{{{{{{{{{{{{{{{{{{{{||{{{|||{{||||{{|||||{{||||{{{{||{{{{{|{|{|{|{|||{|{||{|{|}||{||}|||||}|||{|}|||{|}|||{|{{{{|{{{{{{|{|{{z{z{{{{z{z|{{{z{z{{z{{|{{{{{|z{{{{|{{z{{|{{z{{|{{z{z{{{{{{{{{{|{{{{{{{{{{{|{{{{{|z{{{{|{{{{{|{{z{{|{{{{{{{{{{{{{{{|{{{{{{{{{{||{{{|{|z{{|{|{{{{{|{{z{{|{{{{{{{{{{{{{{{||{{{{{{{{{||{{{|||{{{|||{{{|||{{{{{|{{{{{{|{{{{|{|{|{{{|{|{|{|{|{{||||{{||||{|{|||{|{|{|{|{|{zzz{{{{zzz{{{z{z{zzz{{{{z{{{{{{{{{{{zz{{{{{zz{{{{z{zzzz{{{{zzz{{{z{z{{z{{{|{z{{{|{{{{{|{zz{{|{{zz{|{{z{z{{{{{{{{{{||{{{{{{{{{{|{{{{||{{{{||{{{{||{{z{{|{{{{{{|{{{{|{|{|{{{|{||{|{||{{||||{{||||{|{|||{|{|||{|{|{||||||||||||}{||||}||||||||}|||||}|||||}|||||||||||||{{{{{{{{{{|{{{{{{{{{{{{|{{z{|z{{{{|{{{{{|{{{{{|{{{{{{{{{{{{{{{||{{{{{{{{{{{|{{z||{{{{||{{{{||{{{{{|{{{{{{{{{{{{{{z|{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|{{{{{{{{{{{||{{{{|{{{{||{{{{||{{{{||{{{{{{{{{{{{{{{|||{{{||{{{|||{{|||{{||||{{{|||{{{{||{{{{{{|{{{{|{{{{{|}{{{{||{{{|||{{||||{|||||{{||||{{{|||{{{{{{{{{{{{{{||{{{{{{{{{{||{{{{||{{z||{{{{||{{{{||{{{{{{{{{{{{{{z|{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|{{{{{{{{{{{|{{{{{|{{{{{{{{{{|{{{{{|{{{{{{{{{{{{{{{{|||{{{||{{{|||{{||{|{{|||{{{|||{{{{||{{{{{{{{{{{{{{{|{{{{{{{{{{{{|{{{{|{z{{{||{{{||{{{{{|{{{{{{|{{{{{|{{{{{|}{{{{{{{{{{||{{{{||{{{{|||{{|||{{{|||{{{{{{{{{{{{{z|{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|{{{{{{{{{{{|{{{{{{{z{{{{{{{{{{{{{{|{{{{{{{{{{{{{{{{|||{{{||{{{||{{{|||{{{||{{{{{||{{{{|{{{{{{{{{{{{{{{{|{{{{{{{{{{{{|{{{{{|{{{{|{{{{{||{{{{|{{{{{{{{{{{{{{{|{{{{{{{{{{{{|{{{{|{z{{{||{{{{||{{{{|{{{{{{|{{{{{{|{{{{{|}{{{{{{{{{{||{{{{||{{{{|||z{{|||{{|||{{{{{{{{{{{{{{|{{{{{{{{{{{|{{{{{{{z{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||{{{||{{{||{{{|||{{{|||{{{{|{{{{{{|{{{{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{z{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|{{{{{{{{{{{||{{{{{|{{{{|{{{{{||{{{{{|{{{{{{{{{{{{{{|{{{{{{{{{{{{|{{{{|{z{{{||{{{{||{{{{||{{{{{|{{{{{{{|{{{{{|}{{{{{{{{{{||{{{{||{{{{|||z{{|||{z{|||{{{{{{{|{{z{{{}{{{{{{||{{{|{{{{{||{{{{|||{{{|||{z{|||{{{{{{|{}{{{{{|}{{{{{{||{{{|{{{{{||{|{{|||{{{|||{{{|||{{{{{||{}{|{|{|}|{|{|{|||{||{{{|{||{||{||||{{||||{|||||{|{{||{}}|{||{}|{|{|}|}|{|}|{{||}||{||}|||||}|||{|}|||{|{{}||}|}{}||}||}{}|||}|}}}{|}|}}||}|}}|}||}}|}|}|}|}|}||}~|{~}|}~|}|~}|}~~~}~}~}|~}~~}~|}~~}~}~~~}~}~}~}~}~}~{|{|}||{|||{|}||}|}|}z|{{{}}|z|{|}||z|z|}|{|}|{{|{}|{{|{}|{|{{}|{|{|}|{|{|{{|{|{}}|{|{|}|{{|{|}|{|}|{{|{}|{||{}|{|{{}|{|{|}|{|{|{{|{{{}}|{|{|}|{||{|}|{|}|{{|{}|{{|{}|{|{{}|{|{|}|{|{|{{|{|{}}|{|{|}|{|{{|}|{|}|{{|{}|{||{}|||{{}|||{|}|||{|{{}{|{}}}{}{|}|{}{}|}}{}}}{{}{}}||}{}}|}{{}}|}{}}}|}{}{{}|||~~}{}|}}}|}{}}~}|}~}||}|~}||}|~}|}||~}|}|}~}|}|}|zzz{{|{{zzz{|{z{z{z||z{|{{z{{||{{{{||{zz{||{{zz||{{z{zzzz{{|{{zzz{|{z{z{{||{{|{{z{{||{{{{||{zz{||{{zz||{{z{z{{{|{}{{{{{|}{{{{{{||{{||{{{{||{|{{|||{{{|||{{{|||{{{{{||||~~|{|||}|||{|}|~||||||||~|||||~|||||~|||||~||||||||}|}~~|||}}}}|||}}~~||}~}|}}~|}|}}~|||}}~|||||~||||||}{|{|{}{|{|{|}|{|{|{|||{||{{{{||{||{||{|{{||{|{|||{|{|{{|{|{}{|{|{|}|{|{|{|||{|||{{{||{||{||||{{||||{|||||{|{{|{|{}{|{|{|}|{|{|{|||{||{{{|||z||{||{|{{||{|{|||{|{|{{|{|{~~|{|{|}|||{|{|~|||||{||||{|||~|||{{~|||||~||||||{}||{}}}{}||}|{}{}}|}}{}}}{{}|}||}|}}|}||}}|}{}}}|}{}{||||}~~||||}}}|||}}~~||}~|}|}|~||}|~|||||~|||||~||||||}|{{{|{}{{{{{|}{{{{{{||{{{||{{{{||{|{|||{{{|||{{{|||{{{{{{{|{}{{{{{|}{{{{{{||{{{|{{{{{||z|{||{z{{||{{{{||{{{{{{|{|{~~|{|{|}|||{|{|~|||||{|||||{||||||{{~|||||~||||||{|||{}{|{|||}{{|{|}|}|{|||{{|||||||||{|||||{|{|||{|{|{{}{|{}}}{}{|}|{}{}||}}{}}}{{}{}|||}{}}}{{}}|}{}}}|}{}{||||}~~||||}}}|||}}~~||}~|}|}|~|{|}|~||||~|||||~|||||||||{{{|{}{{{{{|}{{{{{{||{{{|{{{{{||z|{{||{z{||{zz{||{{{{{{|{|{~~|{|{|}|||{|{|~|||||{|||||{|||||||{{|||||~||||||{|||{}{|{|||}{{|{|}|}|{||{{{||||||||||{||||{|{|||{|{|{{|{|{}||{|{|}|{|{|||||{|||{{|{||{||{||{|{{|||{|||{|{|{{}{|{}}}{}{|}|{}{}{|}}{}}}{{}{}|||}{}}{}{{}}|{}}}|}{}{||||}~~||||}}}|||}}~~||}~|}|}|~|{|}|~|||||~||||~|||||||||{{|{|{~~|{|{|}|||{|{|~|||||{|||||{|||||||{{||||||||||||{|||{}{|{|||}{{|{|}|}|{||{{{||||||||||{|||||{|{||{|{|{{|{|{}||{|{|}|{|{|||||{||{{{|{||z||{||{|{{||{|{||||{|{{{{|{}{{{{{|}{{{{{{||{{{||{{{{||{|{{||{{{{||{{{{||{{{{{}{|{}}}{}{|}|{}{}{|}}{}}}{{}{}|||}{}}{}{{}}|{{}}}|}}{||||}~~||||}}}|||}}~~||}~|}|}|~|{|}|~|||||~|||{|~||||||||{{zzz{z{z{z{{z{z{|z}{z{{|z{z{|{{z{|{{{z{|{{z{{|{{z{zz{~|{{z{z{|z{{{|z}{{{{~{{{{|{{{{|{{{{{|{{z{{|{{z{zz{||{{z{z{{z{{||z~{{|{|{|{{|{|{{|{{{{{|{{z{{|{{z{zz{{}{{z{{{|{{{{|{~{{{|~{{{{}{{{{}{{{{{}{{z{{}{{{{z{z|||||{}||{{}||||~}|||}||{{|||{{}|}|{{}|}{|{}|}{|{zz{|{{z{zz{{{zz{z}{{{{{{{{{|{{{{|{{{{{|{|{z{|{|{z{zz{|{{zzz{z{{zz{z}{{{{{{{{{|{{{{|{{{{{|{|{z{|{|{z{zz{~|{zz{{|{z{z{{}{{{{~{{{{|{{{{|{{{{{|{|{z{|{|{z{z|{||{|z|{{{|{|{{~|{|{|{|{{|{|{{|{|{{{|{|{|{|{|{|{z{{|~{|{~||{~|~||}~|~|}|~{{|{~{{|{~{{{|{~{{{|{~{|{{zzzzz{zz{|zzz{{zzzzz{zzzz{zz|zzzzz{z{{z{z{{{zzz{{{zzz{{{zzzzzzz{{zzzzz{zzzzzzz}zz{{z{z{|z{z{|{zzz{|{zzz{|{zzzzzz{{{{zz{z{{zzzz{z}zz{{z{z{|z{z{|{z{z{|{zzz{|{{zzz{{|~}|{{{|||{{||||}{|||||||||||||{{||||{|{{||{|{{{zz{||{zz{z{{z{{|{z}{{|{{zz{|z|{{|{{{{{|{{zz{|{{zzzzz{||{zz{z{{z{{|{z}{{|{{{zz|z|{{|{{{{{|{{zz{|{{zzzzz{||{zz{z{{z{{|{z}{{|{{{|z{z|{{{{{{{{{{{zz{{{{zzzz{{~}{{z{z{|{{{|{z~{{|{~{|{}{|{{}{{{{{}{|z{{}{|{{z{{|{||{|{||||{|||||~||||}||{|||{||{|{{||{|{|||{|{|{zz{{{{zz{zz{zz{z{z}z{z{}{z{{|zz{|{z{z{|{zzz{|{zzzzzz{{{{zz{zz{zz{z{z|z{zz}{z{{{zzz{{z{z{{{zzz{{{zzzzzz{|{{zz{zz{zz{z{z}z{z{}{z{{{zz{{{{{z{{{|zz{{{|{zzz{{~|{z{{{{|{{|{{{~{|{{~|{{{{{{{{{{{{{|{{{{{|{{{zz{{{{{~||{{{{}|{{{||}}{{|{~{||||}||||}{|||}{{{||}{{{{z{{||{z{{{{{{{|||{~{||{}||{{|{|{{|{{{{|{|{{{|{|{zzyz{{{zzz{zz{z{z{{z|{z{z{z{z{zz{z{{{z{z{{zzz{{{{zzzzz{|{zzz{zz{z{z{{z}{z{{}z{z{{z{z{{{{{z{{|zz{{{|{zzzz{|{{z{{{{{{{|{{{|{|{{||{{{{{{z{{{z{z{{z{z{|{{{zzz{{~|{zz{zz|{{{||{~{{|{~{|{{{{|{{{z{{{{{{z{{{{{zzz{{{z{{||{{{{{{|{{{||{}{{|{}{|{||{|{||{{{{||{{{||{{{{zz{{~|{z{{{{|{{|{|{}{|{{~|{{{{{{{{{{{{{{{{|{{{{|{zzzz{|{zzz{zz{zzzz{z}zzz{}zzz{{zzz{{{{{z{{{|zz{{|{zzzz{|{{z{{{{{{{|{{{|{|{{||{{{{{{z{{{z{z{{{{{z{{{{zzz{{||{zz{zz{{{{||{|{{|{{{|{{{z|{{{z{{{{{z{z{{{{zzzz{{~|{zz{zz|zz{{{z~{{{{~{{{{{{{{{{{{{{{{{{z{{{{zzz{{z{z{{||{{{{{{|{{{||{}{{|{}{|{||{|{||{{{{||{{{{||{{{{z{{|{{z{{{{{{{|{|{}{|{z{|{{{{{{{{{{{{{{{{|{z{{{|{z{{{{{{{z{{|{z{{{{|{{{{{{{{{{{{|{{{|{{{{{|{{z{{|{{{{z{{{|{{{{{{|{{{{{{||{{{{{{{{{{{|{{{|{{{{{|{{{{{|{{{{{z{{{z{{z{{|{z{{{{|{{{{{{{{{{{{|{{{|{{{{{|{{z{{|{{{{z{{{{{{{{{{|z{{{{{||{{{|{{{{|}{|{{|}{{{{|}{{{{|}{{{{{{{{|{{|{{{|{{|{{{}}|{|{|{|{|}{|{{|}}{{{{}}|{{{}}|{|{{{{{||{{{{{|{{{{{{}}{{{{{{{{{{||{{{|}{{{{|}|{{{|}{{{{{{{|{{{{{{|{{{{{{}}{{{{{{{{{}{{{{{}|z{{{}|{{{{}|{{{{{{{|{{{{{{{{{{{{{}}{{{{{{{{{}{{{{{}|{{{{}|{{{{}|{{{{{{{||{{{{{|{{{{{{}}{{{{{{{{{}{{{{{}|{{{{}|{{{{}|{{{{{{{||{{{{{|{{{{{{}}{{|{{{|{{}{{{{{}|{{{{}||{{{}||{{{{}|||||}{}|{{}{}|}}}{}}}{}{}}||}{}}|}|{}}|}{}|}|}{}{zz{z{z{{{{{|{|{{{{{|{{{{{{{{{{{{{||zzz{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{{|{{{{{{{{{{{{{||{zz{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{{{|{{{{{{|{{{{{{||{{{{{{{|}{{{{|}{{{{|}{{{{|}{{{{{{{{|}||{{{{||{{{|{|}{{|{{|||}|||||}|{{||}|{{{|}|{{{{{{{{|{{z{{{|{z{{{{||{{{{{{{z{z{{{{{{{{{{{{{{{{{{{zz{{{{{|{{{{{{|{z{{{{||{{{{{{{{}{{{{{}{{{{{}{{{{{}{{{{{{{{{|{{{{{{|{z{{{{||{{{{{{{{{z{{{{{{{{{{{{{{{{{{{z{{{{{||{{z{{{|{{{{{{|}{{{{{{{{{{{{{{{|{{{{{|{{{{{|{{{{{{{{|{||{{{||{|{|{|||{|||{|{|{{|{||{{{{||{|{{||{|{|{|{{{{||{{{{{|{{{{{|||{{{{{{{|{}{{|{}{{{|{}{{{{{}{{{{{{{{{|{{{{{{|{{{{{{||{{{{{{{{{}{{zz}{z{{{}{{{{{}{{{{{{{{{|{{{{{{|{{{{{{||{{{{{{{{{{z{{{{{z{{{{{{{{{{{{{{{{{{||{{{{{{|{{{{{{|}{{{{{{{{{{{{{{{|{{{{{|{{{{{|{{{{{{{{|{{{{{{||{{{{{||{{{{|{{{{}{{{{{{{{{{}{{{{{}{{{{{{{{{|{{{{{{||{{{|{||{{|{{{|{{{{{|{{|{{{{|{{{{{|{{{{{|{{{{{|{{{{{{|{{{{{{{|{{{{{{{{|{{{{{|{{{{|{{{{{{{{{{{{z{z{{{{zz{z|{zzz{{|{{z{{{z{{{{z{{{{{{zz{{{zz{{{{{zzzz{z{|{{zz{{|{{z{{{|}{{{{{{{{{{{{{{{{|{{{{|{z{{{|{{zz{{{{|{|{{{{|{{{{{{||{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{z{{{|{{zz{{|{z{{{{||{{{{{{{{{}{{{{{{{{{{{}{z{{}{{zzz{{{{|{{{{{{|{{{{{{||{{{{{{{{{{{{{{{|{z{{{|{{{{|{{{{{|{{{{{{|{{{{{{|{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{z{z{|{zzz{{|{{z{{{|}{{{{{{{{z{{{{{{{|{{{{{|{z{{|{{zz{{{{|{{{{{{|{{{{{{||{{{{{{{{{{{{{{{{{z{{{{{{{{{{{{{{z{z{|{{zz{{|{z{{{{|{{{{{{{{{{{z{{{{{{{{{{{{{z{{{{zzz{{{{|{{{{{{|{{{{{{||{{{{{{{{{}{{{{{{{{{{{}{{{{{}{{{{z{z{|z{{z{z|{{{z{{||{{{{{{{{{{{{{{{|{z{{{|{{z{{|{{{z|{{{z{{{|{{zz{{|{{z{{{{|{{{{{{{{{{{{{{{{{{{{{{{{z{{{{{{z{{{{{{{{{|}||{{{{|}{{{{{|{{{{{|{}{{{|{{|{{|{{{{{|{{{{{{{{||{{{{|}||{{{{|}{{{{{|{{{{{|{}{{{|{{|{{|{{{{{|{{{{{{{{|z}{{{|}||{{{||}{{{|}||{|{}|{}|{}|{{|{}|{{{{}|{{{{{{{|{{{{{{|}||{{{{|}{{{|{|{{|{{}{}{{{}{||{{}{|{{{|{|{{{{{|}{{{{{|}|~{{{{|}z{{{{~~{{{{~|}{{{~|{|{{~||{{{~||{{{|}|}~}}|}|}~~|}|}|}|}|}}~~|}|}~|}}|}~|}||}~|}|}}~|}|}||{{{{|{{{{{||{{{{{|}{{{{{|{{{{{|{{{{{|{{{{{|||{{{|||{{{z{{{|{{{{{{|{{{{{{}{{{{{|{{{{{{{{{{{{{{{{{{||{{{{||{{{{{{{}|{{{{||{{{{{|}{{{{{|{{{{{|{{{{{|{{{{{|||{{{|||{{{{{{{|{}|{{||{{|{|{}{|{|}||{|{}{{{|{}{{{{{}{||{{}{||{|{{||{{|{|{||||{|{||}||{|||{{|{|}|{|{|}|||{|}||{|{|||{|{{~|}~{{~{~|}~|~{~|}{~|~~~~|~|~~}}~|~~}~|{~~}~{~{~}~|~{zz{z{z{{|}z{{{{|}{}{}zzz{{{{{zzz{|{z{z{z|zzz{{{z{{{{{{{{{{{zz{{{{{zz{{{{z{zzzz{{{{{zzz{|{z{z{z|z{z{{{z{{{|{{{{{|{zz{{|{{zz{|{{z{z{{{{|{{{{{{||{{{{{|}{{{{|{{{{{|{{{{{|{{{{{|{{z{{|{{{{{{{{{||{{{{{||{{{{||}|{{|||{|{{}{{|{{}||{{{}||{{{|||{{{{|{{~|}|{|{~~~{|{~|}{|{~}~{~|}~{{~|}~{|{|}~||{|}~||{|{{{{{|{}{{{{||{{{{||}z{{|}||zz{{z{|{}{{{{{}{{{{{}{{{{{{{{{{|{}{{{{||{{{{||}{{{|}||{z{z{{|{}{{{{{}{{{{{}{{{{{{{{{{|{}{{{{||{{{{||}{{{|}{|{|{{z{|{}{{{{{}{{{{{}{{{{{{{{{{|{}{{{{||{{{{||}{{{|}||{|{}{{|{}}||{{}}||{{}|||{{{{{{{~|}{{{{|~~{{{||}{{{|}|~{|{}{{|{}~{{{{}~{{{{}~{{{{{|}|}~|}}|}|}~~|}|}|}|}|}}~~|}|}~}}|}~|}||}~|}|}}~|}|}||{{{{||{{{{{||{{{{{|}{{{{{|{{{{{|{{z{{{{{{{|{{{{{|{{{{{{{{{||{{{{{||{{{{{|}{{{{{|{{{{{|z{{{{{z{{{|{{{{{|{{{{{{{{{||{{{{{||{{{{{|}{{{|{|{{|{{}{{{{}||{{{}||{{{|||{{{{{{{~|{{{{{|~~{{{{|}{{{{{|~{{{{|{{{{{{{{{{~{{{{{~{{{{{{{{{||}{{{{||{{{{||}{{{|}||{|{}}{{|{}}|{{}}||{{}|||{{{|||}~|}||||}~~|||||}||||}~~|||}~|}||}~|||}~||||}~||||||{{{{{|{{{{{{||{{{{{|}{{{{{|{{{{{|z{{{{|{z{{{{zz{{|{{{{{{{{{|{{{{{{||{{{{{|}{{{|{|{{|{{}{{{{{}||{{}||{{{|||{{{{{{{~{{{{{{|~~{{{{|}{{{{{|~{{{{|{{{{{|{{{{{{{z{{~{{{{{{{{{|{}{{{{||{{{{||}{{{|}||{|{}|{{|{}|{{{{}|{{{}|{{{{{{{{{||{{{{{||{{{{{|}{{{|{|{{|{{}{{{{{}{|{{{}|{{{|||{{{|||}~|}||||}~~|||||}||||}~~|||}~|}||}~|{||}~|||}~|||||{{{{{{{|{{{{{{||{{{{{|}{{{|{|{{|{{}{{{{{}||{{{}||{{{||{z{{{{{~{{{{{{|~~{{{{|}{{{{{|~{{{{|{{{{{|{{{{{|{{z{{{{z{{{{{{|{}{{{{||{{{{||}{{{|}||{|{}|z{|{}|{{{{}|{{{{}|{{{{{{{{||{{{{{||{{{{{|}{{{{{|{{{{{|{{{{{|{{{{{|{{{{{|{{{{{{{{|{{{{{{||{{{{{|}z{{|{|{{|{{}{{{{{}{|{{{}|{{{{|||{{|||}~|}||||}~~|||||}||||}~~|||}~|}||}~|{||}~||||}~||||{{{{z{{{zzzz|{zzzzz{z}zzzzz|zzzz{|zzz|{|zz|{{z{z|{|zzzz{}{{zzz|{|zzz{{{}z{{z{~{{{z{|{{{|||{z||{z{z|||zzzz{{{{zzz|{{zzzz{z~zzz{z}zz{z~~z{z~{|{z~|{z{z~||zzzz{~{z{zz|{{{zzz{{~zz{~{~z{z{{~zz{~{|z{~|{z{{~||zzz||z|~}}{|{|~|}{|{|~~|{||}}{|{|~~|{|~||{|~}|{|{~}|{|zz{||{{z{|||z{z{{|}z{z~{~{{{z||z{{|||{z|}{{{z|}||zzzz{|{zzz{{{{z{{{{|{z{z{}{{zz{|{{z{|{zz{}{{zz{}|zzzzz{|{zzzz{zzzz{z{|zzzzz}{zzz{|z{z{|{zz{}{{zz{}|zzzzz{}{{z{{{|zz{{{{|{{{{{~{{{{{|{{{{|{{{|}{{{z{}|z{zz{~}{{{z{{}{{z{{{~{{{{{~{{{{~~z{{~}{{{~}{{{{~}|{zz{{{~}{|{{{|~}}{|{~~|}{{|~}|}{~~{}|~}|{|~}||{{~}|}{|z{|{{zzzz{|{zzz{{~{z{{{|z{zz{}{z{~{{zz~|{z{z~|{|zzz{||{zzzz{|{{{z{{~{{{{{}{{{z{}{{{~{{zz~|{z{z~|{|zzz{|{{zzzz{|{zzzz{~{zz{z|z{zz{}zz{~{{zz~|{z{z~|{|zzz{|}{{z{{{||z|{{|~{|{{|~|{|{{}{|{~||{{~||{{z~|||{{z{~~|~|z~|~~|~|~|~|~|~|}~|||~~|{|~|{{|~}{~{|~}|~zzzz{{{zzzzz{zzzzzz{{zzzz|zzzz{zzzz{zzzz{{zzzz{{{zzzyz{{{zzzyz{zzyzzz{|zzzz{zzzzz|zzz{zzzz{{{zzz{{{zzyzz{|{zzzzz{{{zzz{{|zzz{}zzzz{|zzz{{zzz{|zzzz{|{zzz|zz~|{{{zzz~{{zz{{{}z{{{{|{zz{~{{{|{z{{|{{zz{|{{zzzzz~|{{{{zz~{{z{{{{}z{{{{}{z{{~{{{|{z{{||{zz{||{z{zzz~|{{{zzz~{{zz{{{}z{{{{|{{z{~{{{|{z{{|{{zz{|{{zzzzz~||{{z{{~||{{|{{}{|{{|~|{{|~{{{||z{{|}{{z{|}|{z{{|~}{~{|{|~|{~|{|~~|~|~|}~|~|~|~|~~|~|~~|~|{~~|~|~zz{}{{zzzz{|{zzz{{|{z{z{}z{{z{|z{{{z{{{|{zzz{|{zzzzz{}{{zzzz{|{zzz{{|zz{z{}z{{z{|{z{zz{z{|{zzz{|{zzzzz{}{{{z{{{|{{{{{{|{{{{{~{{{{{|{{{|z{z|}{{zz{}|{zzz{~}{{{zz{~}{zz{{~~{{{{{~{{{{{~{{{}{{{~}{z{{~}{|zz{{{~}||{{{|~}||{}{~~{}{{|~}{|{~~{||~}{|~}{|{{~}||{|yz|{{z{zzz|{|zzz{{|zz{z{|z{z{z}{z|{zzz{{zzz{{{{zzzzz||{z{z{z|||{z{{{|z{{z{~{{{{{}{{|{|zz|}{{z{{}|{zzzz~|{z{zzz~{|zzz{~~zz{{{}z{z{{~{z|{{zz|{{zz{~{{|zzz{~|{z{zz{~{|zzz{{~zz{~{~z{z{{~{z|{{{z|~{z{{~|{zzz||z{~}|{|{{|~||z|{|~~|{||}}{|{|~~|{|~|}{|~}}{|~}}z{zzz|}{{{zzz|||zz{{||z{{~{~{{{{|}{{|||{{|||{z{||{|zzzz{|{zzz{z{|z{z{{{|z{zz{~{{{z{|z{z{|zzz|}{{z{}|{zzzz~{{zzzzz~{{zzz{~~zz{{{}z{zz{~{zz{{zzz{{zzzz{{|zzzz{|{zzzzz{{zzzz{{|zz{~{|z{zzz|{z{{{zzz{{{zzz{{zzzz{~}{{{zz{~|{zzz{{~zz{{{~z{{{|~{{{||{{{~|{z{{~|zzz{z{z{~}|{{{{|~||{{{{~~{{{{|}{{{{~~{{|~||{|~}|z{{~}|{zzz~|{{{zzz~{|zzz{|}zz{~{|z{{{|~{{||z{{||{{zz{|{{|z{z{{{{{{{{{z{{{{{{{{{{{|{{{{{{{{{{{{{{{{{|{{{{{|{{{{{z|{{{z{{{|{{z{{{{{{{z{|{{{{{{zz{{{{{{z{{|{{{{{|{{z{{{{|z{{{{{zz{{{{{{z{{{{||{{{{|{{{{|{{{{{|}{{{{|}{{{{{{{{{{z{{{{{{z{{{{{{z{{{|z{{{{{{{{{|{{{{{}{{{{{}{{z{{{{|{{{{{{{{{|{{{{z{|{{||{{|{{|{{{||{{{{{|{{{{{|{|{{{{{{{|{{z{{||z{|{{{{{{|{{{||{|{{|{|{||{{z{||{{{{z|{|z{{{{{{{{{{z{z{zz{{{zzz{{|{{{{{{{{{{{|{{{{{|{{{{{|{{z{z{{{{{{z{{{{{{z{{{z{{{{|{{{{{{{{{{{|{{{{{|{{{{{|{{z{{{{|{{{z{{|{{zz{{{{z{{{|{{{{{{{{{{{|{{{{{|{{{{{|{{z{{{{{|{{{{{{{{{{{{{z{{{{||{{{{|{{{{||{{{{|}{{{{|}{{{{{{{|{{{{{{|{{|{{{|{{|{{{|{{|{{|{{{||{{{{{}}{{{{}}|{{{{{{}{z{{{{{{{z{{{{{{{{{{|{{z{{{{{{{||{z{{|}{{{z|}|{{{{{{{{{{{{{{{{zz{z{{{{{{|{{{{{{{{{{|{{{{{}|z{{{}|{{{{{{{{{{{{{{{{{{z{{{{{{{{|{{{{{{{{{{|{{{{{}|{{{{}|{{{{{{{{{{{{{{{{{{{{{{{{{{||{{{{{{{{{{|{{{{{}|z{{{}|{{{{{||{{{{{{||{{{{{{{{|{{||{{|{{{{{{{|{{{{{}|{{{{}||{{{||}|{{{{||{||}{{|{{}||{}}|}{|}|}{}}||{{}}|{|{|}|}{{zzz{zzzzzzz{zzzzz{zzzzz{{zzz{zzzzzz{zzzzz{{zzzz{zzzzzzz{{zzzzzz{zzzzz{zzz{z{{z{z{zzzzzz{zzzzz{{zzzz{{zzzz{{|{{{zz{{{z{zzz{{zzz{{{z{z{{z{{{{{z{z{{|{z{{{|{zzz|{{{}|{{{{{{|{{{{{{{{{{{{{|zzzz{{{{{{{{{{{{{{{{{{{{{{{{{}|{{{{{{|{{{{{{{{{{{{{|{z{z{{{{{{{{{{{|{{{{{{{{{{{{{}|{{{{{{|{{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{{{{{}|{{{{{{|{{{{{{{{{{{{||{{{{{{{{||{{{{||{{{{||{{{{{{|}|{||{{}}||{|}{|}|}|||}}|{|{{{||{||{||}|{{||}|{|{{{{|{{{{{{{|{{z{{{{{zz{{|{z{{{{zz{z{z{{{{|{{{{{{{z{{{{{|{{{{{{{|{{{{{{{{{{{{|{{{{{{z{{{{z{z{{{{{{{{{{{{{{{{|{{{{{{{|{{{{{{{{z{{{|{{{{{{{{{{|{{{{{|{{{{{|{{{{{{|}{{{{{{||{{z{{{|{{{{{||{{{{{z{{{{{{{{{{|{{{{{|{{{{{{}}{{{{{{|{{{{{{{{{{{{{|{{{{|{{{{|{{{{||{{{{{|{{{{{z{z|}{{{z{{||{{{z{{{{{{{{|{{{{{{{{{{{{{{{}{z{{{}{{{z{{{|{{{{{{{{{{{{{{{{{{{{|{{{{{{{{{{{{z{{z{{{{{{{{{{{z{z|{{{zz{z{{{{z{{{z{{{{|{{{{{{{{{{{|{{{{|{{{{{|{{zz{{|}{{{{{{|{{{{{{{|{{{{{||{{{{{z{{{{{{{{{{|z{{{{|{{{{{{}{{{z{{{|{{z{{{{{{z{{{|z{{{{{{{{{{{{{{{{{{{{}{{{{z{{|{{{{{{{|{{{{{{{{{{{{|{{{{{{z{{{{{z{{{{|{{{{|{{{z{{z{z|{{{zz{||{{{z|{{|{|{{{||{{{{{{{{||{{{{||{{{{|{{zzzzz{{{{zz{z{zz{z{{{zz{{z|{{{{z{{{{z{|{{{z{|{{zz|{{zz{{{}{z{z{{{{{zzz{{{{{z{{||{{z{{z{{{{{{{z{{{|z{{{|{z{z{z{{{zzz{{|{{zzz{{zzz{{{|z{{z{z{{z{{{z{z{{{z{z{{zzzz{z}{{{zz{z|{{zzz{{{zz{{|{z{{{{z{{{{{{{z{{{{{{{{}zzz{{{|{{{{{{{|{{z{{{{z{z{{|{z{{{{z{{{{z{{{{{|{z{{{|{{{{{{z{z}{{{{z{z{{{z{z{{z{z{{{|z{{{{{{{{{{{z{{{|{z{{{|{z{{{{{{{{{|{|{{{{{|{|{{{{|}z{{{{{|{{{{{||{{{{||{|{{||{{{{{|{{|{{|{|{}{{{|{|{{{{|}{{{{|}||{{|}||{{|}||{||}||{{{{|{|z{{{|{}{{{{{|{|{{{}|}{{}{|{|{{{|{}|{{{{}|{|{{||{{{{|{{z{{{|{|z{{{{|{|~{{{|}z{{{{{~~{{{{~|{{{{~|{|{{~||{{{|}|{{{{|}}{{{{{|}||{{}|}{{}{|{|{{{|{}|}{{{}|{|{{|||{{||}~|||||}~|}||||}~~||||}|||||}~~|||}~|}||}~||||}~||||{|{|}|{{|{{{||{{{{|}||{{{|}|{{{|{||{{|{|{}{|{|{{||{|{{{{{|}|{{{{{{|{{{{{|}||{{{|}{{{{{{|{{{{{|{}{{{|{{|{{|{{{{{|}|{{|{{{|{}{{{|}||{{{|}{{{{|}||{{|}|{}{|}|{{||}|{{{{{|}||{|{{|}|{{{{|}||{{}|}|{}{|{||{{|{}|}{|{}{{||{|{{{{{|}~{{|{{|}|{{{{|}|~{{{|}|{{{|{~~{{|{~|}{|{~|{||{~||{{||}~|}||}|}~}}|}|}~~|}||}|}|}|}~~|}|}~|}||}~|}||}~|}|}|{{{|{{{{{{{|{{zz{z|{{{{{}{{{{{{|{{{{{{{{{{{|{{{{{|||{{{{{||{{{{|{|{{{{|{|{{{||}|{|{{{|||{{{|{{{{{|{{{{{|||{{{{{|{{{{{{{|{{{{{{|{{{{{}{{{{{{|{{{{{{{{{{{{{{{{{{||{{{{{|{{|{{{{|{}|{{{|{{|{{}{{{||}||{{|}|{{{|}|{{{|}|||{{{|{||{{{{|{}|{|{{|||{|}|}||}||||{{|||}|{{{|}|||{{|||{|{|}~{{{{{|}~{{~{{|}~|~}|}{~}~|~~~{~|~~}}{{~~}~|{{~}~{~zzz|{zzzzzz|zzzzz{z|{zzz{zzzz{z|zzzzz|zzzzz|{zzzz|{zzzzzz|{zzzzzz|zzzzz{z|zzzz{zzzz{z|zzzzz|zzzzz|{zzzz|{zzz{{{|{{{{{{{|{{{{{{{|{{{|}{{{{{{|{{{{{|{{{{{|{z{{{|{{z{}{}{{{|{{{{{{{{{{z{{{{|{{{{{}{{z{z|{{{{{|{{{{{|{{{{{|{z{{{{{|{{{|{{{|{{z|{{{||{{|{}|{z|z|{|{|{|{{{|{||{{{{||z|{{{{{{{{{{{{{{{{{{{{|{{{{{}{{{{{|{{{{{|{{{{{|{{{{{|{{{{{|}|{{{{{|}|{{{{{|}||{{{|}{{{{{|{{{{{|{}{{{|{{|{{|||{{{{{||||{{{|}|{{{||||{{|}|}||}{|||{{|{}|{{|{}|{{|{||{{{{{{~}~|{{{~~}}{{~|~~~{~}|}{~}{|}~{{|}~{{{|}~{{{|}~||{{{|{|{{|{{|{|{}{{{|{||{{{|}|{{{|}||z{{||{{|}|{{||}|{{{{{{{|{{|{{{{|{}{{{{{|{{{{|}{{{{|}||{{{|z{{|}|{{{|}|{{{{{|}|{{|{{|}|{}{{{|}||{{{|}{{{{|}||{{{|z}{|}|{{||}|||{{{|{|{{|{{|{}|}{{{|{||{{}|}|{}{|}||{{|}|{{|}}|{||}||{{{{|{~|{|{{|{~|}{{{|{~~{{{|}|{{{|}|~{{|}|{{|}~{{||}~{{{{||}~|}||||}~|}}|}|}~~|}||}|}|}|}~~|}|}~}}|}~|}||}~|}|}|{{{||{|{{{{||{{{{{{|{{{{|}{{{{|{|{{{|{|{{{{{{{{|{|{{{{{|}||{|{{|}||{{{{|}||{{{|}{{{{|{|{{{|{|z}{{|{{||{|||{{{{{||{|{{{{}|{{{{|{|{{{}|}{{}{|{|{{{|{}{{{|}|z{|{||{{{{{{~|{|{{{{~|{{{{{{~~{{{|}{{{{|{|~{{|{|z{{|{{z{|{~{{{{{{{||{|{{{{}|}{{{|{|{{{}|}{{}{|}||{{|}}{{{|}}{{|}|||{{||}~||||||}~|}||||}~~||||}|||||}~~|||}~|}||}~|||}~|||||{{|}|{{{{{|}|{{{{{|}||{{{|}{{{{{{|{{{{{|z}{{{|{{|{|||{{{{{|{{{{{{{}{{{{{|{|{{{}|}{{}{|{|{{{|{}{{{{{}|z{{||{{{{{{~{{{{{{{~{{{{{{{~~{{{|}{{{{{{|~{{{{|z{{{{|{z{{{{z{{{|{|{{|{{|{|{}{{{|{||{{{|}|{{{|}||{{|}||{{|}|{{||}|{{{{{{||{|{{{{}|{{{{|{|{{{}|}{{}{|{|{{{|{}{{{|{}{z{|{||{{||}~||||||}~|}||||}~~||||}|||||}~~|||}~|}||}~|{||}~|||{{{z{{zzyzzz{{yzzzzzzzzzzy{zzzzzz|yzzzzzzzz{{yyz{{zzzzz{|zzzzzz{{zzzzzzzzzzz}zzzzz{}zzzzzzzzz|zzzz}{zzzzzzyyyzzzzzyzzzzzzzzzzz|zzzzz{{zzzzzzzyz{{zyz}|{zzzz{zzz{zzzzzzz{zzzzz{{z~zzz{zz~zzz{z|yzz~{{zz~}z{{{zzz{|{{{zz{|{zzz{z{|{{z{z}{{z{z{}{{{{{|z{{||z{z}}zzzzzz{|z{zzz{{zz{zzz{zz{z~zzz{z{}zzzzz|zzz~{{zz~|{{{z{|{zzzz{|{zzzzz{|{zzz{}{zzzz{}z{{z{{zz{|{zzz|{zzzzz{{zzyzz{{zzzzzzzzzzzz}zzzzzz{zzzzz{yyz{{zyz|{zzzzzz{|zzzzz{{zzzzzzzzzzz}zzzzz{}zzzzz{zzz|{zzz}{zzzzz{{zzzzzz{zzzzzzzz{{zz~z{zzz{~zz{{z|zzz~{{zz~|{{{zz{{|}{z{z|{|}z{{|{|}{{{z~|{{{z}}{|{{}|z{|~||{z~}{z{z{|{|zz{z{|{{z{z{|{{{{z}z{z{z{~zz{{z{zzz|{zzz}}{{zz{|{zzzzz{|{zzzz{|zzzz{{zzzzzz}zzzzzzzzz{{zzz{}{zzz{|{zzzzz{|{zzzz{|{zzz{|{zzzz{}z{{z{{zz{|{zzz|}{zzzz{{zzzzzz{{zzzzzzzzzzz{zzzzzz}zzzz{zzzz{{zzz{}{zzz{}{|zzzz{}{{zzzz}z{{zz~z{zzz{~zz{{z|zzz~}{zz~}{{{zz{|{{z{{z{|{{z{{z{|}{{{}{}{{z{~{{}{{|z{{|}z{z}}{{zzzz{zzzzz{z{zzzzz{zzzzz{zzzzzz|zzzzz{zzz{zzzz{{{zzz{|{zzzzz{|{zzzzz{|zzz{{zzzzzz}zzzzz{zzz{{zzz{{{zzz{|{zzzzz{|{zzzzz{|{zz{|{zzzz{}z{{z{{zz{|zzzz|{{zzz|{{|z{{z|{{{zz{z|{{|z{|z|z{{{}{z|z{|z{z~}{{z~}{{{zzzzzzzzz{}{{|{|{z{{{|{{{{{{{|{{{{{{{{{z{{}zz{{zz{{|{{z{|{{{{{{|{|{z{{{|{{{z{{{|{{{{{{{{zz{z}{zzzzz{{|{{z{|{{{{{{|{|{z{{{|{{{{{{{|{z{{{~{z{z{{}z{{{|z{{~{{z{~|{{{{{|{|{|{{{|{|{{|{{|{|{|{|{|z|{{~|z|{{z|{||{|{|}{{{{{|{~{{~{{|{~{|~{{|{~|~|}|~|~{|}~|~||z~||~{{{}~|~{yz|{{z{zz{|{{zz{z{|{{z{{|z{z{zz}{z{z{zzz{zz{z||{zyzz|{{z{zz{|{{zz{z{|{{z{{~{{z{z{}{{{z{|z{~{{{z~|{z{z{|{{z{zz{|{{zz{z{|{{{{{|z{z{z{~{z{z{{z{{{z{z|}{{zz{}{{z{{z{}{{{z{{{}{{{{|~{{z{{{~{{{{{|z{{}{{{~}{{{{z{}|}{||z{}|}{{|{{||}{|{}|}{|{|~}|}{|{z}||||{}}{|zz{{{zzzzz{{{zzzzz{{{zzz{~zzzzzz}zz{zz|zz{~{{z~|{z{z{|{zzzzz{|{zzzzz{|{{{z{|z{zzz{~zz{z{{zz{|{zz{}z{zz{|{zzz{z{|{zzz{z{|{zz{{}zzz{{{}zz{z{{zz{|{zzz|{{zz{|{zzzzz{|{zzzzz{|{z{z{~{zzz{{~z{{{{|zz{||{zz~{{{{|z|||{{{{{|||{{|{{|||{|{{}|{|{{|}{|{||}z{|||{{{}}|zz{|{|z{{z{|{{zz{z{|{{{{{|z{z{{{~{z{{{{z{{||z{z}|{{{{zzzz{z{{zzz{{z{{zzz{{{zzz{{z|{zzz{{zzzzz{zzzzz{{{{{{|{z{z{{{|z{{{{z{{{{{z{z{z{{{|}zz{{{{z{{{{{z{z{}{z{z{{zzz{z{{{zz{{z{{zzz{{{zzz{{z{{zzz{{zzzzz|{{zzz{{{zz{}zzzzz{z{z{z{z{}{{z{z{zzzz{{|{zzz{{zzz{{|{{z{{}{z{{{|{zz{{{|zzz{{{{zzzz{{{zzz{{{|{zzz{{zzzz{|{{zz{|{{{{{{z{{{zz{z{{{zz{{z{{{zz{{{{zz{{{{|zzz{{zzz{{{{{zz{}{{{{{}{{{{{z}{{{{{{{}{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{|{{{{{{zzzz{{{zzz{{z{{zzz{{{zzz{{z|{zzz{{zzzzz{{{zzz|{{{{{{|{{{{{{|z{{{{{{{{{{{{z{{{{{|}{{{{|{{{{|{{{{{|}{{{z{}{zzz{z{{z{{{z{}{{{{{{{z{{{{{{zz{{{{zz{{|{{z{{}{{{{{|{zzz{{{|zz{{{{{zz{{{{zz{{{{|{zz{{{{zzz{|{{zz{|{{{{{z{{{zzz{z|{{z{{z|{{z|{{{{z|{{z{|zz|{{|zz{||{{zz{|{{z{{{{zzz{{{|{zzz{z{z{z{{{zzz{{{|{zzz{{zzzz{{{{zz{|{{{{{}{{{{z{{}{{{{{{}{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{|{{{{{{zzzz{{{{zzz{{{{zzz{{{zzz{{z|{zzz{{zzzzz{{{zzz|{{{{{{|{{{{{{{|{{{{{{{{{{{{z{{{{{|}z{{{|{{{{|{{{{{|}{{{{{|{{zz{{||{z{{{{|{z{{{|{{{{{{{{{{{{{{{{{{|{{{{{}}{{{{{}{zzz{{{}{z{{{{{}{{{{{{z{{{{{|zz{{{{zz{{{{{z{{|}{{z{{{zzz{z{{{zz{{z{{zzzzz{zz{{z{{zzz{{zzzzz|z{zzz{{{z{{{{zzz{{{|{zz{{{{{z{zzz{zz{{{{{zzz{{zzzz{|z{zz{{{{{{{}{{{{{{{}{{{{{{{}{{{{{{{{{{{{{{{{{{{{{{{|{{{{{|{{{||}|{{{{||}|{{{{||}||}{{z{}{{{|}{{}{|}{{{}}||{{|}|{|zzzz{{zz{{{{{||{{}|{{{{{{}|z{{{{{}{{{{{{{{{{{{}}zzzz{{{{|{{{{{|{{{{{{}|{{{{{{}|{{{{{{}{{{{{{{{{{{{}}{z{{{{{{|{{{{{|{{{{{{}|{{{{{{}|z{{{{{}{{{{{{{{{{{{}}{{{{{{{{|{{{{{|}{{{{{}||{{{{{}|{{{{{{}{{{{|{{{|{{{}}{{{{{{{{||{{{{||{{{{|}|}{}{{}}|}||}{}}||}|}}}{}|}|}}}{}|{{}||{||}||}|{{{{|{{z{{{{|{{{{{{{{{|{{{{{z{{{{|{{z{{|z{zz{z{{z|{{{{{{|{{z{{{{|{{{{{{{{{|{{{{{z{{{{|{{z{{|zzz{{{{{z|}{{{{{|{{z{{{{|{{z{{{{{{|{{{{{z{{{{|{{z{{|{z{{|z{{z||{{{{|}{{{{{{|}{{{{{{|}{|{{{|{{{{{{|{{{{{|z{{{{{{{{|{|{{{{}}|{{{{{}}{{{{{|}{|{{|{|{|{{{}}|{{{|{{{{|{{{{||{{{{{{|}|{{{{{|}{{{{{{{||{{{{{{{{{{}}{{{{|{{{{|{{{{|}{{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{|{{{{{{{{{{{{{{zz}{{{{z{{{z{z{z|{{zzz{z{{{{{z{{{{z{{|{z{{z{{z{{{{zz{z|{{{{|}{{{{{{|}{{{{{{|}{{{{{|{{{{{{|{{{{{{z{{{{{z{{{{|z{{{}{{z{{{{}{{{{{{{}{{z{{{{{z{{{}}z{{{{{z{{{{{{{{{{{{{{|{|{{{{{|{{{{{{||{|{{|{|{|{{{|||{{{|z{{{|{{{{{||{{{{{{|{{z{z{{|{{z{{{{|{|{{{{{{{{{{{|{{{{|{z{{||z{{z||{{{z{zz{{{{|{z{{{{{|z{{{{{|{{{{{|}{{{{{{|{{{{{|{{{{{|{{{{{|{z{{{{}|z{{{{{}{{{}{{|{{{{{|}{{{{|{|{{{{{}{{{{{|{{{{{{zz{{{{|{z{{{{{|z{{{{{|~{{{{|}{{{{{{~~{{{{~{{{{{~{{{{}|{{{{{}|{{{{{{}|{{{{{}||{{{{|}z{{{{{|{{{{{|{}{{{|{{|{{||{{{{{}{z{{{{{}{{{}{{|{{{{{|}{{{{|{|{{{{{}|{{{{||{||}~|||||}~|{||||}~|}|||}~~|||||}|||||}~~|||}~|}||}~|||{{{{{||{{{{{||{|{{{{||{{{{{|{{{{{|}{{{{|{|{{{|{||{{|{||{|{{|{{{{{{z{z{{{{{|z{{{{{|{{{{{|}{{{{{{|{{{{{||{{{{||{|{{||{{{{{}|z{{{{{}{{{}{{|{{{{{|}{{{{|{|{{{{{}|{{{{||{|{{~{{{{{{{{z{{{{{|z{{{{{|~{{{{|}{{{{{{~~{{{{~|{{{{~|{|{}|||{{{{}}{{{{{}}{{{}{}||{{{{|}{{{{|{|{{{{{}|}{{{||{||}~||||||}~|||||}~|}|||}~~|||||}|||||}~~|||}~|}||}~|||{|{}{{{{{{{}{{{{zz{{z{{{{}||{{{{|}z{{{{{|{{{{{|z}{{{|{{|{}||{{{{{}||{|{{{||{{{{}||{{{{|}{{{{|{|{{{|{|{}{|{|{{|{}{{{{{{{}{{{{{{{{z{{{{}{|{{{{|}{{{{{{|{{{{{|z}{{{|{{|{}{|{{{{{}}|{{{{{}{{{}{}||{{{{|}{{{{|{|{{{{{}{}{{{|{{|{}~{{{{{{}~{{{{{{}{{{{{}|~{{{{|}{{{{{{~~{{{{~{}{{{~{{||}~|}|}}|}~|}||}|}~}}|}}~~|}|}|}|}|}|}~~|}|}~|}}|}~|}||z{z{zzz{z{{{zzz{z{{zzzzz{zzzz{z{zzzzz{{{zzz{{z{zz{|{{z{{|{zzz{{{|{zzz{{{|z{zzz{{zzz{z{zzzzz{{{zzz{{z{zz{{{{{{{||{{{{{{||{|{{{{||{{{{|{{{{{|}{{{{|{|{{{|{|{{{|{|{{{{{||{{{|{{}|{{{|{{}{{|}|||{|{||}|{{||||{{{{|}|{{{{||||{}~||{{~{}~{{{{~{}~{{~}~}~{~{~|}{{{~|~~~{{{~~{}{{{~}~|zzzz{zzzz{z{{{z|}{}{}{{{||{{{{{{{{{{{{{{{{{{{{|{{{{{{}{z{{{{{{{{{{{{{{{{{{{{{{||{{{{{{{{{{{{{{{{{{{{|{{{{{{}{{{{{{{z{{{|{{{{{|{{{{{|||{{{{{|{{{{{{{|{{{{{{|{{{{{|}{{{{{|{{{{{}|{{{{}|{|{}{||{{{{}{{{{{{{}{{{{{|}||{|{{{}{|{{{|{{{{{|{}{{{|{{|{{|||{|{{|}|||{|{|}|{|}|||{{|{||}||{||||{||{}|{||{||{{{{~}~{~{{~~}~|{~|~~}}~}~~~~|~{~|}{~{~|}~{~|}~{{~|}~{{{{{|{{{{{{{|{{|{{{{|{}{{{{|{{{{{|}{{{{|}||{{{{z{{|}{{{{{{|{{{{{{{|{{|{{{{|{}{{{{|{{{{{|}{{{{|}||{{{||{{|}||{|{}|{{{{{{}|{{|{{{}|{}{{{}||{{{{|}{{{{|}||{{{|{}{|}|{{|{{|{{{{{{{}{{|{{{{}{}{}{{|{{{{{|}{{{{|}||{{|}{{{|}||{{{{~||{{{{{~|{|{{{{~|}{{{{~~{{{{|}z{{{|}|~{{|}{{{|}~{{{|}~|}|}}|}~|}||}|}~|}}|}}~~|}|}|}|}|}|}~~|}|}~}}|}~|}||{{||{{{{{{||{|{{{{||{{{{{|{{{{{|}z{{{|{|{{{|{||{{{||{|{}||{{{{{}||{|{{{}||{{{{}||{{{{|}{{{{|{|{{{|{|{}{{|{{|{{||{{{{{{}|{|{{{{}|{{}{{|{{{{{|}z{{{|{|{{{|{}z{{|{|z{{{~||{{{{{~|{|{{{{~|{{{{{~~{{{{|}{{{{|{|~{{|{|z{{|{{z{{{|||{{{{{}|{|{{{{}|}{}{{|{{{{{|}{{{{|}||{{|}}{{{|}|{{|}~||||||}~||||||}~|}|||}~~|||||}|||||}~~|||}~|}||}~|||{zzzzzyzzzzzzzzyzzzzzzzzzzzzzzzzzzzzzzzzzz{yzzzzzzyzz{zz{z{zzzzzz{z{zzzzzz{z{{zzzz{zzzzzz|zzzzzz{zzz{zzzz{|{zzz{zzzzzzzz{zzzzzz{zzzz{{{zzzz{{zz{zz{{{z{zzzzzzzzz{{zzzzzzzz{zzzzzzzz{zzzzzz{{{zzzz{{{zzzz{{{z{zzzzzzzzz{{zzz{{zyzzzz{zzzzz{zzz{zz{z{z{zz{z{z~zzzzzz{yzzzz{zzz~{{zzzzz{{z{zz{{{{z{zz{{{{{z{{{{{{zz{{{{{|z{{{|z{zz{zz{zz{|{zzz{z{zzzzz{z{zz{zzz{z{z{{{z{zz{{z|{zz{{{z{zzz{zzzz{|{zzzzzzzzzzzzzzzz{zzzzzz{z{zzz{{z{zz|z{z{zz{zz{zzzzz{|{zzzzzzzyzzzzzzzyzzzzzzzzzzzzzzzzzzz{zzzzzz{yzzzzzzyz{{zzz{{{zzzzz{{{zzzzzz{z{{zzzz{zzzzzz|zzzzzz{zzz{zzzz{|{zzzzzzzzzzzzzzzzzzz{zzzz{{{zzzz{{zz{zz{{{z{zzzzzzzzz{{zzz{{zzzz{zz{zzzz{zzz{zz{{{z{zz{{{z~zz{{{z{zzzzz{zzz~{{zzz{{{{{zzz{{{{{{z{{{{{{{{{{{{{{{{{{{|z{{{|{{zz{z{{zz{|{zzz{{{zzzzzz{{{zzzz{{z{z{{{z{zz{{z|~zz{{{z{zzz{z{zz{~{{zzz{zzzzzzz{{zzzzz{{{zz{z{z{zz{zz{{zzzzzz{zzzzzzzzz{{zzzzzzzzzzzzzzzzz{zzzzz{{{zzz{{{{zz|z{z{zz{zz{zzzzz{|{zzzz{zzyzzzzz{zzyzzzzzzz{zzzzzz{zzz{zzzzzz{yzzzzzzyz{{zzz{z{zzzzz{{z{zzzzz{z{{{zzz{zz{zzz|zzzzzz{zzz{zzzz{|{zzz{{zzzzzzz{{zzzz{z{{zz{{{z{zz{{{z~zz{{{z{zzzzz{zzz~{{{zz{{{z{zz{{{{{zzz{{{{{{{{{{{z{{{{{{~{{{{|{{zz{{{{zz{~{{z{{{{zzz{z{{{{zzz{z{{{{{{{{{zz{{{|{zz{{{z{zzz{zzzz{|{zz{z{zzzzzz{{{zzzzzz{{{zzzz{{zzzzz{{zzzzzz{zzzzzzzzzz{zzzz{zzzzzzz{{zzzzzz{{{zzz{z{zzzzz{{zzzzzz{zzzzzzzzz{{zzzz{zzzzzzzz{zzz{{zzzzz{z{zz{{z{zz|z{z{zz{zz{zzzzz{|{z{{{{{z{z{{{{{{z{{{{{{{{{{{{{z{{{{z~zz{{{z}zz{{z{z{{~{{{{{{{{{z{{{{{{{{{|{{{{{{{{|{{{{{|{{|{{{||z|{{{{{{{{{||{zzz{zzyzzz{z{zzz{zz{zzzz{{z{zzzzzz~zz{{zz{yzzzz{zzz~{{z{z{zzzzzz{{{zzz{zz{{{zz{{z{{zzzz{~zz{{zz{zzzzz{zzz~{{zzz{zzzzzz{{{zzz{zz{{{zz{{{{{zz{z{~zz{{zz{zzzzz{zzz~{{{{{{{zzz{{{{{zz{{{{{{{{{{{{{{{{{{{~z{{{zz{{z{zz{z{{~}{{z{{{{z{{{{{{{{{{{{{{{{{{{{{{{{{{{|{{{{|{{z{{{{{{{{~}{zzzzzzz{z{{z{{{{zzz{{{{{{zz{{{{{{{{z{{{{z{z{{||z{zz{z{z{zzzzz{|{{{{{{{zzz{{{{{{zz{{{{{{{{{{{{{z{{{{||z{{{{{{z{{{zzz{|{{z{{{{{zz{{{{{{zz{{{{{{{{{{{{{{z{{{|~{z{z{{{zz{{{zz{~{{{{|{{{{{{{{|{{{{{{{{|{{{{{{{|{{{{{||{{{{{{|z{{z{{{{||{z|{||{{z{{|{||{{|{{|{|||||{|{||||{||{||||||{{|||z{|||{zz{{zzzzzzz{{zzz{zz{{{z{z{zz{{{z{z{|z{z{|z{zz{zzzzz{{zzzz{zzzzzzz{{zzz{zz{{{z{{{{z{{{{{z{~z{z{|z{zz{zz{zz~{{z{z{zzzz{z{{{zzz{{z{{{z{{{{{{{{{{{{|z{{{|z{zz{zzzzz{{z{{{{{{z{z{{{{{{{{{{{{{{{{{{{{{{{{{|~{{{{|{}z{{{{{{{{{{{z{|||{{z|{{|||{{{|{{|||||{|{||||{|||{||{|||{{|||{z{|||{zzzzz{z{zzzzz{z{zzz{z{{z{z{z{z{zz{{{{{zzzz{zzzzz{{zzzzzzz{{{zzzz{{{{zzz{{{{z{{{{{{{z{{{{{|zzzz{zzzz{|{{z{zzzz{zzzzzzz{z{zzz{{{{z{z{{{z{zz{{{{{zzz{{zzzzz|{z{{{zzz{{{zzz{{{{z{{{z{{{{{zz{{zzzzz{{{{zz{{{zz{{{{{z{{{zzz{{{{zzz{{{{zz{z{{z{{zz{{{{zzz{{{|zzz{|zzz{{|z{{{{{{{{zzz{{{{zzz{{{{{zz{{{{z{z{{{z{zz{{{{{zzz{{zzzz{|{{{{{{zzz{{{{z{{{{{{{{z{{{{|{z{{{{z{z{{|{zz{{{zz{{||{{z{zzzzz{{zzzzz{z{zzz{z{{z{z{z{z{zz{{{{{zzzz{zzzzz{{zz{zzzzz{{zzzz{{{{zzz{{{{z{{{{{{{z{{{{{|zzzz{zzzz{|{{{{{zzzz{{{zz{z{{z{{{{{{{{{z{{{zzzz{{{{{zz{{{zz{{{|{z{{{z{zz{{{{zz{{{{zz{z{{{{{zz{{{{zzz{{{|zzz{|zzz{{|{{{{{{{{zzzz{{{{zz{{{{{zz{{{{z{z{{{{{zz{{{{|zzz{{zzzz{|{{z{{z{zz{z{{zzzzz{{z{z{{{{{zz{{z{zzz{{{{zzz{{zzz{{|{z{{{{zzz{{{{{z{{{{{{{z{{{{|{z{{{{z{z{{|{zz{{{zz{{||{{z{zzzzz{z{zzzz{{{zzz{{{{z{z{{{z{zz{{{{{zzzz{zzzzz|{z{{{zzzz{{{{zz{{{{{{{{{{{{{{{{{{{z{{{{{|zz{{{zz{{{|{{{{{z{zz{{{{zzz|{{{z{{|{{{{z{|{{{{z{|{{|zzz{||zz{{|{{{{{{{zzzz{{{{zz{{{{{{{{{{{z{z{{{{{zz{{{{{zz{{{zz{z{|{{z{zzzzz{z{zzzzz{z{zzzz{{z{zzz{zzzzzz{{{zzzz{zzzz{{{zz{{z{zz{z{{zzzz{z{{z{z{{{zzzz{zzzzzz{{{zzz{{zzz{{{{{{{{{zzz{{{{{z{{{{{{{{z{{{|{z{{{{z{z{{|{zz{{{zz{{||{{{{{{{{{{{{{{{z|{{{{z{{|{{{{{|{{|{{{|{{|{{{{||{{{{|{{{{{{{z{z|{{{{z{{|{{{{{{{|{{{{{|{{z{{{|{|{z{{|{z{{{||{z{zzzzz{z{zzzzz{z{zzzzz{{z{zzzz{zzzz{{{zzzz{zzzz{|{zz{zzzzz{z{zzzzz{z{zzzzz{{z{zzzz{zzzz{{{zzzz{zzzz{|{zz{{z{zz{z{{zzz{{z{{z{z{{{{{zz{z{zzz{{{{zzz{{zzz{{|{z{{{{zzz{{{{{z{|{{{{{{z|{{{|{z|{{z{z|{||zz{{||z{{||{{{{{{{{{{{{{{{{|{{{{{{{|{{{{{{|{{{z{|{{|z{{{|{{{{{||{zzzz{z{{{{{{{{{{{|{{{{{{{|{{{{{{{|z{{{{|{{{{{{{{{{{{{{{{z{{{{{{|{{{{{|{{{{{{{|{{{{{{{|{{{{{|{{{{{{{{{{{{{|{{z{{{{{{||{{{||{{{{{{||{{{{{{||z{{{{|{{{{{{{{{{{{{||{{{{z{{{||{{{{||{{{{{|||{{{{{||{{{|{|{{{{|{{{{{{{{{{{{{{{{{{||{{|}||{{{{|}||{{{{|}|||{{{}||{{{{|{{{{{|||{{{|{{{||{||z{{{{zz{z{{{zzz{z{{{{{z{{{|{{z{z{z{{{{{{zz{{{zzzz|{zz{{{{zz{z{{{zzz{z{{{{{{{{{|{{z{z{z{{z{{|zz{{{zzzz|{{z{{{{zz{{{{{z{z{{{{{{{{{{{|{{{{{{z{{{{{{zz{{{zz{z{z{{{{{{zz{{{{{zz{{{{{{{{{{{{|{{{{{{z{{{{{{zz{{{zzz{|{{{{}|{{{{{|}|{{{{{|}{{{|{|{|{{|{{{{{{{{{|{{{{|{{{{|{{{{{|{{{{{{{|{{{{{{{|{{{{{{||{{{{{{{{{{{|{{{{{|z{{{||{{{zzz{{{|{{z{{{{|{z{{{{|z{{{{{{|{{{{{|}z{{{{||{{{{{|{{{{zzz{{{|{{z{{{{|{{{{{{|z{{{{{{|~{{{{|}z{{{{|~~{{{{~{{{|{{{{|{|{{{{||{|{{{{|||z{{{||}||{{{||}{{{{{||{{{{{|{}{|{{{{|{|{{{{{|{|{{{{{||{{{{{|{|{{{{{|}z{{{{||{{{{{||{{|||{{{{}|{{{{|{}{|{{||}{{{{{|{||{{{{|}z{{{{||{{{{{|{{|~||||||~|||||||~|{||||~|}||||}~~|||||}|||||}~~|||}~|}{{{{{|||{{{{|||{{{{{||{|{{{|{}{{{{{||{{{{|}{{{{|}||{{|}|{{{|{{{{{{{{zz{{{{|{z{{{{|z{{{{{{|{{{{{|}z{{{{||{{{{{|{{{~{{{{{{{{zz{{{{|{{{{{{|z{{{{{{|~{{{{|}z{{{{|~~{{{{~{{{|{{{{{|{|{{{||{|{{{{|||{{{{||}||{{{||}{{{{{||{{{{{|{}{|||{{{|{}|{{{|{}{|{{||}{{{{{|{||{{{{|}z{{{{||{{{{{||{|~|||||||~||||||~|{||||~|}||||}~~|||||}|||||}~~|||}~|}{{{{|{{{{{|{|{{{{zz{{{{{{||{{{{{|{|{{{{{|}z{{{{||{{{{{||{{|||{{{|{|||{{{{||{|{{||{}{{{|{||{{{{|}{{{{|}||{{|}||{{|{{{{{|{|{{{{{|{{z{{{||z{{{{|{|{{{{{|}z{{{{||{{{{{||{{~{{{{{|{~{{{{{|{z{{{{||z{{{{|{|~{{{{|}z{{{{|~~{{{{~|{{|||{{{|{}||{{||{}|{{||}{{{{||}||{{{||}{{{{{||{{{{{||}|~|||||||~|||||||~|||||~|}||||}~~|||||}|||||}~~|||}~|}{|z{{zzzz{z{{zzzz{z{{zzzz{z{zzz{z|{zzzz{{zzzzz{{{zzz{{{zz{{{zzz{{{{{zzz{{{{{{zz{{{zzz{{|{zzzz{{zzzz{{{{zz{{|{{{|||{{{{{|||{{{{{||{|{{|{}{{{{{||{{{{{}{{{{|}z|{{|}{{{{~{{{{{|{~{{{{||{~{{{{||{{{{||}|~{{{||}z{{{{|~~{{{{~|}}~||||||}~|||}}|}~|}||}|~}||}|}~~|||}|}|||}|}~~|}|}~|}|{{{zzzzz{{{zz{{{{{z{zz{{{z{z{zz{zzzz{z}{zz{z||zz{z{{{{{{{zzzzz{{{zz{{{{{{{zz{{{z{z{zz|zzzz{z}{zz{z||zz{z{|{z{{{{{z{{{{{{{{{{{{{{{{{{{{{z{{{|{{z{{{}{z{{{||{{{{{{{{{|||{{{{{|||{{{{{||{|{{{|{}{{{{||{{{{|}{{{{|}||{{|}|{{{|{{{{{|{}{{{{{|{}{|{{||}{{{{{|||{{{{|}|{{{{||{{{{{||{{~||{{{|{~||{{~|{~||{{~|~{{{{~|}~{{{~|}{{{{{~~~{{{{~|}zzzz{zz{{{z{|}{|}{}{}{{||{z{{{{||{{{{{{|{{{{{{{{{{{{{||{{{{{}{{{{{{{{{{{|{{{|||{{{{{|||{{{{{||{{|{{{{{{|{{{||{{|{|}|{{|||{{{{{|{{{|||{{{|{|||{{{|{||{{{{||{{{{{|{||{{{{|}{{{{||{{{{{}|{{{||{{{|{{||{{||{{|{{{||{{{{{||}||{{{|{}{{{{||{{{{{|{}{|||{|{{|}||{||||}|||{||}|{|{{||||{{{||}|{{||||{||{||{{~}~|~|{~~}~|~~|~~}~||~|~}}~|||~~~|||~|}|||~|}~|~|}~{{{|{{{{{{{|{{{{{{{|{{|{{{|{}{{{{{|{{{{{|}{{{{|}||{{{|{{{|{{{{{|{|{{{{{|{|{{|{{||{}{{{|{|{{{{{|}{{{{|}||{{{||{{|{{{{{|{|{{{{||{|{{|{|||{}{{||}||{{{||}{{{{|}||{{{|z}{|{{{{{{{}{{{{{|{}{||{||}{}{{{|{|{{{{{|}{{{{|}||{{|{{{{~||{{{{{~||{{{{{~|{|{{{~|}{{{{{~~{{{{|}|{{{|}|~{{|}{{|~|}|}||}~|}|}}|}~|}||}|~|}}|}|}~~|}|}|}|||}|}~~|}|}~}|{zzzzzz{z{zzzzzz{z{zzzzzz{{{zzzzz{{{{zzz{{zzzzz{z{zzzz{{{{z{{{{{{{{{{{{{{{{{{{{{{{{{z{{{{{{{{{{{{{{{{{{{{{{{{{{{z{zzzzz{{z{zzzz||{{{zz{{||{{{z{{||{{{z{{|{{zz{{{z{zz{z{{z{zzzzz{z{zzzzz{{zz{zzzz{{{{z{zz{{{{{zzz{{zzzzz|z{zzz{{{z{|{zzz{{||z{zz{{{|z{{{z{{z|{{zz{{{|{zzz{{zzz{{{{{zz{{{{{{{{{zz{{{{zzzz{{{{{z{zz{{{zz{zz{{z|{zzz{{{zzzz|{{zzz{{{{z{{{z{{{zzz{z{{{zzz{{z{{{zzz{{{{{zzz{{{{{zzz{{{zzzz|{{zzz{{{{{{{{{{{{{{{{{{{{{{{{{{z{{{{{{{{{{{{{{{{{{{{{{z{{{{{{{{{z{zzzzzz{{zzzzzz{z{zzzzzz{{{zzzzz{{{{zzz{{zzzzz{z{zzzz{{{{{{{{{{{{{z{{{{{{{{{{{{{{{{z{{{{{{{{{{{{{{{{{{{{{{{{{{{z{{zzzzz{{{zzzz||{z{zz{{||{{{z{{||{{{z{{|{{zz{{{z{zz{z{{z{|{{zzz{{||{zz{{{|z{{{z{{z|{{zz{{{|{zzz{{zzz{{|{{zz{{{{{{{{{zzz{{{{{zz{{{{{z{zz{{{{z{zz{{{|{zzz{{{zzzz|{{zzz{{{z{{{z{{{zzzz{z{{{zz{{z{{{zzz{{{z{zzz{{{{{zzz{{{zzzz|{zzzz{{{z{|{{zzz{{||{{zzz{||{{{z{{||{zzz{{{{{zzz{{zzzz{{{{zz{z{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{z{{{{{{{{{{{{{{z{{{{{{{{{z{{zzzzz{z{{zzzz{{{{zzzz{{{{zzzz{{{{{zzz{{zzzzz{z{zzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{{z{{{{{{{{{{{{{{{{{{{{{{{{{{{z{|{{zzz{{||{{zz||{|{{{{||{|{{{{||{|{z{{|{{zz{{{{{zz{{{{{{{{{zzz{{|{{{z{{{{|{{zz{{{{z{{z{{{|{z{z{{{{z{z|{{z{z{{{{{{z{{{{zzz{{{{{{zz{{{{{{{z{{{{{zzz{{{{{zzz{{{zz{z|{zzzz{{{z{{zzzzz{z{{zzzzz{z{{zzzzz{{z{zz{{{|{zzz{{zzzzz{z{zzz{{{z{|{{zzz{{||{{zz{{{||{{{zz||{zzz{{{{{zzz{{zzzz{{{{zz{z{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{z{{{{{{z{{{{{{{{{{{|{{{{{{{||{{{{{{{||{{{{{{|{{{{{{{|{{{{{{{{{{{{{{{{{{{{{|{{{z{z{{|{{{zz||{|{{{{{|||{{{{||{|{z{{|{{{z{{|{{z{{{{{{{{{|{{{z{{{||{{{z||{||{{{{||||{{{||{{{{{{|{{z{{{|{{{z{{{{z{{zzzzz{{{{zzzz||{{{z{{{||{{{{zzz{{{z{{|{{zz{{|z{zz{{{{z{{zzzzz{{{{zzzz||{{{z{{{||{{{{{zz{|{z{{|{{zz{{|z{zz{{{{z{|{{zzz{{||{{zz||{||{{{{||||{{{{{{{{z{{|{{zz{{|{{zz{{{{{{{{{{{{{{{{{{{{||{{{{{{{||{{{{{{|{{{{{{|{{{{{{|{{{{{{{{||{{{{{{{||{{{{|||||{{|{{||||{{{{|||{{{{|{{{{|{|{{{|{{{{{||{{{{{{}||{{{{{|}||{{{{||}|{{|{||}||{{||}|{{{||{{{{{|||{{{zzzzz{{{{zzzz{{{{{zzz{{{{{z{{z{{{|{zzzz{zz{z|{{zzz{{{{{{zzzzz{{{{zzzz{{{{{zzz{{{{{z{{{{{{|{zz{{{zz{z|{{zzz{{{{{{z{z{z{{{{z{z{{|{{{z{z{{|{{z{{{{{{|{z{{{{zz{z|{{z{z{{{{{|{{z{z|{||{{z{{|{||{{{{{|||{{{{{|{|{z{{{{{z{{|{{zz{{{{|{|{{{{{||||{{{|{||||{|{{{|||{{{{{|{|{{{{|{{{|{|{{{|{{{{{z{{{z{{{{{{{{{z{{zzzzz{z{{zzzz{{z{{zzz{{{{{z{z{{{{|{zz{{{{zzz{{{{zzz{{z{{zzzzz{z{{zzzz{{z{{zzz{{{{{z{z{{{{|{zz{z{{zzz{{{{zzz{zz{{zzzzz{{{{zzzz{{{{{z{z{{{{{z{{{{{{|{z{{{{{zz{{{{{zzz{z{{|{{{z{{{||{{{z||{||{{{{||||{{{{||{|{{{{|{{z{{{{{{{z{{{|}||{{{{||}||{{{{||}||{{{{|}|||{{{|}||{{{{|{{{{{|||{{{|{z{zzz{{{|{{z{{{{|{z{{{{|z|{{{{|{{{{{{{||{{{{|}z{{{|{}{||{|{|}|||{|||}|||||||}|||{||}|{{|{||}|}{||||}{||||{}{||{{{{|||{{{|||||{|{{|||z|{{|||{{{{{||||{{|{|}{{|{|{}{{|{{{{{{|{{{{{{{|{{{{{{|{|{{{{|{{{{{{{||{{{{|}z{{{|{}{|||{{{{}||{{}|{}|{}{{|{|||{{|{}}{{{{}{|}{{}{|}|{}{|{}}||||||}||||{|}}||||||}}|{|||}}~|}|||}}~~||||}}}||||}~~{{|{|{||{{{{}{|z{}{{}||}{{{{}||{{{{}}{{{{}{||{{}{|}{{}{|{}{{|{{{{{{z{zz{{{{|{z{{{{|z|{{{{|{{{{{{{||{{{{|}z{{{|{}{|||{|{|}||{|||}|||||||}|||{||}|{{|{||}|}{||||}{||||{}{||{{{{{|||{{|||||{|{{|||{|{{|||{{{{{||||{{|{|}{{|{|{}{|||{{{{{}||{}|{}|{}{{|{|||{{|{}}{{{{}{|}{{}{|}|{}{|{}}|||||||}|||||}}||||||}}|{|||}}~|}|||}}~~||||}}}||||}~~{|{|{||{{{{{{||{{{{{||{{{{{|{|{{{{|{{{{{{{||{{{{|}{{{{|{}{{||{{{{{}||{{}{}{|}{{{{}||{{{{}}{{{{}{||{{}{|}{{}{|{}{{|{{{{{{{|{{{{{{{{z{{{{|z|{{{{|{{{{{{{||{{{{|}{{{{|{}{|||{|{|}|||{|||}||||||}|||{||}|{{|{||}|}{||||}{||||{}{|||{{{{|}||{{}||}|}{{|||||{{||}}{{{{}||}{{}{|}|{}{|{}}|||||||}||||||}}|||||}}|{|||}}~|}|||}}~~||||}}}||||}~~|{|z{{{zzz{z{{{zz{{z{{zz{{{{{zz{{|{{zzz{{||zzzz{{zzzz{{|z{||{zzz{{||{zz{{{||{{z{|{{zz{{|{{zzz{{{|zzz{{{zzz{{{|{{{|z{z{{}{|z{}{{}{|}{{{}||z{{{}}{{z{}{||z{}{|z{{}{|{}{|||{|{|}}||{|}|}}||}|||}||{||}}}{|{|}}|}{|}||}||}||{}}|||||||}||||||}}||||||}}||||}}~|}|||}}~~||||}}}||||}~~{}|{|{|{|}|{|{|||}|{|||||}||{z{z|{{|{||}{}{||||}{||||{}{|{|{|{|}|{|{|||}|{|||||}||{{{z|{{|{||}|}{||||}{||||{}{|||{|{|}|||{|||}|||||||}||{{|{|{{|{||}{}{||||}{||||{}{|||{|{|}}||{|}|}}||}|||}}||{||}}{|{|}}|}{|}||}{|}||{}{|||{|{|}|||{|||}|||||||}|||{||}|{|{||}|~{||||}|||||{~~||}|}|}}||}|}|}}||}|}}}}|}||}}}~}}|}}}~~|}|}}}}}|}|}~~}||{{{{{{||{{{||{||{|{{|{|{{{{|{}|{zz|z|}{{|{|}|{|{{{}}||{{{{{{||{{{||{||{|{{|{|{{{{|{}|{{z|{|}{{|{|}|{|{{{}}||{{{{{{||{{{||{||{|{{|{|{|{{|{}|{{{|{|}{{|{|}|{|{|{}}|||{{{{{|||{{||{||||{{|{|{|{{|{}|{{{{{|}{{|{|}|{|{|{}}|||{{{{{}||{{}|{}||}{{|{}||{{|{}}{{{{}|}{{}{|}|{}{|{}}}}|||||}}}|||}}}}}|}||}}}||||}}~}||||}}~||}|}}}|}|||~~{{{{{z{{|}{{|}{|}{}|}{||{{{{{{||{z{{{{||z{{{{|{|{{{{|{{{{{{{||{z{{|}{{{|{}{{||{{{{{{||{{{{{{||z{{{{{{|{{{{|{{{{{{{||{{z{|}{{{|{}{|||{{{{{|||{{||{||||{{|{|{|{{|{|{{{{{|{||{{|z|}z{||{}{|||{|{|}|||{|||}|||||||}||{{||}}|{|{||}|}{|||{}||||{}}|||{|{||}||{|}||}||}||||}||{|||}}{|{|}|||{|}||}||}||}|||~{~{~~}|~{~}|~}|~}~~|~}~|{~|~~}|~{~}~~~{~}~|}|~}~|{~||{{{{{|{||{{{{||{||{{{{||||{{{{|||||{{{|||}{{{{||{{{{{|}{||{{{{{||||{{{||||||{|{{||||{{{{|||||{{{|||}{{|{||{{|{{|}~{}}{}{}~|}|}{}||~|}|}|}}|~}|}{{}|~}||}{}|~|}{}|}|~{}|}{|}{{{{{{{{|{{{{{{{||{{{{{{{||{{z{{{||{{|{{{||{}{{{{||{{{{{|}{{||||{||{||{{|{||{|{|{||||{||{{|||||||{||||}{|{|||{|{|{|}{|~|}{{}}|~|}{}||}|~|{|}}|}~|}{{}|}z||}{}|}~}{}|}||{}|}{|}z}|}||||~}|}|||}}~}|}|}||}~|}|}||}~|}||||}~|~||}|}~~|}|}|~|{{{|}{|||{{{{{|||{{{||||||{|{{||||{{{{|||||{{{|||}{{|{||~{|{{|}{}||{{{{{|||{{{{||{||{{{{||||{{{{|||||{{{|||}{{{{||{{{{{|}{|~|{{{{{|||{{{||||||{|{{||||{{{{|||||{{{|||}{{|{||{{|{{|}~{}{}{}{}~|}}{}||~|}{}|}}|~}{}{{}|~}{|}{}|~|}{}|}|~{}|}{|}{{|||{|{||{||{|{||{|{|{||||{||{{|||||||{||||}{|{|||{|{|{|}{|~|}{}{}}|~|}}||}|~|{|}}|}~|}{{}|}{||}{}|}~}{}|}||{}|}{|}{}|}|||||~}|}||}}~}|}|}||}~|}|}||}~|}||||}~|~||}|}~~|}|}|~|{{|}{{~|}{}{}}|~|}{}|}|~|}|}}|}~|}{{}|}~||}{}|}~}{}|}||{}|}{|}{|||{{{{{~|||{{{|||||{|{{||||{{{{|||||{{{|||}{{|{||~{|{{|}{}||{{{{{|}||{{{{||||{{{{||||{{{{|||||{{{|||}{{{{||{{{{{|}{|~|{{{{{||~|{{{|||||z|{{||{|z{{{||{||{{{||z}{{|{||{{|{{|}~{}|}{}{}~|}|}{}||~|}}|}}|~}|}{{}|~}||}{}|~|}{}|}|~{}|}{|}{|~|}{}{}}|~|}{}||}|~||}}|}~|}{{}|}|||}{}|}~}{}|}||{}|}{|}{}|}|||||~}|}||||}~}|}|||}~|}|}||}~|}||||}~|~||}|}~~|}|}|~|{|}{{||{{{{{{{||{{{{{{{||{{{{{||{{{{{{|||{{{{{|}{{{z{{{{{{{|}{{~|}{}{}}|~|}{}|{}|~|}|}}}~|}{{}{}~||}{}{}~}{}|}{|{}|}{|}{|||{{{{{~|||{{{||~|||{|{{|||{{{{|{|||{{z|{|}{{|z|z~{|{{|}{|~||{|{|||~||{|||||~|||||||||{{|||||||{||||}{|||||{|||{|}~|~|}{}{}~|~|}{}||~|~|}|}}|~~}{{}|~}||}{}|~~}{}|}|~{}|}{|}{}|}|||||~}|}|||}}~}|}|}||}~|}}||}~|}||||}~|~||}|}~~|}|}|~||}{{|||{|{||{|||{|{||{|||{|||||||{{{{||||{||||}{|{|||{|{|{|}{{|||{|{||{|||{|{||{|||{|||||||{{{{||||{||||}{|{|||{|{|{|}{{~|}{}{}}|~|}{}||}|~|}|}}|}~|}{{}}~||}{}|}~}{}|}||{}|}{|}{||||{|{|~||||{|||~||||||||~|||{{||||||{||||}{|||||~|||{|}{|~|}{}{}}|~|}{}||}|~|}|}}|}~|}{{}|}||}{}|}~}{}|}||{}|}{|}~}}|}|}|}~}}|}|}}}~}}|}}}}}~}}}||}}~}|}|}}~|~|}}}}~~}}}}|~|}{|}|}{}{}~|}|}{}||~|}|}|}}|~}|}{{}|~}||{{|z|}{}|}|~z}|}{|}{|}|}{}{}~|}|}{}||~|}|}|}}|~}|}{{}|~}||}{|{|}{}|}|~{}|}{|}{|}|}{}{}~|}|}{}||~|}|}|}}|~}|}{{}|~}||}{|||}{}|}|~{}|}{|}{|~|}{}{}~|~|}{}||~|~|}|}}|~~|}{{}|~~||}{}}~}{}|}|~{}|}{|}{|}|}{}{}~|}|}{}||~|}|}|}}|~}|}{{}|~}||}{}||}{}|}|~~}|}{|}{~~|}{}{}~~~|}{}~|~~~|}~}}|~~~}~{}|~~~|}{}~~~{}~}~~~}~}~|~~}}~}||||||}~}|||}}|}~}|}||}|~}|}||}|~}||||}|~~|}|}|||}|}|~~}~}||||||}~}|||}}|}~}|}||}|~}|}||}|~}||||}|~~|}|}|||}|}|~~}~}||||||}~}|||}}|}~}|}||}|~}|}||}|~}||||}|~~|||}|||||}|~~}~}||||||}~}|||}}|}~}|}||}|~}|}||}|~}||||}|~~||}}|||}|}|~~}~}}|}|}}}~}}|}}|}}~}}}}}|}~}}}|}|}~}|}|}}}~~|}}}||}}}||~~~~|}{}{}~~~|}{}~|~~~|}~}}|~~~}~{}|~~~|}{}~~~~{}~}~~}~}~|~~{{{|}{{{|}{{|}{|}{}{}